Class Scine::Sparrow::nddo::MNDORepulsionEnergy

class MNDORepulsionEnergy : 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

MNDORepulsionEnergy(const Utils::ElementTypeCollection &elements, const Utils::PositionCollection &positions, const ElementParameters &elementParameters)

Constructor.

~MNDORepulsionEnergy()

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.