Automatic Differentiation
 
Loading...
Searching...
No Matches

◆ mrrr_cl()

template<bool need_eigenvectors = true>
void stan::math::internal::mrrr_cl ( const Eigen::Ref< const Eigen::VectorXd >  diagonal,
const Eigen::Ref< const Eigen::VectorXd >  subdiagonal,
Eigen::Ref< Eigen::VectorXd >  eigenvalues,
Eigen::Ref< Eigen::MatrixXd >  eigenvectors,
const double  min_rel_sep = 1e-4,
const double  maximum_ele_growth = 15 
)
inline

Calculates eigenvalues and eigenvectors of a irreducible tridiagonal matrix T using multiple relatively robust representations (MRRR) algorithm.

Use tridiagonal_eigensolver if any subdiagonal element might be (very close to) zero.

Parameters
diagonalDiagonal of of T.
subdiagonalSubdiagonal of T.
[out]eigenvaluesEigenvlues.
[out]eigenvectorsEigenvectors.
min_rel_sepMinimal relative separation of eigenvalues before computing eigenvectors.
maximum_ele_growthMaximal desired element growth of LDL decompositions.

Definition at line 298 of file mrrr.hpp.