34template <
typename _Scalar>
154 std::vector<Eigenpair<double, Scalar>>
eigenpairs(
const size_t number_of_requested_eigenpairs = 1)
const {
156 if (number_of_requested_eigenpairs > this->eigenvectors.cols()) {
157 throw std::invalid_argument(
"EigenproblemEnvironment::eigenpairs(const size_t): You cannot retrieve that many eigenpairs.");
160 std::vector<Eigenpair<double, Scalar>>
eigenpairs {};
161 eigenpairs.reserve(number_of_requested_eigenpairs);
163 for (
size_t i = 0; i < number_of_requested_eigenpairs; i++) {
165 const auto& eigenvector = this->eigenvectors.col(i);
167 eigenpairs.emplace_back(eigenvalue, eigenvector);
Definition: EigenproblemEnvironment.hpp:35
_Scalar Scalar
Definition: EigenproblemEnvironment.hpp:38
std::vector< Eigenpair< double, Scalar > > eigenpairs(const size_t number_of_requested_eigenpairs=1) const
Definition: EigenproblemEnvironment.hpp:154
MatrixX< Scalar > X
Definition: EigenproblemEnvironment.hpp:79
VectorX< Scalar > diagonal
Definition: EigenproblemEnvironment.hpp:50
VectorX< double > eigenvalues
Definition: EigenproblemEnvironment.hpp:57
MatrixX< Scalar > V
Definition: EigenproblemEnvironment.hpp:73
MatrixX< Scalar > Delta
Definition: EigenproblemEnvironment.hpp:86
size_t dimension
Definition: EigenproblemEnvironment.hpp:53
static EigenproblemEnvironment Iterative(const VectorFunction< Scalar > &matrix_vector_product_function, const VectorX< Scalar > &diagonal, const MatrixX< Scalar > &V)
Definition: EigenproblemEnvironment.hpp:130
EigenproblemEnvironment(const VectorFunction< Scalar > &matrix_vector_product_function, const VectorX< Scalar > &diagonal, const MatrixX< Scalar > &V)
Definition: EigenproblemEnvironment.hpp:104
MatrixX< Scalar > Z
Definition: EigenproblemEnvironment.hpp:69
static EigenproblemEnvironment Iterative(const SquareMatrix< Scalar > &A, const MatrixX< Scalar > &V)
Definition: EigenproblemEnvironment.hpp:138
SquareMatrix< Scalar > A
Definition: EigenproblemEnvironment.hpp:47
VectorFunction< Scalar > matrix_vector_product_function
Definition: EigenproblemEnvironment.hpp:43
VectorX< double > Lambda
Definition: EigenproblemEnvironment.hpp:66
SquareMatrix< Scalar > S
Definition: EigenproblemEnvironment.hpp:63
static EigenproblemEnvironment Dense(const SquareMatrix< Scalar > &A)
Definition: EigenproblemEnvironment.hpp:121
MatrixX< Scalar > VA
Definition: EigenproblemEnvironment.hpp:76
EigenproblemEnvironment(const SquareMatrix< Scalar > &A)
Definition: EigenproblemEnvironment.hpp:97
MatrixX< Scalar > eigenvectors
Definition: EigenproblemEnvironment.hpp:60
MatrixX< Scalar > R
Definition: EigenproblemEnvironment.hpp:83
Definition: Matrix.hpp:47
Definition: SquareMatrix.hpp:39
Definition: BaseOneElectronIntegralBuffer.hpp:25
@ x
Definition: CartesianDirection.hpp:28
std::function< VectorX< Scalar >(const VectorX< Scalar > &)> VectorFunction
Definition: Matrix.hpp:485