JDFTx  1.7.0
VanDerWaals Class Referenceabstract

Abstract base class of pair-potential dispersion correction methods. More...

#include <VanDerWaals.h>

Inheritance diagram for VanDerWaals:
VanDerWaalsD2 VanDerWaalsD3

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 Everythinge
 

Detailed Description

Abstract base class of pair-potential dispersion correction methods.

Member Function Documentation

◆ energyAndGrad()

virtual double VanDerWaals::energyAndGrad ( std::vector< Atom > &  atoms,
const double  scaleFac,
matrix3<> *  E_RRT = 0 
) const
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.

◆ getScaleFactor()

virtual double VanDerWaals::getScaleFactor ( string  exCorrName,
double  scaleOverride = 0. 
) const
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.


The documentation for this class was generated from the following file: