|
ccgsl 2.7.2
C++wrappersforGnuScientificLibrary
|
This is an empty base class. More...
#include <odeiv2_system.hpp>

Public Member Functions | |
| template<typename T > | |
| int | function (double const t, T const &y, T &dydt) |
| The function that stores dydt given y and t. More... | |
| template<typename T , typename U > | |
| int | jacobian (double const t, T const &, U &dfdy, T &dfdt) |
| As function but also store Jacobian in dfdy. More... | |
| virtual size_t | size () const =0 |
| The dimension of the function arguments. More... | |
This is an empty base class.
Its main purpose is to define the Concept of a class whose objects can be used to construct a system object. Any class that implements function() and size() with suitable T can be used in the constructor of system. If a class is derived from gsl::odeiv2::system::Concept, the compiler is likely to give better warnings if one of the required functions is not implemented correctly.
Definition at line 75 of file odeiv2_system.hpp.
| int gsl::odeiv2::system::Concept::function | ( | double const | t, |
| T const & | y, | ||
| T & | dydt | ||
| ) |
The function that stores dydt given y and t.
T may be double* or gsl::vector. U may be * double* or gsl::vector.
| t | The first (time) paramter |
| y | The second (y) paramter |
| dydt | The derivatives of y with respect to t |
|
inline |
As function but also store Jacobian in dfdy.
It is not necessary to supply this function for all ode methods. T may be double* or gsl::vector. U may be double*, gsl::vector or gsl::matrix.
| t | The first (time) paramter |
| dfdy | The derivatives of f with respect to y |
| dfdt | The derivatives of f with respect to t |
Definition at line 96 of file odeiv2_system.hpp.
References gsl::exception::GSL_SUCCESS.
|
pure virtual |
The dimension of the function arguments.