Class Scine::Utils::HessianUtilities¶
-
class
HessianUtilities
¶ A utility class for Hessians allowing easier access to eigenvalues and eigenvectors of transformed versions.
Public Functions
-
void
hessianUpdate
()¶ Brief signals that the referenced Hessian has changed and deletes cached data.
-
void
hessianUpdate
(const HessianMatrix &hessian)¶ Replaces the current Hessian and deletes cached data.
- Parameters
hessian
: The new Hessian reference.
-
const Eigen::MatrixXd &
getTransformationMatrix
() const¶ Get the transformation matrix removing rotational and translational contributions.
- Return
const Eigen::MatrixXd& The transformation matrix.
-
const Eigen::VectorXd &
getInternalEigenvalues
(bool massWeighted = false)¶ Getter for the eigenvalues of the transformed Matrix.
The eigenvalues are lazily evaluated and cached internally.
- Return
const Eigen::VectorXd&
- Parameters
massWeighted
: If true returns the massweighted transformed eigenvalues.
-
const Eigen::MatrixXd &
getInternalEigenvectors
()¶ Getter for the eigenvectors of the transformed Matrix.
The eigenvectors are lazily evaluated and cached internally.
- Return
const Eigen::MatrixXd&
-
Eigen::MatrixXd
getBackTransformedInternalEigenvectors
(bool massWeighted)¶ Get the back-transformed internal eigenvectors without rotation and translation modes.
- Return
Eigen::MatrixXd
- Parameters
massWeighted
: If true returns the massweighted backtransformed eigenvectors (without rotational and translational degrees of freedom).
-
Eigen::MatrixXd
getInternalHessian
(bool massWeighted = false) const¶ Returns the transformed (pseudo-internal coordinates) Hessian.
- Return
const Eigen::MatrixXd& The Hessian.
- Parameters
massWeighted
: If true returns the massweighted transformed Hessian.
-
void