Abstract base class of pair-potential dispersion correction methods. More...
#include <VanDerWaals.h>
Public Member Functions | |
VanDerWaals (const Everything &e) | |
virtual double | getScaleFactor (string exCorrName, double scaleOverride=0.) const =0 |
virtual double | energyAndGrad (std::vector< Atom > &atoms, const double scaleFac, matrix3<> *E_RRT=0) const =0 |
Protected Attributes | |
const Everything & | e |
Abstract base class of pair-potential dispersion correction methods.
|
pure virtual |
Van der Waal correction energy for a collection of discrete atoms at fixed locations. Corresponding forces should be accumulated to Atom::force for each atom. If E_RRT is non-null, accumulate contributions to the symmetric lattice derivative (stress * volume).
Implemented in VanDerWaalsD3, and VanDerWaalsD2.
|
pure virtual |
Retrieve the scale factor for a specified exchange-correlation functional. Use scaleOverride, if supplied and supported, to override the functional's default. Quit with an appropriate error message if functional is not parametrized.
Implemented in VanDerWaalsD3, and VanDerWaalsD2.