Logo
Reference manual - version qle_version
Public Member Functions | Protected Attributes | List of all members
Lgm1fParametrization< TS > Class Template Referenceabstract

LGM 1F Parametrization. More...

#include <qle/models/irlgm1fparametrization.hpp>

+ Inheritance diagram for Lgm1fParametrization< TS >:

Public Member Functions

 Lgm1fParametrization (const Currency &currency, const Handle< TS > &termStructure, const std::string &name=std::string())
 
virtual Real zeta (const Time t) const =0
 
virtual Real H (const Time t) const =0
 
virtual Real alpha (const Time t) const
 
virtual Real kappa (const Time t) const
 
virtual Real Hprime (const Time t) const
 
virtual Real Hprime2 (const Time t) const
 
virtual Real hullWhiteSigma (const Time t) const
 
const Handle< TS > termStructure () const
 
Real zetan (const Size n, const Time t, const boost::shared_ptr< Integrator > &integrator)
 
Real & shift ()
 
Real & scaling ()
 
Size numberOfParameters () const override
 
void update () const override
 
- Public Member Functions inherited from Parametrization
 Parametrization (const Currency &currency, const std::string &name="")
 
virtual const Currency & currency () const
 
virtual const Array & parameterTimes (const Size) const
 
virtual Array parameterValues (const Size) const
 
virtual const boost::shared_ptr< Parameterparameter (const Size) const
 
const std::string & name () const
 
virtual Real direct (const Size, const Real x) const
 
virtual Real inverse (const Size, const Real y) const
 

Protected Attributes

Real shift_
 
Real scaling_
 
- Protected Attributes inherited from Parametrization
const Real h_
 
const Real h2_
 

Additional Inherited Members

- Protected Member Functions inherited from Parametrization
Time tr (const Time t) const
 
Time tl (const Time t) const
 
Time tr2 (const Time t) const
 
Time tm2 (const Time t) const
 
Time tl2 (const Time t) const
 

Detailed Description

template<class TS>
class QuantExt::Lgm1fParametrization< TS >

LGM 1F Parametrization.

Member Function Documentation

◆ zeta()

virtual Real zeta ( const Time  t) const
pure virtual

◆ H()

virtual Real H ( const Time  t) const
pure virtual

◆ zetan()

Real zetan ( const Size  n,
const Time  t,
const boost::shared_ptr< Integrator > &  integrator 
)

\[ \int_0^t alpha^2(u) H^n(u) du \]

◆ shift()

Real & shift

allows to apply a shift to H (model invariance 1)

◆ scaling()

Real & scaling

allows to apply a scaling to H and zeta (model invariance 2), note that if a non unit scaling is provided, then the parameterValues method returns the unscaled alpha, while all other methods return scaled (and shifted) values

◆ numberOfParameters()

Size numberOfParameters ( ) const
overridevirtual

the number of parameters in this parametrization

Reimplemented from Parametrization.

◆ update()

void update
overridevirtual

this method should be called when input parameters linked via references or pointers change in order to ensure consistent results

Reimplemented from Parametrization.

Reimplemented in Lgm1fPiecewiseLinearParametrization< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >.