CrankNicolson Class Template Reference#include <ql/FiniteDifferences/cranknicolson.hpp>
Inheritance diagram for CrankNicolson:
[legend]List of all members.
Detailed Description
template<class Operator>
class QuantLib::CrankNicolson< Operator >
Crank-Nicolson scheme for finite difference methods.
See sect. The finite differences framework for details on the method.
In this implementation, the passed operator must be derived from either TimeConstantOperator or TimeDependentOperator. Also, it must implement at least the following interface:
typedef ... arrayType;
Operator(const Operator&);
Operator& operator=(const Operator&);
Size size();
void setTime(Time t);
arrayType applyTo(const arrayType&);
arrayType solveFor(const arrayType&);
static Operator identity(Size size);
Operator operator*(double, const Operator&);
Operator operator+(const Operator&, const Operator&);
Operator operator+(const Operator&, const Operator&);
- Warning:
- The differential operator must be linear for this evolver to work.
|
Friends |
class | FiniteDifferenceModel< CrankNicolson< Operator > > |
|