24#ifndef quantlib_fdm_bates_op_hpp
25#define quantlib_fdm_bates_op_hpp
33 class LinearInterpolation;
38 FdmBatesOp(
const ext::shared_ptr<FdmMesher>& mesher,
39 const ext::shared_ptr<BatesProcess>& batesProcess,
41 Size integroIntegrationOrder,
42 const ext::shared_ptr<FdmQuantoHelper>& quantoHelper =
43 ext::shared_ptr<FdmQuantoHelper>());
68 const ext::shared_ptr<LinearInterpolation>&
interpl_;
102 return hestonOp_->apply_direction(direction,
r);
108 return hestonOp_->solve_splitting(direction,
r,
s);
1-D array used in linear algebra.
const ext::shared_ptr< LinearInterpolation > & interpl_
const FdmBoundaryConditionSet & bcSet_
Real operator()(Real y) const
GaussHermiteIntegration gaussHermiteIntegration_
Size size() const override
Array apply_direction(Size direction, const Array &r) const override
Array preconditioner(const Array &r, Real s) const override
std::vector< SparseMatrix > toMatrixDecomp() const override
void setTime(Time t1, Time t2) override
Time is required.
const FdmBoundaryConditionSet bcSet_
Array apply_mixed(const Array &r) const override
Array integro(const Array &r) const
const ext::shared_ptr< FdmMesher > mesher_
Array solve_splitting(Size direction, const Array &r, Real s) const override
const ext::shared_ptr< FdmHestonOp > hestonOp_
Array apply(const Array &r) const override
generalized Gauss-Hermite integration
Integral of a 1-dimensional function using the Gauss quadratures.
Real Time
continuous quantity with 1-year units
std::size_t Size
size of a container
OperatorTraits< FdmLinearOp >::bc_set FdmBoundaryConditionSet
ext::shared_ptr< YieldTermStructure > r