20#include <ql/experimental/finitedifferences/fdmdupire1dop.hpp>
21#include <ql/methods/finitedifferences/operators/secondderivativeop.hpp>
22#include <boost/numeric/ublas/matrix.hpp>
27 const Array &localVolatility)
28 : mesher_(mesher), localVolatility_(localVolatility),
30 .mult(0.5 * localVolatility * localVolatility)) {}
43 QL_FAIL(
"direction too large");
54 QL_FAIL(
"direction too large");
1-D array used in linear algebra.
FdmDupire1dOp(const ext::shared_ptr< FdmMesher > &mesher, const Array &localVolatility)
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.
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
SparseMatrix toMatrix() const override
Array solve_splitting(const Array &r, Real a, Real b=1.0) const
Array apply(const Array &r) const override
Real Time
continuous quantity with 1-year units
std::size_t Size
size of a container