22#ifndef quantlib_swap_rate_pc_evolver_hpp
23#define quantlib_swap_rate_pc_evolver_hpp
32 class BrownianGenerator;
33 class BrownianGeneratorFactory;
39 const ext::shared_ptr<MarketModel>&,
42 Size initialStep = 0);
45 const std::vector<Size>&
numeraires()
const override;
Curve state for constant-maturity-swap market models
Curve state for market-model simulations
std::vector< Rate > initialLogSwapRates_
std::vector< Real > drifts1_
std::vector< Rate > displacements_
Real advanceStep() override
Real startNewPath() override
void setCMSwapRates(const std::vector< Real > &swapRates)
const CurveState & currentState() const override
std::vector< Real > brownians_
CMSwapCurveState curveState_
Size currentStep() const override
std::vector< std::vector< Real > > fixedDrifts_
std::vector< Real > drifts2_
std::vector< Size > alive_
ext::shared_ptr< MarketModel > marketModel_
std::vector< Rate > swapRates_
std::vector< Real > initialDrifts_
std::vector< Size > numeraires_
std::vector< CMSMMDriftCalculator > calculators_
std::vector< Real > correlatedBrownians_
const std::vector< Size > & numeraires() const override
ext::shared_ptr< BrownianGenerator > generator_
std::vector< Rate > logSwapRates_
void setInitialState(const CurveState &) override
Drift computation for CMS market model.
std::size_t Size
size of a container