- EigenTridiagonalDC
- EigenTridiagonalQR
- EigenTridiagonalRobust
- EigenTridiagonalBisect
- EigenTridiagonalQL
- EigenTridiagonalDCQ
- EigenTridiagonalQRQ
- EigenTridiagonalPosDefQ
EigenTridiagonalPosDefQ
Compute eigenvalues and eigenvectors of a symmetric positive definite tridiagonal matrix using the QR algorithm (lapack function PTEQR). This method can be used to compute the eigenvectors of both the input tridiagonal matrix and the original positive definite symmetric matrix. This is achieved using the orthogonal matrix Q obtained during the reduction to tridiagonal form.
Computing for type matrix<double>
bool matrix::EigenTridiagonalPosDefQ(
|
Computing for type matrix<float>
bool matrixf::EigenTridiagonalPosDefQ(
|
Computing for type matrix<complex>
bool matrixc::EigenTridiagonalPosDefQ(
|
Computing for type matrix<complexf>
bool matrixcf::EigenTridiagonalPosDefQ(
|
Parameters
compv
[in] ENUM_EIGTRIDIAG_Z enumeration value which determines the method for computing eigenvectors.
Q
[in] Orthogonal matrix Q produced by method ReflectTridiagonalToQ.
eigen_values
[out] Vector of eigenvalues.
eigen_vectors
[out] Matrix of eigenvectors.
Return Value
Return true if successful, otherwise false in case of an error.
Note
Computation depends on the value of the compv parameter.
When compv = EIGCOMPZ_N, compute eigenvalues only, eigenvectors are not calculated.
If EIGCOMPZ_V is set, eigenvalues are computed and eigenvectors of original symmetric matrix are calculated also.
If EIGCOMPZ_I is set, eigenvalues are computed and eigenvectors of tridiagonal matrix are calculated also.
The input must be a symmetric positive definite tridiagonal matrix.
ENUM_EIGTRIDIAG_Z
An enumeration that specifies whether to calculate eigenvectors.
ID |
Description |
---|---|
EIGCOMPZ_N |
'N': Compute eigenvalues only |
EIGCOMPZ_V |
'V': Compute eigenvectors of original symmetric matrix also |
EIGCOMPZ_I |
'I': Compute eigenvectors of tridiagonal matrix also |