occ
Loading...
Searching...
No Matches
occ::qm::GradientEvaluator< Proc > Class Template Reference

#include <gradients.h>

Public Member Functions

 GradientEvaluator (Proc &p)
void set_dispersion_d4 (const std::string &functional)
 Enable D4 dispersion correction.
void set_dispersion_callback (DispersionGradientFunc callback)
 Supply an external dispersion-gradient correction (e.g.
Mat3N nuclear_repulsion () const
Mat3N electronic (const MolecularOrbitals &mo)
const Mat3N & operator() (const MolecularOrbitals &mo)

Constructor & Destructor Documentation

◆ GradientEvaluator()

template<typename Proc>
occ::qm::GradientEvaluator< Proc >::GradientEvaluator ( Proc & p)
inlineexplicit

Member Function Documentation

◆ electronic()

template<typename Proc>
Mat3N occ::qm::GradientEvaluator< Proc >::electronic ( const MolecularOrbitals & mo)
inline

◆ nuclear_repulsion()

template<typename Proc>
Mat3N occ::qm::GradientEvaluator< Proc >::nuclear_repulsion ( ) const
inline

◆ operator()()

template<typename Proc>
const Mat3N & occ::qm::GradientEvaluator< Proc >::operator() ( const MolecularOrbitals & mo)
inline

◆ set_dispersion_callback()

template<typename Proc>
void occ::qm::GradientEvaluator< Proc >::set_dispersion_callback ( DispersionGradientFunc callback)
inline

Supply an external dispersion-gradient correction (e.g.

XDM).

The callback is invoked with (basis, mo, charge) and returns {energy, gradient}. Kept generic so corrections defined in libraries above occ_qm can be injected without occ_qm depending on them.

◆ set_dispersion_d4()

template<typename Proc>
void occ::qm::GradientEvaluator< Proc >::set_dispersion_d4 ( const std::string & functional)
inline

Enable D4 dispersion correction.

Parameters
functionalDFT functional name for D4 parameters (e.g., "pbe", "b3lyp")

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