Skip to content

Add exp_quad_chol function #501

Open
@rtrangucci

Description

@rtrangucci

Summary:

Generate the cholesky factor of an exponentiated quadratic covariance matrix.

Description:

The prim implementation will look something like this:

template<typename T_x, typename T_alpha, typename T_rho, typename T_sigma>
Eigen::Matrix exp_quad_chol(std::vector<T_x> x,
                            T_alpha alpha,
                            T_rho rho,
                            T_sigma sigma) {
  check_positive("exp_quad_chol", "marginal variance", alpha);
  check_positive("exp_quad_chol", "length-scale", rho);
  check_positive("exp_quad_chol", sigma);
  typedef typename stan::return_type<T_x, T_alpha, T_rho, T_sigma>::type T_scal;
  Eigen::Matrix<T_scal, -1, -1> cov = cov_exp_quad(x, alpha, rho);
  for (int i = 0; i < cov.rows(); ++i)
    cov(i, i) = cov(i, i) + square(sigma);
  Eigen::Matrix<T_scal, -1, -1> L_cov = cholesky_decompose(cov);
  return L_cov
}

Additional Information:

Will need to be coupled with a rename of the parameters in cov_exp_quad. See #495.

Current Version:

v2.14.0

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions