File IndirectSigmaVectorEvaluator.h

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine

This header file contains functions that allow for common notation for common things that can be done at a different degree of derivatives.

This header contains alias definitions defining which classes to use for the different degrees of derivatives.

namespace Utils
template<class MatrixType>
class IndirectSigmaVectorEvaluator : public Scine::Utils::SigmaVectorEvaluator<MatrixType>

This sigma vector evaluator calculates the sigma vector as described in Davidson’s iterative method paper.

E. R. Davidson, The iterative calculation of a few of the lowest eigenvalues and corresponding eigenvectors of large real-symmetric matrices, J. Comput. Phys, 1975, 17, 87-94, https://doi.org/10.1016/0021-9991(75)90065-0

Public Functions

IndirectSigmaVectorEvaluator(const MatrixType &matrix)
~IndirectSigmaVectorEvaluator()
Eigen::MatrixXd evaluateSigmaVector(const Eigen::MatrixXd &guessVectors) const

Private Members

MatrixType fullMatrixToDiagonalize_