1#ifndef STAN_MATH_PRIM_CONSTRAINT_CORR_MATRIX_CONSTRAIN_HPP
2#define STAN_MATH_PRIM_CONSTRAINT_CORR_MATRIX_CONSTRAIN_HPP
39template <
typename T, require_eigen_col_vector_t<T>* =
nullptr>
40inline Eigen::Matrix<value_type_t<T>, Eigen::Dynamic, Eigen::Dynamic>
42 Eigen::Index k_choose_2 = (k * (k - 1)) / 2;
70template <
typename T,
typename Lp, require_eigen_col_vector_t<T>* =
nullptr,
71 require_convertible_t<return_type_t<T>, Lp>* =
nullptr>
72inline Eigen::Matrix<value_type_t<T>, Eigen::Dynamic, Eigen::Dynamic>
74 Eigen::Index k_choose_2 = (k * (k - 1)) / 2;
93template <
typename T, require_std_vector_t<T>* =
nullptr>
115template <
typename T,
typename Lp, require_std_vector_t<T>* =
nullptr,
116 require_convertible_t<return_type_t<T>, Lp>* =
nullptr>
143template <
bool Jacobian,
typename T,
typename Lp,
146 if constexpr (Jacobian) {
require_t< std::is_convertible< std::decay_t< T >, std::decay_t< S > > > require_convertible_t
Require types T and S satisfies std::is_convertible.
Eigen::Matrix< value_type_t< T >, Eigen::Dynamic, Eigen::Dynamic > corr_matrix_constrain(const T &x, Eigen::Index k)
Return the correlation matrix of the specified dimensionality derived from the specified vector of un...
Eigen::Matrix< value_type_t< T_CPCs >, Eigen::Dynamic, Eigen::Dynamic > read_corr_matrix(const T_CPCs &CPCs, size_t K)
Return the correlation matrix of the specified dimensionality corresponding to the specified canonica...
plain_type_t< T > corr_constrain(const T &x)
Return the result of transforming the specified scalar or container of values to have a valid correla...
void check_size_match(const char *function, const char *name_i, T_size1 i, const char *name_j, T_size2 j)
Check if the provided sizes match.
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...