File Dftd3Parameters.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
-
namespace
Dftd3
-
class
Dftd3Parameters
- #include <Dftd3Parameters.h>
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
Private Static Attributes
-
constexpr double
covalentRadii_
[94] = {0.80628308, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , }¶
-
constexpr double
r2r4_
[94] = {2.00734898, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , }¶
-
constexpr double
k1_
= 16.0¶
-
constexpr double
k3_
= 4.0¶
-
-
class
-
namespace
-
namespace