MathTL
 All Classes Functions Variables Typedefs Enumerations
Public Member Functions | Public Attributes
MathTL::AbstractIVP< VECTOR > Class Template Reference

#include <ivp.h>

List of all members.

Public Member Functions

virtual ~AbstractIVP ()=0
virtual void evaluate_f (const double t, const VECTOR &v, const double tolerance, VECTOR &result) const =0
virtual void evaluate_ft (const double t, const VECTOR &v, const double tolerance, VECTOR &result) const =0
virtual void solve_ROW_stage_equation (const double t, const VECTOR &v, const double alpha, const VECTOR &y, const double tolerancs, VECTOR &result) const =0

Public Attributes

VECTOR u0

Detailed Description

template<class VECTOR>
class MathTL::AbstractIVP< VECTOR >

Abstract base class for general initial value problems

u'(t) = f(t, u(t)), 0 < t <= T u(0) = u_0

where u:[0,T]->V.

The signature of AbstractIVP is designed to be used in (derivations of) the class OneStepScheme, especially for Runge-Kutta and linearly implicit methods.


Constructor & Destructor Documentation

template<class VECTOR >
MathTL::AbstractIVP< VECTOR >::~AbstractIVP ( ) [pure virtual]

virtual destructor


Member Function Documentation

template<class VECTOR>
virtual void MathTL::AbstractIVP< VECTOR >::evaluate_f ( const double  t,
const VECTOR &  v,
const double  tolerance,
VECTOR &  result 
) const [pure virtual]

evaluate the right--hand side f at (t,v), up to some tolerance (w.r.t. the ||.||_2 norm)

Implemented in Arenstorf, Circle, Expo, SquareRoot2, SquareRoot, and Dahlquist.

template<class VECTOR>
virtual void MathTL::AbstractIVP< VECTOR >::evaluate_ft ( const double  t,
const VECTOR &  v,
const double  tolerance,
VECTOR &  result 
) const [pure virtual]

evaluate the derivative f_t at (t,v), up to some tolerance (w.r.t. the ||.||_2 norm)

Implemented in Arenstorf, Circle, Expo, SquareRoot2, SquareRoot, and Dahlquist.

template<class VECTOR>
virtual void MathTL::AbstractIVP< VECTOR >::solve_ROW_stage_equation ( const double  t,
const VECTOR &  v,
const double  alpha,
const VECTOR &  y,
const double  tolerancs,
VECTOR &  result 
) const [pure virtual]

Up to a given tolerance (w.r.t. the ||.||_2 norm), solve the special linear system

(alpha*I-J)x = y,

where J = f(t,v) is the (exact) Jacobian of f. This routine will primarily be used to solve the stage equations of an ROW-method.

Implemented in Arenstorf, Circle, Expo, SquareRoot2, SquareRoot, and Dahlquist.


Member Data Documentation

template<class VECTOR>
VECTOR MathTL::AbstractIVP< VECTOR >::u0

initial value


The documentation for this class was generated from the following files:
 All Classes Functions Variables Typedefs Enumerations