Stan Math Library  2.20.0
reverse mode automatic differentiation
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 > Class Template Reference

#include <trace_inv_quad_form_ldlt.hpp>

Inheritance diagram for stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >:
stan::math::chainable_alloc

Public Member Functions

template<typename T1 , int R1, int C1>
 trace_inv_quad_form_ldlt_impl (const Eigen::Matrix< T1, R1, C1 > &D, const LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 
 trace_inv_quad_form_ldlt_impl (const LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 
- Public Member Functions inherited from stan::math::chainable_alloc
 chainable_alloc ()
 
virtual ~chainable_alloc ()
 

Public Attributes

const int Dtype_
 
LDLT_factor< T2, R2, C2 > ldlt_
 
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > D_
 
Eigen::Matrix< vari *, Eigen::Dynamic, Eigen::Dynamic > variD_
 
Eigen::Matrix< vari *, R3, C3 > variB_
 
Eigen::Matrix< double, R3, C3 > AinvB_
 
Eigen::Matrix< double, C3, C3 > C_
 
double value_
 

Protected Member Functions

void initializeB (const Eigen::Matrix< var, R3, C3 > &B, bool haveD)
 
void initializeB (const Eigen::Matrix< double, R3, C3 > &B, bool haveD)
 
template<int R1, int C1>
void initializeD (const Eigen::Matrix< var, R1, C1 > &D)
 
template<int R1, int C1>
void initializeD (const Eigen::Matrix< double, R1, C1 > &D)
 

Detailed Description

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
class stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >

Definition at line 17 of file trace_inv_quad_form_ldlt.hpp.

Constructor & Destructor Documentation

◆ trace_inv_quad_form_ldlt_impl() [1/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
template<typename T1 , int R1, int C1>
stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::trace_inv_quad_form_ldlt_impl ( const Eigen::Matrix< T1, R1, C1 > &  D,
const LDLT_factor< T2, R2, C2 > &  A,
const Eigen::Matrix< T3, R3, C3 > &  B 
)
inline

Definition at line 60 of file trace_inv_quad_form_ldlt.hpp.

◆ trace_inv_quad_form_ldlt_impl() [2/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::trace_inv_quad_form_ldlt_impl ( const LDLT_factor< T2, R2, C2 > &  A,
const Eigen::Matrix< T3, R3, C3 > &  B 
)
inline

Definition at line 70 of file trace_inv_quad_form_ldlt.hpp.

Member Function Documentation

◆ initializeB() [1/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
void stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::initializeB ( const Eigen::Matrix< var, R3, C3 > &  B,
bool  haveD 
)
inlineprotected

Definition at line 19 of file trace_inv_quad_form_ldlt.hpp.

◆ initializeB() [2/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
void stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::initializeB ( const Eigen::Matrix< double, R3, C3 > &  B,
bool  haveD 
)
inlineprotected

Definition at line 34 of file trace_inv_quad_form_ldlt.hpp.

◆ initializeD() [1/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
template<int R1, int C1>
void stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::initializeD ( const Eigen::Matrix< var, R1, C1 > &  D)
inlineprotected

Definition at line 43 of file trace_inv_quad_form_ldlt.hpp.

◆ initializeD() [2/2]

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
template<int R1, int C1>
void stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::initializeD ( const Eigen::Matrix< double, R1, C1 > &  D)
inlineprotected

Definition at line 54 of file trace_inv_quad_form_ldlt.hpp.

Member Data Documentation

◆ AinvB_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
Eigen::Matrix<double, R3, C3> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::AinvB_

Definition at line 81 of file trace_inv_quad_form_ldlt.hpp.

◆ C_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
Eigen::Matrix<double, C3, C3> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::C_

Definition at line 82 of file trace_inv_quad_form_ldlt.hpp.

◆ D_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::D_

Definition at line 78 of file trace_inv_quad_form_ldlt.hpp.

◆ Dtype_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
const int stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::Dtype_

Definition at line 76 of file trace_inv_quad_form_ldlt.hpp.

◆ ldlt_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
LDLT_factor<T2, R2, C2> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::ldlt_

Definition at line 77 of file trace_inv_quad_form_ldlt.hpp.

◆ value_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
double stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::value_

Definition at line 83 of file trace_inv_quad_form_ldlt.hpp.

◆ variB_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
Eigen::Matrix<vari *, R3, C3> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::variB_

Definition at line 80 of file trace_inv_quad_form_ldlt.hpp.

◆ variD_

template<typename T2, int R2, int C2, typename T3, int R3, int C3>
Eigen::Matrix<vari *, Eigen::Dynamic, Eigen::Dynamic> stan::math::internal::trace_inv_quad_form_ldlt_impl< T2, R2, C2, T3, R3, C3 >::variD_

Definition at line 79 of file trace_inv_quad_form_ldlt.hpp.


The documentation for this class was generated from the following file:

     [ Stan Home Page ] © 2011–2018, Stan Development Team.