Object-oriented Scientific Computing Library: Version 0.910
Public Member Functions | Protected Attributes
gsl_rkf45< func_t, vec_t, alloc_vec_t, alloc_t > Class Template Reference

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

#include <gsl_rkf45.h>

Inheritance diagram for gsl_rkf45< func_t, vec_t, alloc_vec_t, alloc_t >:
ode_step< func_t, vec_t >

Detailed Description

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

Based on Hairer00 .

Todo:
Check this because it may not give exact dydt_out.

Definition at line 60 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, 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

template<class func_t = ode_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc>
virtual int gsl_rkf45< func_t, vec_t, alloc_vec_t, alloc_t >::step ( double  x,
double  h,
size_t  n,
vec_t &  y,
vec_t &  dydx,
vec_t &  yout,
vec_t &  yerr,
vec_t &  dydx_out,
func_t &  derivs 
) [inline, virtual]

Given initial value of the n-dimensional function in y and the derivative in dydx (which must 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 ode_step< func_t, vec_t >.

Definition at line 156 of file gsl_rkf45.h.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.