#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. 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*(Real, 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 > > |
|