The driver object is a high level wrapper that combines the evolution, control and stepper objects for easy use.
These functions return a pointer to a newly allocated instance of a driver object. The functions automatically allocate and initialise the evolve, control and stepper objects for ODE system sys using stepper type T. The initial step size is given in hstart. The rest of the arguments follow the syntax and semantics of the control functions with same name (
gsl_odeiv2_control_*_new
).
The function sets a minimum for allowed step size hmin for driver d. Default value is 0.
The function sets a maximum for allowed step size hmax for driver d. Default value is
GSL_DBL_MAX
.
The function sets a maximum for allowed number of steps nmax for driver d. Default value of 0 sets no limit for steps.
This function evolves the driver system d from t to t1. Initially vector y should contain the values of dependent variables at point t. If the function is unable to complete the calculation, an error code from
gsl_odeiv2_evolve_apply
is returned, and t and y contain the values from last successful step.If maximum number of steps is reached, a value of
GSL_EMAXITER
is returned. If the step size drops below minimum value, the function returns withGSL_ENOPROG
. If the user-supplied functions defined in the system sys returnsGSL_EBADFUNC
, the function returns immediately with the same return code. In this case the user must callgsl_odeiv2_driver_reset
before calling this function again.
This function evolves the driver system d from t with n steps of size h. If the function is unable to complete the calculation, an error code from
gsl_odeiv2_evolve_apply_fixed_step
is returned, and t and y contain the values from last successful step.