StatMech
Loading...
Searching...
No Matches
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > > Class Template Reference

#include <MatrixUtils.hpp>

Collaboration diagram for MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >:
Collaboration graph

Public Member Functions

 EigenSolver ()=delete
 
 EigenSolver (EigenSolver const &)=delete
 
 EigenSolver (EigenSolver &&)=delete
 
 EigenSolver (int dim)
 
 EigenSolver (Matrix_t const &mat)=delete
 
 EigenSolver (Matrix_t &&mat)
 
EigenSolvercompute ()
 
EigenSolversetOpt (Eigen::DecompositionOptions option)
 
auto eigenvalues () -> decltype(m_solver.eigenvalues()) const &
 
auto eigenvectors () -> decltype(m_solver.eigenvectors()) const &
 
Matrix_tinMatrix ()
 

Private Types

using Matrix_t = Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >
 

Private Attributes

Matrix_t m_inMatrix
 
Eigen::SelfAdjointEigenSolver< Matrix_tm_solver
 
Eigen::ComputationInfo m_info = Eigen::InvalidInput
 
Eigen::DecompositionOptions m_option = Eigen::ComputeEigenvectors
 

Member Typedef Documentation

◆ Matrix_t

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
using MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::Matrix_t = Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>
private

Constructor & Destructor Documentation

◆ EigenSolver() [1/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( )
delete

◆ EigenSolver() [2/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > > const &  )
delete

◆ EigenSolver() [3/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > > &&  )
delete

◆ EigenSolver() [4/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( int  dim)
inline

◆ EigenSolver() [5/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( Matrix_t const &  mat)
delete

◆ EigenSolver() [6/6]

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::EigenSolver ( Matrix_t &&  mat)
inline
39: m_inMatrix{std::move(mat)} { this->compute(); }

Member Function Documentation

◆ compute()

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
EigenSolver & MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::compute ( )
inline
41 {
43 m_info = m_solver.info();
44 return *this;
45 }
Eigen::SelfAdjointEigenSolver< Matrix_t > m_solver
Definition MatrixUtils.hpp:28

◆ eigenvalues()

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
auto MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::eigenvalues ( ) -> decltype(m_solver.eigenvalues()) const&
inline
52 {
53 return m_solver.eigenvalues();
54 }

◆ eigenvectors()

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
auto MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::eigenvectors ( ) -> decltype(m_solver.eigenvectors()) const&
inline
56 {
57 return m_solver.eigenvectors();
58 }

◆ inMatrix()

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Matrix_t & MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::inMatrix ( )
inline
60{ return m_inMatrix; }

◆ setOpt()

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
EigenSolver & MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::setOpt ( Eigen::DecompositionOptions  option)
inline
47 {
48 m_option = option;
49 return *this;
50 }

Member Data Documentation

◆ m_info

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Eigen::ComputationInfo MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::m_info = Eigen::InvalidInput
private

◆ m_inMatrix

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Matrix_t MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::m_inMatrix
private

◆ m_option

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Eigen::DecompositionOptions MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::m_option = Eigen::ComputeEigenvectors
private

◆ m_solver

template<typename _Scalar , int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols>
Eigen::SelfAdjointEigenSolver<Matrix_t> MatrixUtils::EigenSolver< Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::m_solver
private

The documentation for this class was generated from the following file: