|
MOAB
4.9.3pre
|
#include <Tridiagonalization.h>
Public Types | |
| typedef Tridiagonalization < MatrixType > ::CoeffVectorType | CoeffVectorType |
| typedef Tridiagonalization < MatrixType > ::HouseholderSequenceType | HouseholderSequenceType |
Static Public Member Functions | |
| template<typename DiagonalType , typename SubDiagonalType > | |
| static void | run (MatrixType &mat, DiagonalType &diag, SubDiagonalType &subdiag, bool extractQ) |
General full tridiagonalization
Definition at line 437 of file Tridiagonalization.h.
| typedef Tridiagonalization<MatrixType>::CoeffVectorType Eigen::internal::tridiagonalization_inplace_selector< MatrixType, Size, IsComplex >::CoeffVectorType |
Definition at line 439 of file Tridiagonalization.h.
| typedef Tridiagonalization<MatrixType>::HouseholderSequenceType Eigen::internal::tridiagonalization_inplace_selector< MatrixType, Size, IsComplex >::HouseholderSequenceType |
Definition at line 440 of file Tridiagonalization.h.
| static void Eigen::internal::tridiagonalization_inplace_selector< MatrixType, Size, IsComplex >::run | ( | MatrixType & | mat, |
| DiagonalType & | diag, | ||
| SubDiagonalType & | subdiag, | ||
| bool | extractQ | ||
| ) | [inline, static] |
Definition at line 442 of file Tridiagonalization.h.
{
CoeffVectorType hCoeffs(mat.cols()-1);
tridiagonalization_inplace(mat,hCoeffs);
diag = mat.diagonal().real();
subdiag = mat.template diagonal<-1>().real();
if(extractQ)
mat = HouseholderSequenceType(mat, hCoeffs.conjugate())
.setLength(mat.rows() - 1)
.setShift(1);
}