Scine::Sparrow
5.1.0
Library for fast and agile quantum chemical calculations with semiempirical methods.
|
This class sums up the core-core repulsion energies and the corresponding derivatives with respect to the nuclear cartesian coordinate between all pairs of cores. It inherits from Utils::RepulsionCalculator in order for it to work with the LCAO/ScfMethod polymorphic system. More...
#include <AM1RepulsionEnergy.h>
Public Types | |
using | PairRepulsionType = std::unique_ptr< AM1PairwiseRepulsion > |
using | Container = std::vector< std::vector< PairRepulsionType >> |
Public Member Functions | |
AM1RepulsionEnergy (const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const ElementParameters &elementParameters) | |
Constructor. | |
~AM1RepulsionEnergy () override | |
Overrides virtual base class desctructor with default implementation. | |
void | initialize () override |
Initializes the core-core repulsion pairs. | |
void | calculateRepulsion (Utils::DerivativeOrder order) override |
Starts the calculation of the core-core repulsion up to the. More... | |
double | getRepulsionEnergy () const override |
Sums up all the single core-core contributions to return the overall core-core repulsion energy. | |
void | addRepulsionDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::First > &derivatives) const override |
Functions calculating the core-core derivative contributions up to the corresponding derivative order. | |
void | addRepulsionDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::SecondAtomic > &derivatives) const override |
void | addRepulsionDerivatives (Utils::AutomaticDifferentiation::DerivativeContainerType< Utils::Derivative::SecondFull > &derivatives) const override |
template<Utils::Derivative O> | |
void | addRepulsionDerivativesImpl (DerivativeContainerType< O > &derivatives) const |
Public Member Functions inherited from Scine::Utils::RepulsionCalculator | |
virtual void | calculateRepulsion (DerivativeOrder order) |
virtual void | addRepulsionDerivatives (AutomaticDifferentiation::DerivativeContainerType< Derivative::First > &derivatives) const |
virtual void | addRepulsionDerivatives (AutomaticDifferentiation::DerivativeContainerType< Derivative::SecondAtomic > &derivatives) const |
virtual void | addRepulsionDerivatives (AutomaticDifferentiation::DerivativeContainerType< Derivative::SecondFull > &derivatives) const |
Additional Inherited Members | |
Protected Member Functions inherited from Scine::Utils::RepulsionCalculator | |
AutomaticDifferentiation::Value1DType < order > | calculatePairwiseCoreRepulsion (double distance, double repulsionConstant) |
This class sums up the core-core repulsion energies and the corresponding derivatives with respect to the nuclear cartesian coordinate between all pairs of cores. It inherits from Utils::RepulsionCalculator in order for it to work with the LCAO/ScfMethod polymorphic system.
|
override |
Starts the calculation of the core-core repulsion up to the.
order | derivative order. |