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:
- derive class
P
from WavefunctionProperty<Value> and implement WavefunctionProperty<Value>::do_evaluate() asP::do_evaluate()
- define class
P::Provider
to be used as a public base of any Wavefunction that can compute it
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 >
|
inline |
The KeyVal constructor.
- Parameters
-
kv the 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 >
|
inlineprotected |
Member Function Documentation
◆ compute()
template<typename Value >
|
inlineoverride |
◆ do_evaluate()
template<typename Value >
|
protectedpure virtual |
◆ evaluate()
template<typename Value >
|
inlineoverride |
◆ wfn()
template<typename Value >
|
inlineprotected |
◆ write()
template<typename Value >
|
inlineoverrideprotected |
The documentation for this class was generated from the following files:
- mpqc/chemistry/qc/properties/fwd.h
- mpqc/chemistry/qc/properties/property.h