QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
Public Member Functions | List of all members
LogNormalCmSwapRatePc Class Reference

Predictor-Corrector. More...

#include <ql/models/marketmodels/evolvers/lognormalcmswapratepc.hpp>

+ Inheritance diagram for LogNormalCmSwapRatePc:
+ Collaboration diagram for LogNormalCmSwapRatePc:

Public Member Functions

 LogNormalCmSwapRatePc (Size spanningForwards, const ext::shared_ptr< MarketModel > &, const BrownianGeneratorFactory &, const std::vector< Size > &numeraires, Size initialStep=0)
 
- Public Member Functions inherited from MarketModelEvolver
virtual ~MarketModelEvolver ()=default
 
virtual const std::vector< Size > & numeraires () const =0
 
virtual Real startNewPath ()=0
 
virtual Real advanceStep ()=0
 
virtual Size currentStep () const =0
 
virtual const CurveStatecurrentState () const =0
 
virtual void setInitialState (const CurveState &)=0
 

MarketModel interface

Size spanningForwards_
 
ext::shared_ptr< MarketModelmarketModel_
 
std::vector< Sizenumeraires_
 
Size initialStep_
 
ext::shared_ptr< BrownianGeneratorgenerator_
 
std::vector< std::vector< Real > > fixedDrifts_
 
Size numberOfRates_
 
Size numberOfFactors_
 
CMSwapCurveState curveState_
 
Size currentStep_
 
std::vector< RateswapRates_
 
std::vector< Ratedisplacements_
 
std::vector< RatelogSwapRates_
 
std::vector< RateinitialLogSwapRates_
 
std::vector< Realdrifts1_
 
std::vector< Realdrifts2_
 
std::vector< RealinitialDrifts_
 
std::vector< Realbrownians_
 
std::vector< RealcorrelatedBrownians_
 
std::vector< Sizealive_
 
std::vector< CMSMMDriftCalculatorcalculators_
 
const std::vector< Size > & numeraires () const override
 
Real startNewPath () override
 
Real advanceStep () override
 
Size currentStep () const override
 
const CurveStatecurrentState () const override
 
void setInitialState (const CurveState &) override
 
void setCMSwapRates (const std::vector< Real > &swapRates)
 

Detailed Description

Predictor-Corrector.

Definition at line 36 of file lognormalcmswapratepc.hpp.

Constructor & Destructor Documentation

◆ LogNormalCmSwapRatePc()

LogNormalCmSwapRatePc ( Size  spanningForwards,
const ext::shared_ptr< MarketModel > &  marketModel,
const BrownianGeneratorFactory factory,
const std::vector< Size > &  numeraires,
Size  initialStep = 0 
)

Definition at line 29 of file lognormalcmswapratepc.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ numeraires()

const std::vector< Size > & numeraires ( ) const
overridevirtual

Implements MarketModelEvolver.

Definition at line 77 of file lognormalcmswapratepc.cpp.

+ Here is the caller graph for this function:

◆ startNewPath()

Real startNewPath ( )
overridevirtual

Implements MarketModelEvolver.

Definition at line 98 of file lognormalcmswapratepc.cpp.

◆ advanceStep()

Real advanceStep ( )
overridevirtual

Implements MarketModelEvolver.

Definition at line 105 of file lognormalcmswapratepc.cpp.

+ Here is the call graph for this function:

◆ currentStep()

Size currentStep ( ) const
overridevirtual

Implements MarketModelEvolver.

Definition at line 151 of file lognormalcmswapratepc.cpp.

◆ currentState()

const CurveState & currentState ( ) const
overridevirtual

Implements MarketModelEvolver.

Definition at line 155 of file lognormalcmswapratepc.cpp.

◆ setInitialState()

void setInitialState ( const CurveState cs)
overridevirtual

Implements MarketModelEvolver.

Definition at line 92 of file lognormalcmswapratepc.cpp.

+ Here is the call graph for this function:

◆ setCMSwapRates()

void setCMSwapRates ( const std::vector< Real > &  swapRates)
private

Definition at line 81 of file lognormalcmswapratepc.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ spanningForwards_

Size spanningForwards_
private

Definition at line 55 of file lognormalcmswapratepc.hpp.

◆ marketModel_

ext::shared_ptr<MarketModel> marketModel_
private

Definition at line 56 of file lognormalcmswapratepc.hpp.

◆ numeraires_

std::vector<Size> numeraires_
private

Definition at line 57 of file lognormalcmswapratepc.hpp.

◆ initialStep_

Size initialStep_
private

Definition at line 58 of file lognormalcmswapratepc.hpp.

◆ generator_

ext::shared_ptr<BrownianGenerator> generator_
private

Definition at line 59 of file lognormalcmswapratepc.hpp.

◆ fixedDrifts_

std::vector<std::vector<Real> > fixedDrifts_
private

Definition at line 61 of file lognormalcmswapratepc.hpp.

◆ numberOfRates_

Size numberOfRates_
private

Definition at line 63 of file lognormalcmswapratepc.hpp.

◆ numberOfFactors_

Size numberOfFactors_
private

Definition at line 63 of file lognormalcmswapratepc.hpp.

◆ curveState_

CMSwapCurveState curveState_
private

Definition at line 64 of file lognormalcmswapratepc.hpp.

◆ currentStep_

Size currentStep_
private

Definition at line 65 of file lognormalcmswapratepc.hpp.

◆ swapRates_

std::vector<Rate> swapRates_
private

Definition at line 66 of file lognormalcmswapratepc.hpp.

◆ displacements_

std::vector<Rate> displacements_
private

Definition at line 66 of file lognormalcmswapratepc.hpp.

◆ logSwapRates_

std::vector<Rate> logSwapRates_
private

Definition at line 66 of file lognormalcmswapratepc.hpp.

◆ initialLogSwapRates_

std::vector<Rate> initialLogSwapRates_
private

Definition at line 66 of file lognormalcmswapratepc.hpp.

◆ drifts1_

std::vector<Real> drifts1_
private

Definition at line 67 of file lognormalcmswapratepc.hpp.

◆ drifts2_

std::vector<Real> drifts2_
private

Definition at line 67 of file lognormalcmswapratepc.hpp.

◆ initialDrifts_

std::vector<Real> initialDrifts_
private

Definition at line 67 of file lognormalcmswapratepc.hpp.

◆ brownians_

std::vector<Real> brownians_
private

Definition at line 68 of file lognormalcmswapratepc.hpp.

◆ correlatedBrownians_

std::vector<Real> correlatedBrownians_
private

Definition at line 68 of file lognormalcmswapratepc.hpp.

◆ alive_

std::vector<Size> alive_
private

Definition at line 69 of file lognormalcmswapratepc.hpp.

◆ calculators_

std::vector<CMSMMDriftCalculator> calculators_
private

Definition at line 71 of file lognormalcmswapratepc.hpp.