Class Scine::Sparrow::nddo::PM6RepulsionEnergy

class PM6RepulsionEnergy : public RepulsionCalculator

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.

Public Functions

PM6RepulsionEnergy(const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const ElementParameters &elementParameters, const ElementPairParameters &pairParameters)

Constructor.

~PM6RepulsionEnergy()

Overrides virtual base class desctructor with default implementation.

void initialize()

Initializes the core-core repulsion pairs.

void calculateRepulsion(Utils::derivOrder order)

Starts the calculation of the core-core repulsion up to the.

Parameters
  • order: derivative order.

double getRepulsionEnergy() const

Sums up all the single core-core contributions to return the overall core-core repulsion energy.

void addRepulsionDerivatives(Utils::AutomaticDifferentiation::DerivativeContainerType<Utils::derivativeType::first> &derivatives) const

Functions calculating the core-core derivative contributions up to the corresponding derivative order.