#include <one_step_scheme.h>
Public Member Functions | |
virtual | ~OneStepScheme ()=0 |
virtual void | increment (const AbstractIVP< VECTOR > *ivp, const double t_m, const VECTOR &u_m, const double tau, VECTOR &u_mplus1, VECTOR &error_estimate, const double tolerance=1e-2) const =0 |
virtual int | order () const =0 |
Abstract base class for various one-step schemes for the adaptive numerical solution of vector-valued initial value problems
u'(t) = f(t, u(t)), 0 < t <= T u(0) = u_0
where u:[0,T]->V. A one-step schemes essentially has to perform the increment u^{(m)}->u^{(m+1)}, where u^{(m)} is an approximation of u(t_m) for a given time sequence 0=t_0<t_1<... Additionally, the increment function has to provide some local error estimator.
Since the one-step scheme may also be used in an infinite-dimensional setting, it is possible to specify a tolerance parameter (which controls the overall spatial error introduced by the evaluations of the right-hand side).
MathTL::OneStepScheme< VECTOR >::~OneStepScheme | ( | ) | [pure virtual] |
virtual destructor
virtual void MathTL::OneStepScheme< VECTOR >::increment | ( | const AbstractIVP< VECTOR > * | ivp, |
const double | t_m, | ||
const VECTOR & | u_m, | ||
const double | tau, | ||
VECTOR & | u_mplus1, | ||
VECTOR & | error_estimate, | ||
const double | tolerance = 1e-2 |
||
) | const [pure virtual] |
increment function u^{(m)} -> u^{(m+1)}, also returns a local error estimator
Implemented in MathTL::WMethod< VECTOR >, and MathTL::ExplicitRungeKuttaScheme< VECTOR >.
virtual int MathTL::OneStepScheme< VECTOR >::order | ( | ) | const [pure virtual] |
consistency/convergence order of the scheme
Implemented in MathTL::WMethod< VECTOR >, and MathTL::ExplicitRungeKuttaScheme< VECTOR >.