#include <RitzPairs.h>
Public Member Functions | |
const Matrix & | basis_vectors () const |
Returns the basis vectors. More... | |
void | extend_basis (const Matrix &new_vect) |
void | initialize_search_space (const Eigen::Ref< const Matrix > &initial_vectors) |
const Matrix & | operator_basis_product () const |
Returns the operator applied to basis vector. More... | |
void | restart (const RitzPairs< Scalar > &ritz_pairs, Index size) |
SearchSpace ()=default | |
Index | size () const |
Returns the current size of the search space. More... | |
template<typename OpType > | |
void | update_operator_basis_product (OpType &op) |
Private Types | |
using | Index = Eigen::Index |
using | Matrix = Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > |
Private Member Functions | |
void | append_new_vectors_to_basis (const Matrix &new_vect) |
Private Attributes | |
Matrix | m_basis_vectors |
Matrix | m_op_basis_product |
This class handles the creation and manipulation of the search space for iterative eigensolvers such as Davidson, Jacobi-Davidson, etc.
Definition at line 18 of file RitzPairs.h.
|
private |
Definition at line 23 of file SearchSpace.h.
|
private |
Definition at line 24 of file SearchSpace.h.
|
default |
|
inlineprivate |
Append new vector to the basis
new_vect | Matrix of new correction vectors |
Definition at line 32 of file SearchSpace.h.
|
inline |
Returns the basis vectors.
Definition at line 88 of file SearchSpace.h.
|
inline |
Append new vectors to the search space and orthogonalize the resulting matrix
new_vect | Matrix of new correction vectors |
Definition at line 80 of file SearchSpace.h.
|
inline |
Definition at line 45 of file SearchSpace.h.
|
inline |
Returns the operator applied to basis vector.
Definition at line 91 of file SearchSpace.h.
|
inline |
Restart the search space by reducing the basis vector to the last Ritz eigenvector
ritz_pair | Instance of a RitzPair class |
size | Size of the restart |
Definition at line 70 of file SearchSpace.h.
|
inline |
Returns the current size of the search space.
Definition at line 43 of file SearchSpace.h.
|
inline |
Updates the matrix formed by the operator applied to the search space after the addition of new vectors in the search space. Only the product of the operator with the new vectors is computed and the result is appended to the op_basis_product member variable
OpType | Operator representing the matrix |
Definition at line 58 of file SearchSpace.h.
|
private |
Definition at line 26 of file SearchSpace.h.
|
private |
Definition at line 27 of file SearchSpace.h.