Options
All
  • Public
  • Public/Protected
  • All
Menu

Forward Euler scheme for finite difference methods

See sect. \ref findiff 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 ... array_type;

// copy constructor/assignment
// (these will be provided by the compiler if none is defined)
Operator(const Operator&);
Operator& operator=(const Operator&);

// inspectors
Size size();

// modifiers
void setTime(Time t);

// operator interface
array_type applyTo(const array_type&);
static Operator identity(Size size);

// operator algebra
Operator operator*(Real, const Operator&);
Operator operator-(const Operator&, const Operator&);
todo

add Richardson extrapolation

Hierarchy

Index

Properties

Protected _I

Protected _L

Protected _bcs

Protected _dt

_dt: Time

Protected _explicitPart

_explicitPart: TridiagonalOperator

Protected _implicitPart

_implicitPart: TridiagonalOperator

Protected _theta

_theta: Real

Methods

eInit

init

setStep

  • setStep(dt: Time): void
  • Parameters

    Returns void

step

  • Parameters

    Returns void