G2ForwardProcess Class Reference
[Stochastic processes]

#include <ql/processes/g2process.hpp>

Inheritance diagram for G2ForwardProcess:

Inheritance graph
[legend]
List of all members.

Detailed Description

Forward G2 stochastic process


Public Member Functions

 G2ForwardProcess (Real a, Real sigma, Real b, Real eta, Real rho)
StochasticProcess interface
Size size () const
 returns the number of dimensions of the stochastic process
Disposable< ArrayinitialValues () const
 returns the initial values of the state variables
Disposable< Arraydrift (Time t, const Array &x) const
 returns the drift part of the equation, i.e., $ \mu(t, \mathrm{x}_t) $
Disposable< Matrixdiffusion (Time t, const Array &x) const
 returns the diffusion part of the equation, i.e. $ \sigma(t, \mathrm{x}_t) $
Disposable< Arrayexpectation (Time t0, const Array &x0, Time dt) const
Disposable< MatrixstdDeviation (Time t0, const Array &x0, Time dt) const
Disposable< Matrixcovariance (Time t0, const Array &x0, Time dt) const

Protected Member Functions

Real xForwardDrift (Time t, Time T) const
Real yForwardDrift (Time t, Time T) const
Real Mx_T (Real s, Real t, Real T) const
Real My_T (Real s, Real t, Real T) const

Protected Attributes

Real x0_
Real y0_
Real a_
Real sigma_
Real b_
Real eta_
Real rho_
boost::shared_ptr< QuantLib::OrnsteinUhlenbeckProcessxProcess_
boost::shared_ptr< QuantLib::OrnsteinUhlenbeckProcessyProcess_


Member Function Documentation

Disposable<Array> expectation ( Time  t0,
const Array x0,
Time  dt 
) const [virtual]

returns the expectation $ E(\mathrm{x}_{t_0 + \Delta t} | \mathrm{x}_{t_0} = \mathrm{x}_0) $ of the process after a time interval $ \Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization.

Reimplemented from StochasticProcess.

Disposable<Matrix> stdDeviation ( Time  t0,
const Array x0,
Time  dt 
) const [virtual]

returns the standard deviation $ S(\mathrm{x}_{t_0 + \Delta t} | \mathrm{x}_{t_0} = \mathrm{x}_0) $ of the process after a time interval $ \Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization.

Reimplemented from StochasticProcess.

Disposable<Matrix> covariance ( Time  t0,
const Array x0,
Time  dt 
) const [virtual]

returns the covariance $ V(\mathrm{x}_{t_0 + \Delta t} | \mathrm{x}_{t_0} = \mathrm{x}_0) $ of the process after a time interval $ \Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization.

Reimplemented from StochasticProcess.