25#ifndef quantlib_fdm_black_scholes_solver_hpp
26#define quantlib_fdm_black_scholes_solver_hpp
28#include <ql/handle.hpp>
29#include <ql/patterns/lazyobject.hpp>
30#include <ql/methods/finitedifferences/solvers/fdmsolverdesc.hpp>
31#include <ql/methods/finitedifferences/solvers/fdmbackwardsolver.hpp>
32#include <ql/methods/finitedifferences/utilities/fdmquantohelper.hpp>
37 class FdmSnapshotCondition;
38 class GeneralizedBlackScholesProcess;
46 bool localVol =
false,
67 mutable ext::shared_ptr<Fdm1DimSolver>
solver_;
void performCalculations() const override
ext::shared_ptr< Fdm1DimSolver > solver_
const FdmSolverDesc solverDesc_
const Handle< FdmQuantoHelper > quantoHelper_
Real valueAt(Real s) const
Real gammaAt(Real s) const
Handle< GeneralizedBlackScholesProcess > process_
Real deltaAt(Real s) const
Real thetaAt(Real s) const
const FdmSchemeDesc schemeDesc_
const Real illegalLocalVolOverwrite_
Shared handle to an observable.
Framework for calculation on demand and result caching.
template class providing a null value for a given type.
static FdmSchemeDesc Douglas()