GQCP
|
#include <SubspaceUpdate.hpp>
Public Member Functions | |
SubspaceUpdate (const size_t maximum_subspace_dimension=15, const double threshold=1.0e-03) | |
std::string | description () const override |
void | execute (EigenproblemEnvironment< double > &environment) override |
![]() | |
virtual | ~Step ()=default |
virtual std::string | description () const=0 |
virtual void | execute (Environment &environment)=0 |
Additional Inherited Members | |
![]() | |
using | Environment = EigenproblemEnvironment< double > |
A step that adds projected correction vectors to the subspace (if their norm is large enough) and collapses the subspace if it becomes too large.
|
inline |
maximum_subspace_dimension | the maximum dimension of the subspace before collapsing |
threshold | the threshold on the norm used for determining if a new projected correction vector should be added to the subspace |
|
inlineoverridevirtual |
Implements GQCP::Step< EigenproblemEnvironment< double > >.
|
inlineoverridevirtual |
Add projected correction vectors to the subspace (if their norm is large enough) and collapse the subspace becomes too large. The new subspace vectors (after a collapse) are linear combinations of current subspace vectors, with coefficients found in the lowest eigenvectors of the subspace matrix.
environment | the environment that acts as a sort of calculation space |
Implements GQCP::Step< EigenproblemEnvironment< double > >.