140 #ifndef Foam_EigenMatrix_H 141 #define Foam_EigenMatrix_H 157 template<
class cmptType>
162 std::is_floating_point<cmptType>::value,
163 "EigenMatrix operates only with scalar base type." 172 DiagonalMatrix<cmptType> EValsRe_;
189 void tridiagonaliseSymmMatrix();
192 void symmTridiagonalQL();
242 const SquareMatrix<cmptType>&
EVecs()
const EigenMatrix()=delete
No default construct.
const DiagonalMatrix< cmptType > & EValsRe() const
Return real eigenvalues or real part of complex eigenvalues.
EigenMatrix & operator=(const EigenMatrix &)=delete
No copy assignment.
const DiagonalMatrix< cmptType > & EValsIm() const
Return zero-matrix for real eigenvalues or imaginary part of complex eigenvalues. ...
const SquareMatrix< cmptType > & EVecs() const
Return right eigenvectors matrix where each column is a right eigenvector that corresponds to an eige...
const SquareMatrix< complex > complexEVecs() const
Return right eigenvectors in unpacked form.
static const Foam::dimensionedScalar A("", Foam::dimPressure, 611.21)
EigenMatrix (i.e. eigendecomposition or spectral decomposition) decomposes a diagonalisable nonsymmet...