gsl_rkf45 Class Template Reference

Runge-Kutta-Fehlberg embedded Runge-Kutta ODE stepper (GSL). More...

#include <gsl_rkf45.h>

Inheritance diagram for gsl_rkf45:

odestep

Detailed Description

template<class param_t, class func_t = ode_funct<param_t>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc>
class gsl_rkf45< param_t, func_t, vec_t, alloc_vec_t, alloc_t >

Based on Hairer00 .

Definition at line 59 of file gsl_rkf45.h.


Public Member Functions

virtual int step (double x, double h, size_t n, vec_t &y, vec_t &dydx, vec_t &yout, vec_t &yerr, vec_t &dydx_out, param_t &pa, func_t &derivs)
 Perform an integration step.

Protected Attributes

size_t ndim
 Size of allocated vectors.
alloc_t ao
 Memory allocator for objects of type alloc_vec_t.
Storage for the intermediate steps
alloc_vec_t k2
alloc_vec_t k3
alloc_vec_t k4
alloc_vec_t k5
alloc_vec_t k6
alloc_vec_t ytmp
Storage for the coefficients
double ah [5]
double b3 [2]
double b4 [3]
double b5 [4]
double b6 [5]
double c1
double c3
double c4
double c5
double c6
double ec [7]

Member Function Documentation

virtual int step ( double  x,
double  h,
size_t  n,
vec_t &  y,
vec_t &  dydx,
vec_t &  yout,
vec_t &  yerr,
vec_t &  dydx_out,
param_t &  pa,
func_t &  derivs 
) [inline, virtual]

Given initial value of the n-dimensional function in y and the derivative in dydx (which must generally be computed beforehand) at the point x, take a step of size h giving the result in yout, the uncertainty in yerr, and the new derivative in dydx_out using function derivs to calculate derivatives. The parameters yout and y and the parameters dydx_out and dydx may refer to the same object.

If derivs always returns zero, then this function will also return zero. If not, step() will return the first non-zero value which was obtained in a call to derivs . The error handler is never called.

Implements odestep.

Definition at line 157 of file gsl_rkf45.h.


The documentation for this class was generated from the following file:

Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.

Project hosting provided by SourceForge.net Logo, O2scl Sourceforge Project Page