mpqc::math::TaylorExpansionCoefficients< Value > Class Template Reference

Documentation

template<typename Value>
class mpqc::math::TaylorExpansionCoefficients< Value >

N-th order Taylor expansion of a function of K variables.

Template Parameters
Valuecan be complex valued or a vector (e.g. expansion of a dipole moment)

Public Member Functions

 TaylorExpansionCoefficients ()
 
 TaylorExpansionCoefficients (Value val)
 
 TaylorExpansionCoefficients (std::vector< std::vector< Value >> coefs)
 
 TaylorExpansionCoefficients (size_t nvars, size_t order)
 
const std::vector< Value > & derivs (size_t N) const
 
std::vector< Value > & derivs (size_t N)
 
const Value & value () const
 
const std::vector< Value > & gradient () const
 
const std::vector< Value > & hessian () const
 
size_t order () const
 
void print (std::ostream &os) const
 
void write (KeyVal &kv) const
 

Constructor & Destructor Documentation

◆ TaylorExpansionCoefficients() [1/4]

template<typename Value >
mpqc::math::TaylorExpansionCoefficients< Value >::TaylorExpansionCoefficients ( )
inline

◆ TaylorExpansionCoefficients() [2/4]

template<typename Value >
mpqc::math::TaylorExpansionCoefficients< Value >::TaylorExpansionCoefficients ( Value  val)
inline

◆ TaylorExpansionCoefficients() [3/4]

template<typename Value >
mpqc::math::TaylorExpansionCoefficients< Value >::TaylorExpansionCoefficients ( std::vector< std::vector< Value >>  coefs)
inline

◆ TaylorExpansionCoefficients() [4/4]

template<typename Value >
mpqc::math::TaylorExpansionCoefficients< Value >::TaylorExpansionCoefficients ( size_t  nvars,
size_t  order 
)
inline

Member Function Documentation

◆ derivs() [1/2]

template<typename Value >
std::vector<Value>& mpqc::math::TaylorExpansionCoefficients< Value >::derivs ( size_t  N)
inline

◆ derivs() [2/2]

template<typename Value >
const std::vector<Value>& mpqc::math::TaylorExpansionCoefficients< Value >::derivs ( size_t  N) const
inline

access a packed set of unique derivatives of order N. Derivative $ {i_1, i_2, i_3, ... i_N} $ where $ i_1 \leq i_2 \leq i_3 ... \leq i_N $ is stored in position TODO derive the general formula

◆ gradient()

template<typename Value >
const std::vector<Value>& mpqc::math::TaylorExpansionCoefficients< Value >::gradient ( ) const
inline

useful shorthand for derivs(1) @ return the function gradient

◆ hessian()

template<typename Value >
const std::vector<Value>& mpqc::math::TaylorExpansionCoefficients< Value >::hessian ( ) const
inline

useful shorthand for derivs(2) @ return the function gradient

◆ order()

template<typename Value >
size_t mpqc::math::TaylorExpansionCoefficients< Value >::order ( ) const
inline
Returns
the order of the expansion, i.e. the maximum derivative order
Exceptions
ProgrammingErrorif this object is not initialized

◆ print()

template<typename Value >
void mpqc::math::TaylorExpansionCoefficients< Value >::print ( std::ostream &  os) const
inline

Print to an output stream

Parameters
osthe output stream
Exceptions
ProgrammingErrorif this object is not initialized

◆ value()

template<typename Value >
const Value& mpqc::math::TaylorExpansionCoefficients< Value >::value ( ) const
inline

useful shorthand for derivs(0)[0] @ return the function value

◆ write()

template<typename Value >
void mpqc::math::TaylorExpansionCoefficients< Value >::write ( KeyVal kv) const
inline

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