Class Scine::Utils::SinglePointMethod¶
-
class
SinglePointMethod
¶ This class is the base class of any method to be used in Real-time quantum chemistry. It contain declarations for variables methods concerning energy and gradients.
Subclassed by Scine::Utils::LCAOMethod
Public Functions
-
virtual void
calculate
(Utils::derivativeType d) = 0¶ Performs one single-point calculation of the energy.
- Parameters
derivativesOrder
: which derivative to calculate up to, if possible.
-
void
initializeStructure
(const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions)¶ Set up the structure from the positions and element types.
- Parameters
positions
: Vector of positions, in bohr.
-
void
initializeStructure
(const Utils::ElementTypeCollection &elements)¶ Set up the structure from the element types.
-
void
setPositions
(Utils::PositionCollection positions)¶ Update the positions. Do not use to initialize the structure!.
-
const Utils::PositionCollection &
getPositions
() const¶ Get the positions (bohr).
-
const Utils::GradientCollection &
getGradients
() const¶ Get the gradients (Hartree / bohr).
-
const Utils::AtomicSecondDerivativeCollection &
getAtomicSecondDerivatives
() const¶ Get the second derivatives with respect to the single atomic nuclei (Hartree / bohr^2).
-
const Utils::FullSecondDerivativeCollection &
getFullSecondDerivatives
() const¶ Get the full second derivatives containers.
-
const Utils::ElementTypeCollection &
getElementTypes
() const¶ Get the elements.
-
bool
canCalculateSecondDerivatives
() const¶ Returns true if the method is able to calculate second derivatives.
-
const Utils::BondOrderCollection &
getBondOrderCollection
() const¶ Returns the lower-triangular bond-order matrix.
-
double
getEnergy
() const¶ Function returning the energy in Hartree.
-
void
setEnergy
(double energy)¶ Set the energy in Hartree.
-
void
startLogger
(const std::string &loggerSeverity) const¶ starts the Utils::Logger so that the static function can in fact be operated from outside of the module boundaries.
Protected Functions
-
void
resizeRealTimeMethodMembers
()¶ Resets the size of gradients_, positions_, bondOrderMatrix_ and atomicCharges_. To be called during initialization of the specific method.
-
virtual void