mpqc::WavefunctionProperty< Value > Class Template Referenceabstract

Documentation

template<typename Value>
class mpqc::WavefunctionProperty< Value >

WavefunctionProperty computes a Taylor expansion of a molecular property using a visiting Wavefunction .

This is to be used as a base class for ALL properties of Wavefunction classes. To create a new wavefunction property class P:

Public Types

using base_type = math::TaylorExpansionFunction< Value, MolecularCoordinates >
 

Public Member Functions

 WavefunctionProperty (const KeyVal &kv)
 The KeyVal constructor. More...
 
void evaluate () override
 
void compute () override
 

Protected Member Functions

const std::shared_ptr< Wavefunction > & wfn () const
 
virtual void do_evaluate ()=0
 
 WavefunctionProperty (const KeyVal &kv, double default_precision)
 The auxiliary KeyVal constructor. More...
 
void write (KeyVal &kv) const override
 

Member Typedef Documentation

◆ base_type

template<typename Value >
using mpqc::WavefunctionProperty< Value >::base_type = math::TaylorExpansionFunction<Value, MolecularCoordinates>

Constructor & Destructor Documentation

◆ WavefunctionProperty() [1/2]

template<typename Value >
mpqc::WavefunctionProperty< Value >::WavefunctionProperty ( const KeyVal kv)
inline

The KeyVal constructor.

Parameters
kvthe KeyVal object to be queried

The KeyVal object will be queried for all keywords of the auxiliary KeyVal ctor of the MolecularTaylorExpansion class, as well as the following keywords:

Keyword Type Default Description
wfn Wavefunction none the Wavefunction that will compute this
coords MolecularCoordinates CartMolecularCoordinates from the Molecule object of the Wavefunction object the molecular coordinates

◆ WavefunctionProperty() [2/2]

template<typename Value >
mpqc::WavefunctionProperty< Value >::WavefunctionProperty ( const KeyVal kv,
double  default_precision 
)
inlineprotected

The auxiliary KeyVal constructor.

Like standard KeyVal ctor, except accepts extra defaults from derived classes. Queries same keywords.

Parameters
kvthe KeyVal object to be queried
default_precisionthe default precision to be used by MolecularTaylorExpansion

Member Function Documentation

◆ compute()

template<typename Value >
void mpqc::WavefunctionProperty< Value >::compute ( )
inlineoverride

◆ do_evaluate()

template<typename Value >
virtual void mpqc::WavefunctionProperty< Value >::do_evaluate ( )
protectedpure virtual

◆ evaluate()

template<typename Value >
void mpqc::WavefunctionProperty< Value >::evaluate ( )
inlineoverride

◆ wfn()

template<typename Value >
const std::shared_ptr<Wavefunction>& mpqc::WavefunctionProperty< Value >::wfn ( ) const
inlineprotected

◆ write()

template<typename Value >
void mpqc::WavefunctionProperty< Value >::write ( KeyVal kv) const
inlineoverrideprotected

The documentation for this class was generated from the following files:
  • mpqc/chemistry/qc/properties/fwd.h
  • mpqc/chemistry/qc/properties/property.h