QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
QdFpLegendreScheme Class Reference

Gauss-Legendre (l,m,n)-p Scheme. More...

#include <qdfpamericanengine.hpp>

+ Inheritance diagram for QdFpLegendreScheme:
+ Collaboration diagram for QdFpLegendreScheme:

Public Member Functions

 QdFpLegendreScheme (Size l, Size m, Size n, Size p)
 
Size getNumberOfChebyshevInterpolationNodes () const override
 
Size getNumberOfNaiveFixedPointSteps () const override
 
Size getNumberOfJacobiNewtonFixedPointSteps () const override
 
ext::shared_ptr< IntegratorgetFixedPointIntegrator () const override
 
ext::shared_ptr< IntegratorgetExerciseBoundaryToPriceIntegrator () const override
 
- Public Member Functions inherited from QdFpIterationScheme
virtual Size getNumberOfChebyshevInterpolationNodes () const =0
 
virtual Size getNumberOfNaiveFixedPointSteps () const =0
 
virtual Size getNumberOfJacobiNewtonFixedPointSteps () const =0
 
virtual ext::shared_ptr< IntegratorgetFixedPointIntegrator () const =0
 
virtual ext::shared_ptr< IntegratorgetExerciseBoundaryToPriceIntegrator () const =0
 
virtual ~QdFpIterationScheme ()=default
 

Private Attributes

const Size m_
 
const Size n_
 
const ext::shared_ptr< IntegratorfpIntegrator_
 
const ext::shared_ptr< IntegratorexerciseBoundaryIntegrator_
 

Detailed Description

Gauss-Legendre (l,m,n)-p Scheme.

Parameters
lorder of Gauss-Legendre integration within every fixed point iteration step
mfixed point iteration steps, first step is a partial Jacobi-Newton, the rest are naive Richardson fixed point iterations
nnumber of Chebyshev nodes to interpolate the exercise boundary
porder of Gauss-Legendre integration in final conversion of the exercise boundary into option prices

Definition at line 53 of file qdfpamericanengine.hpp.

Constructor & Destructor Documentation

◆ QdFpLegendreScheme()

QdFpLegendreScheme ( Size  l,
Size  m,
Size  n,
Size  p 
)

Definition at line 37 of file qdfpamericanengine.cpp.

Member Function Documentation

◆ getNumberOfChebyshevInterpolationNodes()

Size getNumberOfChebyshevInterpolationNodes ( ) const
overridevirtual

Implements QdFpIterationScheme.

Definition at line 48 of file qdfpamericanengine.cpp.

◆ getNumberOfNaiveFixedPointSteps()

Size getNumberOfNaiveFixedPointSteps ( ) const
overridevirtual

Implements QdFpIterationScheme.

Definition at line 52 of file qdfpamericanengine.cpp.

◆ getNumberOfJacobiNewtonFixedPointSteps()

Size getNumberOfJacobiNewtonFixedPointSteps ( ) const
overridevirtual

Implements QdFpIterationScheme.

Definition at line 55 of file qdfpamericanengine.cpp.

◆ getFixedPointIntegrator()

ext::shared_ptr< Integrator > getFixedPointIntegrator ( ) const
overridevirtual

Implements QdFpIterationScheme.

Definition at line 61 of file qdfpamericanengine.cpp.

◆ getExerciseBoundaryToPriceIntegrator()

ext::shared_ptr< Integrator > getExerciseBoundaryToPriceIntegrator ( ) const
overridevirtual

Implements QdFpIterationScheme.

Reimplemented in QdFpLegendreTanhSinhScheme.

Definition at line 65 of file qdfpamericanengine.cpp.

Member Data Documentation

◆ m_

const Size m_
private

Definition at line 65 of file qdfpamericanengine.hpp.

◆ n_

const Size n_
private

Definition at line 65 of file qdfpamericanengine.hpp.

◆ fpIntegrator_

const ext::shared_ptr<Integrator> fpIntegrator_
private

Definition at line 66 of file qdfpamericanengine.hpp.

◆ exerciseBoundaryIntegrator_

const ext::shared_ptr<Integrator> exerciseBoundaryIntegrator_
private

Definition at line 67 of file qdfpamericanengine.hpp.