Doxygen 1.9.1
Toolkit for Adaptive Stochastic Modeling and Non-Intrusive ApproximatioN: Tasmanian v8.2 (development)
TasGrid::TasmanianTridiagonalSolver Namespace Reference

Methods for tridiagonal eigenvalue problems. More...

Functions

std::vector< double > getSymmetricEigenvalues (int n, std::vector< double > const &diag, std::vector< double > const &offdiag)
 Method for computing the eigenvalues of a symmetric matrix in place, using an LAPACK wrapper.
 
void decompose (std::vector< double > &diag, std::vector< double > &off_diag, const double mu0, std::vector< double > &nodes, std::vector< double > &weights)
 Method for tridiagonal eigenvalue decomposition, used to compute nodes and weights for Gaussian rules. On return, it destroys the inputs diag and offdiag and writes the outputs to nodes and weights. The parameter mu0 should be set to $ \int \mu(x) dx$ where $ mu(x) dx$ is the measure in the function inner product. The parameter version specifies which algorithm should be called.
 
void decompose1 (int n, std::vector< double > &d, std::vector< double > &e, std::vector< double > &z)
 (decompose_version == 1) TASMANIAN's first internal implementation.
 
void decompose2 (std::vector< double > &diag, std::vector< double > &off_diag, const double mu0, std::vector< double > &nodes, std::vector< double > &weights)
 (decompose_version == 2) Based on the ALGOL code for Golub's 1967 report "Calculation of Gauss Quadrature Rules".
 

Detailed Description

Methods for tridiagonal eigenvalue problems.