8 #ifndef MOLECULARMECHANICS_DISPERSIONEVALUATOR_H
9 #define MOLECULARMECHANICS_DISPERSIONEVALUATOR_H
16 class InteractionTermEliminator;
21 class FullSecondDerivativeCollection;
24 namespace MolecularMechanics {
49 static double getA1();
51 static double getS8();
53 static double getA2();
64 std::vector<DispersionTerm> dispersions_;
65 Eigen::MatrixXd dC6_dCN_;
66 Eigen::MatrixXd dCN_drij_;
76 #endif // MOLECULARMECHANICS_DISPERSIONEVALUATOR_H
static double getA1()
Getter for the D3 parameter a1.
Definition: DispersionEvaluator.cpp:52
double evaluate(Utils::FullSecondDerivativeCollection &derivatives, std::shared_ptr< Utils::Dftd3::Dftd3 > d3, Eigen::MatrixXd &R0)
This function evaluates and returns the energy for all dispersion interactions and updates the deriva...
Definition: DispersionEvaluator.cpp:16
void setDispersionTerms(std::vector< DispersionTerm > &&dispersionTerms)
Sets a vector of instances of the DispersionTerm class.
Definition: DispersionEvaluator.cpp:38
static double getA2()
Getter for the D3 parameter a2.
Definition: DispersionEvaluator.cpp:60
DispersionEvaluator(const Utils::AtomCollection &structure)
Constructor.
Definition: DispersionEvaluator.cpp:13
void setD3Parameters(std::vector< double > d3Parameters)
Setter for the D3 parameters a1, s8 and a2.
Definition: DispersionEvaluator.cpp:45
This class handles the elimination of MM interaction terms, which are already covered by the QM calcu...
Definition: InteractionTermEliminator.h:39
DispersionEvaluator DispersionEvaluator.h.
Definition: DispersionEvaluator.h:30
static double getS8()
Getter for the D3 parameter s8.
Definition: DispersionEvaluator.cpp:56