1#ifndef STAN_MATH_FWD_FUN_DETERMINANT_HPP
2#define STAN_MATH_FWD_FUN_DETERMINANT_HPP
13template <
typename EigMat, require_eigen_vt<is_fvar, EigMat>* =
nullptr>
16 const auto& m_ref =
to_ref(m);
19 return {vals, vals * (m_ref.val().inverse() * m_ref.d()).
trace()};
typename value_type< T >::type value_type_t
Helper function for accessing underlying type.
void check_square(const char *function, const char *name, const T_y &y)
Check if the specified matrix is square.
value_type_t< EigMat > determinant(const EigMat &m)
value_type_t< T > trace(const T &m)
Calculates trace (sum of diagonal) of given kernel generator expression.
ref_type_t< T && > to_ref(T &&a)
This evaluates expensive Eigen expressions.
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...