Class Scine::Utils::Dftd3::Dftd3Parameters

class Dftd3Parameters

A class handling the parameters involved in the calculation of D3 energies and gradients.

Most parameters in this method are static constexpr because they stay the same for all D3 methods. The parameters a1, s8 and a2 are specified by the user. One set of parameters, the reference pairs used to calculate the C6 coefficients, are outsourced to the Dftd3ReferencePairs class, because it involves a very large number of values.

Public Functions

Dftd3Parameters()

Default constructor.

Dftd3Parameters(double a1, double s8, double a2)

Constructor that allows for passing a1, s8 and a2 parameters.

~Dftd3Parameters()

Default destructor.

double getCovalentRadius(ElementType elementType)

Getter for a covalent radius for a given element type.

Return

double

double getK1()

Getter for the k1 parameter.

Return

double

double getK3()

Getter for the k3 parameter.

Return

double

const std::array<std::array<double, 3>, 25> &getReferencePairs(ElementType elementType1, ElementType elementType2)

Getter for reference pairs for one atom pair.

Return

const std::array<std::array<double, 3>, 75>& An 75 x 3 array which contains all the reference pairs for the atom pair consisting of element type 1 and element type 2. Some of the reference pairs are just placeholders.

double getR2r4(ElementType elementType)

Getter for the r2r4 parameter for a given element type.

The name r2r4 is copied from Grimme's implementation of D3.
It refers to the square root of the value Q, with Q being defined in
Eq.(9) of J. Chem. Phys. 132, 154104, (2010).

Return

double

double getA1()

Getter for the a1 parameter.

Return

double

double getS8()

Getter for the s8 parameter.

Return

double

double getA2()

Getter for the a1 parameter.

Return

double