Logo
Reference manual - version qle_version
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 QuantLib::ext::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 QuantLib::ext::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()

◆ H()

◆ zetan()

template<class TS>
Real zetan ( const Size n,
const Time t,
const QuantLib::ext::shared_ptr< Integrator > & integrator )

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

◆ shift()

template<class TS>
Real & shift ( )

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

◆ scaling()

template<class TS>
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()

template<class TS>
Size numberOfParameters ( ) const
overridevirtual

the number of parameters in this parametrization

Reimplemented from Parametrization.

◆ update()