26#include <ql/methods/finitedifferences/operators/fdmlinearopcomposite.hpp>
27#include <ql/methods/finitedifferences/operators/firstderivativeop.hpp>
28#include <ql/methods/finitedifferences/operators/triplebandlinearop.hpp>
29#include <ql/stochasticprocess.hpp>
36 FdmLgmOp(
const ext::shared_ptr<FdmMesher>& mesher,
const ext::shared_ptr<StochasticProcess1D>& process);
38 Size
size()
const override;
39 void setTime(Time t1, Time t2)
override;
41 Array
apply(
const Array& r)
const override;
44 Array
solve_splitting(Size direction,
const Array& r, Real s)
const override;
47#if !defined(QL_NO_UBLAS_SUPPORT)
48 std::vector<QuantLib::SparseMatrix>
toMatrixDecomp()
const override;
Size size() const override
Array apply_direction(Size direction, const Array &r) const override
Array preconditioner(const Array &r, Real s) const override
TripleBandLinearOp dxxMap_
std::vector< QuantLib::SparseMatrix > toMatrixDecomp() const override
ext::shared_ptr< StochasticProcess1D > process_
void setTime(Time t1, Time t2) override
Array apply_mixed(const Array &r) const override
Array solve_splitting(Size direction, const Array &r, Real s) const override
Array apply(const Array &r) const override
ext::shared_ptr< FdmMesher > mesher_