mpqc::math::SingleStateDavidsonDiag< D > Class Template Reference
Collaboration diagram for mpqc::math::SingleStateDavidsonDiag< D >:
Public Member Functions | |
SingleStateDavidsonDiag (unsigned int n_roots, double shift, bool symmetric=true, unsigned int n_guess=2, unsigned int max_n_guess=4, double vector_threshold=1.0e-5) | |
value_type & | eigen_vector () override |
template<typename Operator > | |
EigenVector< element_type > | solve (value_type &guess, Operator &op, const DavidsonDiagPred< D > *const pred, double convergence, std::size_t max_iter) |
Public Member Functions inherited from mpqc::math::DavidsonDiag< D > | |
DavidsonDiag (unsigned int n_roots, bool symmetric=true, unsigned int n_guess=2, unsigned int max_n_guess=4, double vector_threshold=1.0e-5) | |
virtual | ~DavidsonDiag () |
template<typename Operator > | |
EigenVector< element_type > | solve (value_type &guess, Operator &&op, const DavidsonDiagPred< D > *const pred, double convergence, std::size_t max_iter) |
std::tuple< EigenVector< element_type >, EigenVector< element_type > > | extrapolate (value_type &HB, value_type &B, const DavidsonDiagPred< D > *const pred) |
void | reset () |
clean the cached values More... | |
Additional Inherited Members | |
Public Types inherited from mpqc::math::DavidsonDiag< D > | |
using | element_type = typename TA::detail::numeric_type< D >::type |
using | result_type = EigenVector< element_type > |
using | value_type = std::vector< D > |
Protected Attributes inherited from mpqc::math::DavidsonDiag< D > | |
unsigned int | n_roots_ |
bool | symmetric_ |
unsigned int | n_guess_ |
unsigned int | max_n_guess_ |
double | vector_threshold_ |
std::deque< value_type > | eigen_vector_ |
value_type | HB_ |
value_type | B_ |
RowMatrix< element_type > | subspace_ |
Constructor & Destructor Documentation
◆ SingleStateDavidsonDiag()
template<typename D >
|
inline |
Member Function Documentation
◆ eigen_vector()
template<typename D >
|
inlineoverridevirtual |
- Returns
- return current eigen vector in Davidson
Reimplemented from mpqc::math::DavidsonDiag< D >.
◆ solve()
template<typename D >
template<typename Operator >
|
inline |
This is not a virtual function, it doesn't override DavidsonDiag::solve()
- Template Parameters
-
Operator operator that computes the product of H*B
- Parameters
-
guess initial guess vector op op(B) should compute HB pred preconditioner, which inherit from DavidsonDiagPred convergence convergence threshold max_iter max number of iteration allowd
- Returns
The documentation for this class was generated from the following file:
- mpqc/math/linalg/davidson_diag.h