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

Faster Cash-Karp embedded Runge-Kutta ODE stepper (GSL) More...

#include <gsl_rkck.h>

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

Detailed Description

template<size_t N, class func_t = ode_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc>
class gsl_rkck_fast< N, func_t, vec_t, alloc_vec_t, alloc_t >

This a faster version of gsl_rkck, which is a stepper for a fixed number of ODEs. It ignores the error values returned by the derivs argument. The argument n to step() should always be equal to the template parameter N, and the vector parameters to step must have space allocated for at least N elements. No error checking is performed to ensure that this is the case.

Based on Cash90 .

Definition at line 253 of file gsl_rkck.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

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 ec [7]
double b21
double c1
double c3
double c4
double c6

Member Function Documentation

template<size_t N, class func_t = ode_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc>
virtual int gsl_rkck_fast< N, 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.

Note:
The value of the parameter n must be equal to the template parameter N.

Implements ode_step< func_t, vec_t >.

Definition at line 344 of file gsl_rkck.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.