File ElectronicContributionCalculator.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
-
class
ElectronicContributionCalculator
- #include <ElectronicContributionCalculator.h>
Interface for the computation of the Fock matrix.
TODO: Separate for non-SCF and SCF specializations?
Public Functions
-
virtual
~ElectronicContributionCalculator
()¶
-
virtual void
initialize
() = 0 Reinitialize after a change in the elements.
-
virtual void
calculateDensityIndependentPart
(Utils::derivOrder order) = 0 This function will be called only once per single-point calculation.
-
virtual void
calculateDensityDependentPart
(Utils::derivOrder order) = 0 This function will be called once per SCF iteration.
-
virtual void
finalize
(Utils::derivOrder order) = 0 This function will be called after the last iteration has run.
This function adds an additive electronic contribution to the Hamiltonian that will be evaluated each SCF iteration.
This function adds an additive electronic contribution to the Hamiltonian that will be evaluated once per single-point calculation.
-
virtual SpinAdaptedMatrix
getMatrix
() const = 0¶
-
virtual double
calculateElectronicEnergy
() const = 0¶
-
virtual void
addDerivatives
(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::derivativeType::first> &derivatives) const = 0¶
-
virtual void
addDerivatives
(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::derivativeType::second_atomic> &derivatives) const = 0¶
-
virtual void
addDerivatives
(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::derivativeType::second_full> &derivatives) const = 0¶
-
virtual
-
class
-
namespace