33 const ext::shared_ptr<FdmMesher>& mesher,
34 const ext::shared_ptr<YieldTermStructure>& rTS,
41 Pow(mesher->locations(direction), 2.0 *
beta))),
42 mapT_(direction, mesher) {
57 return Array(
r.size(), 0.0);
65 return Array(
r.size(), 0.0);
74 return Array(
r.size(), 0.0);
1-D array used in linear algebra.
FdmCEVOp(const ext::shared_ptr< FdmMesher > &mesher, const ext::shared_ptr< YieldTermStructure > &rTS, Real f0, Real alpha, Real beta, Size direction)
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
const TripleBandLinearOp dxxMap_
void setTime(Time t1, Time t2) override
Time is required.
Array apply_mixed(const Array &r) const override
const ext::shared_ptr< YieldTermStructure > & rTS_
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
void axpyb(const Array &a, const TripleBandLinearOp &x, const TripleBandLinearOp &y, const Array &b)
Array apply(const Array &r) const override
FDM operator for the Constant Elasticity of Variance (CEV) model.
const ext::shared_ptr< YieldTermStructure > rTS_
memory layout of a fdm linear operator
first derivative linear operator
Real Time
continuous quantity with 1-year units
std::size_t Size
size of a container
Array Pow(const Array &v, Real alpha)
ext::shared_ptr< YieldTermStructure > r
second derivative operator
Interest-rate term structure.