Stan Math Library  2.11.0
reverse mode automatic differentiation
read_cov_matrix.hpp
Go to the documentation of this file.
1 #ifndef STAN_MATH_PRIM_MAT_FUN_READ_COV_MATRIX_HPP
2 #define STAN_MATH_PRIM_MAT_FUN_READ_COV_MATRIX_HPP
3 
7 
8 namespace stan {
9 
10  namespace math {
11 
21  template <typename T>
22  Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>
23  read_cov_matrix(const Eigen::Array<T, Eigen::Dynamic, 1>& CPCs,
24  const Eigen::Array<T, Eigen::Dynamic, 1>& sds,
25  T& log_prob) {
26  Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> L
27  = read_cov_L(CPCs, sds, log_prob);
30  }
31 
39  template<typename T>
40  Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>
41  read_cov_matrix(const Eigen::Array<T, Eigen::Dynamic, 1>& CPCs,
42  const Eigen::Array<T, Eigen::Dynamic, 1>& sds) {
43  size_t K = sds.rows();
44  Eigen::DiagonalMatrix<T, Eigen::Dynamic> D(K);
45  D.diagonal() = sds;
46  Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> L
47  = D * read_corr_L(CPCs, K);
50  }
51 
52  }
53 
54 }
55 
56 #endif
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > read_cov_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
A generally worse alternative to call prior to evaluating the density of an elliptical distribution...
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > read_cov_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
This is the function that should be called prior to evaluating the density of any elliptical distribu...
Definition: read_cov_L.hpp:23
Eigen::Matrix< fvar< T >, R, R > multiply_lower_tri_self_transpose(const Eigen::Matrix< fvar< T >, R, C > &m)
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > read_corr_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)
Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to...
Definition: read_corr_L.hpp:41

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