![]() |
QMCPACK
|
Collaboration diagram for Eigensolver:Static Public Member Functions | |
| static void | solveGeneralizedEigenvalues (Matrix< Real > &A, Matrix< Real > &B, std::vector< Real > &eigenvals, Matrix< Real > &eigenvectors) |
| Use generalized eigenvalue solver. More... | |
| static void | solveGeneralizedEigenvalues_Inv (Matrix< Real > &A, Matrix< Real > &B, std::vector< Real > &eigenvals, Matrix< Real > &eigenvectors) |
| Solve by explicitly inverting the overlap matrix. More... | |
Private Types | |
| using | Real = QMCTraits::RealType |
Definition at line 28 of file Eigensolver.h.
|
private |
Definition at line 30 of file Eigensolver.h.
|
static |
Use generalized eigenvalue solver.
| [in] | A | Hamiltonian matrix |
| [in] | B | Overlap matrix |
| [out] | eigenvals | Eigenvalues |
| [out] | eigenvectors | Eigenvectors corresponding to the eigenvalues |
Definition at line 32 of file Eigensolver.cpp.
References qmcplusplus::Units::distance::A, B(), Matrix< T, Alloc >::cols(), Matrix< T, Alloc >::data(), LAPACK::ggev(), and Matrix< T, Alloc >::rows().
Referenced by LinearMethod::getLowestEigenvector_Gen(), and qmcplusplus::TEST_CASE().
|
static |
Solve by explicitly inverting the overlap matrix.
| [in] | A | Hamiltonian matrix |
| [in] | B | Overlap matrix |
| [out] | eigenvals | Eigenvalues |
| [out] | eigenvectors | Eigenvectors corresponding to the eigenvalues |
Definition at line 78 of file Eigensolver.cpp.
References qmcplusplus::Units::distance::A, B(), Matrix< T, Alloc >::cols(), Matrix< T, Alloc >::data(), LAPACK::geev(), qmcplusplus::invert_matrix(), qmcplusplus::MatrixOperators::product(), and Matrix< T, Alloc >::rows().
Referenced by LinearMethod::getLowestEigenvector_Inv(), and qmcplusplus::TEST_CASE().