FGSL: api/ode.finc File Reference

FGSL Fortran interface for the GNU scientific library

Functions/Subroutines
ode.finc File Reference

## Functions/Subroutines
type(fgsl_odeiv2_system) function | fgsl_odeiv2_system_init (func, dimension, params, jacobian)
| Constructor for an ODE system object. More...
subroutine | fgsl_odeiv2_system_free (system)
type(fgsl_odeiv2_step) function | fgsl_odeiv2_step_alloc (t, dim)
integer(fgsl_int) function | fgsl_odeiv2_step_reset (s)
subroutine | fgsl_odeiv2_step_free (s)
character(kind=fgsl_char, len=fgsl_strmax) function | fgsl_odeiv2_step_name (s)
integer(fgsl_int) function | fgsl_odeiv2_step_order (s)
integer(c_int) function | fgsl_odeiv2_step_set_driver (s, d)
integer(fgsl_int) function | fgsl_odeiv2_step_apply (s, t, h, y, yerr, dydt_in, dydt_out, dydt)
type(fgsl_odeiv2_control) function | fgsl_odeiv2_control_standard_new (eps_abs, eps_rel, a_y, a_dydt)
type(fgsl_odeiv2_control) function | fgsl_odeiv2_control_y_new (eps_abs, eps_rel)
type(fgsl_odeiv2_control) function | fgsl_odeiv2_control_yp_new (eps_abs, eps_rel)
type(fgsl_odeiv2_control) function | fgsl_odeiv2_control_scaled_new (eps_abs, eps_rel, a_y, a_dydt, scale_abs)
type(fgsl_odeiv2_control) function | fgsl_odeiv2_control_alloc (t)
| Note: use of fgsl_odeiv2_control_alloc requires an initializer for the t object written in C. More...
integer(fgsl_int) function | fgsl_odeiv2_control_init (c, eps_abs, eps_rel, a_y, a_dydt)
subroutine | fgsl_odeiv2_control_free (c)
logical function | fgsl_odeiv2_control_status (s)
integer(fgsl_int) function | fgsl_odeiv2_control_hadjust (c, s, y, yerr, dydt, h)
character(kind=fgsl_char, len=fgsl_strmax) function | fgsl_odeiv2_control_name (c)
integer(fgsl_int) function | fgsl_odeiv2_control_errlevel (c, y, dydt, h, ind, errlev)
integer(fgsl_int) function | fgsl_odeiv2_control_set_driver (c, d)
type(fgsl_odeiv2_evolve) function | fgsl_odeiv2_evolve_alloc (dim)
integer(fgsl_int) function | fgsl_odeiv2_evolve_apply (e, con, step, dydt, t, t1, h, y)
integer(fgsl_int) function | fgsl_odeiv2_evolve_apply_fixed_step (e, con, step, dydt, t, h0, y)
integer(c_int) function | fgsl_odeiv2_evolve_reset (s)
subroutine | fgsl_odeiv2_evolve_free (s)
logical function | fgsl_odeiv2_evolve_status (s)
logical function | fgsl_odeiv2_step_status (s)
logical function | fgsl_odeiv2_system_status (s)
integer(fgsl_int) function | fgsl_odeiv2_evolve_set_driver (c, d)
type(fgsl_odeiv2_driver) function | fgsl_odeiv2_driver_alloc_y_new (sys, t, hstart, epsabs, epsrel)
type(fgsl_odeiv2_driver) function | fgsl_odeiv2_driver_alloc_yp_new (sys, t, hstart, epsabs, epsrel)
type(fgsl_odeiv2_driver) function | fgsl_odeiv2_driver_alloc_standard_new (sys, t, hstart, epsabs, epsrel, a_y, a_dydt)
type(fgsl_odeiv2_driver) function | fgsl_odeiv2_driver_alloc_scaled_new (sys, t, hstart, epsabs, epsrel, a_y, a_dydt, scale_abs)
integer(fgsl_int) function | fgsl_odeiv2_driver_set_hmin (d, hmin)
integer(fgsl_int) function | fgsl_odeiv2_driver_set_hmax (d, hmax)
integer(fgsl_int) function | fgsl_odeiv2_driver_set_nmax (d, nmax)
integer(fgsl_int) function | fgsl_odeiv2_driver_apply (d, t, t1, y)
integer(fgsl_int) function | fgsl_odeiv2_driver_apply_fixed_step (d, t, h, n, y)
integer(fgsl_int) function | fgsl_odeiv2_driver_reset (d)
subroutine | fgsl_odeiv2_driver_free (d)
logical function | fgsl_odeiv2_driver_status (s)
integer(fgsl_int) function | fgsl_odeiv2_driver_reset_hstart (d, hstart)
type(fgsl_odeiv_system) function | fgsl_odeiv_system_init (func, dimension, params, jacobian)
| Constructor for an ODE system object. More...
subroutine | fgsl_odeiv_system_free (system)
type(fgsl_odeiv_step) function | fgsl_odeiv_step_alloc (t, dim)
integer(fgsl_int) function | fgsl_odeiv_step_reset (s)
subroutine | fgsl_odeiv_step_free (s)
character(kind=fgsl_char, len=fgsl_strmax) function | fgsl_odeiv_step_name (s)
integer(fgsl_int) function | fgsl_odeiv_step_order (s)
integer(fgsl_int) function | fgsl_odeiv_step_apply (s, t, h, y, yerr, dydt_in, dydt_out, dydt)
type(fgsl_odeiv_control) function | fgsl_odeiv_control_standard_new (eps_abs, eps_rel, a_y, a_dydt)
type(fgsl_odeiv_control) function | fgsl_odeiv_control_y_new (eps_abs, eps_rel)
type(fgsl_odeiv_control) function | fgsl_odeiv_control_yp_new (eps_abs, eps_rel)
type(fgsl_odeiv_control) function | fgsl_odeiv_control_scaled_new (eps_abs, eps_rel, a_y, a_dydt, scale_abs)
type(fgsl_odeiv_control) function | fgsl_odeiv_control_alloc (t)
| Note: Use of fgsl_odeiv_control_alloc requires an initializer for the t object written in C. More...
integer(fgsl_int) function | fgsl_odeiv_control_init (c, eps_abs, eps_rel, a_y, a_dydt)
subroutine | fgsl_odeiv_control_free (c)
integer(fgsl_int) function | fgsl_odeiv_control_hadjust (c, s, y0, yerr, dydt, h)
character(kind=fgsl_char, len=fgsl_strmax) function | fgsl_odeiv_control_name (c)
type(fgsl_odeiv_evolve) function | fgsl_odeiv_evolve_alloc (dim)
integer(fgsl_int) function | fgsl_odeiv_evolve_apply (e, con, step, dydt, t, t1, h, y)
integer(c_int) function | fgsl_odeiv_evolve_reset (s)
subroutine | fgsl_odeiv_evolve_free (s)
logical function | fgsl_odeiv_evolve_status (s)
logical function | fgsl_odeiv_control_status (s)
logical function | fgsl_odeiv_step_status (s)
logical function | fgsl_odeiv_system_status (s)

## Function/Subroutine Documentation

## ◆ fgsl_odeiv2_control_alloc()

type(fgsl_odeiv2_control) function fgsl_odeiv2_control_alloc | ( | type(fgsl_odeiv2_control_type), intent(in) | t | ) |

Note: use of fgsl_odeiv2_control_alloc requires an initializer for the t object written in C.

## ◆ fgsl_odeiv2_control_errlevel()

integer(fgsl_int) function fgsl_odeiv2_control_errlevel | ( | type(fgsl_odeiv2_control), value | c,
|  | real(fgsl_double), intent(in) | y,
|  | real(fgsl_double), intent(in) | dydt,
|  | real(fgsl_double), intent(in) | h,
|  | integer(fgsl_size_t), intent(in) | ind,
|  | real(fgsl_double), intent(inout) | errlev
| ) |  |

## ◆ fgsl_odeiv2_control_free()

subroutine fgsl_odeiv2_control_free | ( | type(fgsl_odeiv2_control), intent(inout) | c | ) |

## ◆ fgsl_odeiv2_control_hadjust()

integer(fgsl_int) function fgsl_odeiv2_control_hadjust | ( | type(fgsl_odeiv2_control), intent(in) | c,
|  | type(fgsl_odeiv2_step), intent(in) | s,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | y,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | yerr,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | dydt,
|  | real(fgsl_double), intent(out) | h
| ) |  |

## ◆ fgsl_odeiv2_control_init()

integer(fgsl_int) function fgsl_odeiv2_control_init | ( | type(fgsl_odeiv2_control), intent(in) | c,
|  | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt
| ) |  |

## ◆ fgsl_odeiv2_control_name()

character(kind=fgsl_char, len=fgsl_strmax) function fgsl_odeiv2_control_name | ( | type(fgsl_odeiv2_control), intent(in) | c | ) |

## ◆ fgsl_odeiv2_control_scaled_new()

type(fgsl_odeiv2_control) function fgsl_odeiv2_control_scaled_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | scale_abs
| ) |  |

## ◆ fgsl_odeiv2_control_set_driver()

integer(fgsl_int) function fgsl_odeiv2_control_set_driver | ( | type(fgsl_odeiv2_control), intent(inout) | c,
|  | type(fgsl_odeiv2_driver), intent(in) | d
| ) |  |

## ◆ fgsl_odeiv2_control_standard_new()

type(fgsl_odeiv2_control) function fgsl_odeiv2_control_standard_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt
| ) |  |

## ◆ fgsl_odeiv2_control_status()

logical function fgsl_odeiv2_control_status | ( | type(fgsl_odeiv2_control), intent(in) | s | ) |

## ◆ fgsl_odeiv2_control_y_new()

type(fgsl_odeiv2_control) function fgsl_odeiv2_control_y_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel
| ) |  |

## ◆ fgsl_odeiv2_control_yp_new()

type(fgsl_odeiv2_control) function fgsl_odeiv2_control_yp_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel
| ) |  |

## ◆ fgsl_odeiv2_driver_alloc_scaled_new()

type(fgsl_odeiv2_driver) function fgsl_odeiv2_driver_alloc_scaled_new | ( | type(fgsl_odeiv2_system), intent(in) | sys,
|  | type(fgsl_odeiv2_step_type), intent(in) | t,
|  | real(c_double), intent(in) | hstart,
|  | real(c_double), intent(in) | epsabs,
|  | real(c_double), intent(in) | epsrel,
|  | real(c_double), intent(in) | a_y,
|  | real(c_double), intent(in) | a_dydt,
|  | real(c_double), dimension(:) | scale_abs
| ) |  |

## ◆ fgsl_odeiv2_driver_alloc_standard_new()

type(fgsl_odeiv2_driver) function fgsl_odeiv2_driver_alloc_standard_new | ( | type(fgsl_odeiv2_system), intent(in) | sys,
|  | type(fgsl_odeiv2_step_type), intent(in) | t,
|  | real(c_double), intent(in) | hstart,
|  | real(c_double), intent(in) | epsabs,
|  | real(c_double), intent(in) | epsrel,
|  | real(c_double), intent(in) | a_y,
|  | real(c_double), intent(in) | a_dydt
| ) |  |

## ◆ fgsl_odeiv2_driver_alloc_y_new()

type(fgsl_odeiv2_driver) function fgsl_odeiv2_driver_alloc_y_new | ( | type(fgsl_odeiv2_system), intent(in) | sys,
|  | type(fgsl_odeiv2_step_type), intent(in) | t,
|  | real(c_double), intent(in) | hstart,
|  | real(c_double), intent(in) | epsabs,
|  | real(c_double), intent(in) | epsrel
| ) |  |

## ◆ fgsl_odeiv2_driver_alloc_yp_new()

type(fgsl_odeiv2_driver) function fgsl_odeiv2_driver_alloc_yp_new | ( | type(fgsl_odeiv2_system), intent(in) | sys,
|  | type(fgsl_odeiv2_step_type), intent(in) | t,
|  | real(c_double), intent(in) | hstart,
|  | real(c_double), intent(in) | epsabs,
|  | real(c_double), intent(in) | epsrel
| ) |  |

## ◆ fgsl_odeiv2_driver_apply()

integer(fgsl_int) function fgsl_odeiv2_driver_apply | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | real(fgsl_double), intent(inout) | t,
|  | real(fgsl_double), intent(in) | t1,
|  | real(fgsl_double), dimension(:), intent(inout) | y
| ) |  |

## ◆ fgsl_odeiv2_driver_apply_fixed_step()

integer(fgsl_int) function fgsl_odeiv2_driver_apply_fixed_step | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | real(fgsl_double), intent(inout) | t,
|  | real(fgsl_double), intent(in) | h,
|  | integer(fgsl_long), intent(in) | n,
|  | real(fgsl_double), dimension(:), intent(inout) | y
| ) |  |

## ◆ fgsl_odeiv2_driver_free()

subroutine fgsl_odeiv2_driver_free | ( | type(fgsl_odeiv2_driver), intent(inout) | d | ) |

## ◆ fgsl_odeiv2_driver_reset()

integer(fgsl_int) function fgsl_odeiv2_driver_reset | ( | type(fgsl_odeiv2_driver), intent(inout) | d | ) |

## ◆ fgsl_odeiv2_driver_reset_hstart()

integer(fgsl_int) function fgsl_odeiv2_driver_reset_hstart | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | real(fgsl_double), intent(in) | hstart
| ) |  |

## ◆ fgsl_odeiv2_driver_set_hmax()

integer(fgsl_int) function fgsl_odeiv2_driver_set_hmax | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | real(fgsl_double) | hmax
| ) |  |

## ◆ fgsl_odeiv2_driver_set_hmin()

integer(fgsl_int) function fgsl_odeiv2_driver_set_hmin | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | real(fgsl_double) | hmin
| ) |  |

## ◆ fgsl_odeiv2_driver_set_nmax()

integer(fgsl_int) function fgsl_odeiv2_driver_set_nmax | ( | type(fgsl_odeiv2_driver), intent(inout) | d,
|  | integer(fgsl_long) | nmax
| ) |  |

## ◆ fgsl_odeiv2_driver_status()

logical function fgsl_odeiv2_driver_status | ( | type(fgsl_odeiv2_driver), intent(in) | s | ) |

## ◆ fgsl_odeiv2_evolve_alloc()

type(fgsl_odeiv2_evolve) function fgsl_odeiv2_evolve_alloc | ( | integer(fgsl_size_t), intent(in) | dim | ) |

## ◆ fgsl_odeiv2_evolve_apply()

integer(fgsl_int) function fgsl_odeiv2_evolve_apply | ( | type(fgsl_odeiv2_evolve), intent(inout) | e,
|  | type(fgsl_odeiv2_control), intent(inout) | con,
|  | type(fgsl_odeiv2_step), intent(inout) | step,
|  | type(fgsl_odeiv2_system), intent(in) | dydt,
|  | real(fgsl_double), intent(inout) | t,
|  | real(fgsl_double), intent(in) | t1,
|  | real(fgsl_double), intent(inout) | h,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | y
| ) |  |

## ◆ fgsl_odeiv2_evolve_apply_fixed_step()

integer(fgsl_int) function fgsl_odeiv2_evolve_apply_fixed_step | ( | type(fgsl_odeiv2_evolve), intent(inout) | e,
|  | type(fgsl_odeiv2_control), intent(inout) | con,
|  | type(fgsl_odeiv2_step), intent(inout) | step,
|  | type(fgsl_odeiv2_system), intent(in) | dydt,
|  | real(fgsl_double), intent(inout) | t,
|  | real(fgsl_double), intent(in) | h0,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | y
| ) |  |

## ◆ fgsl_odeiv2_evolve_free()

subroutine fgsl_odeiv2_evolve_free | ( | type(fgsl_odeiv2_evolve), intent(inout) | s | ) |

## ◆ fgsl_odeiv2_evolve_reset()

integer(c_int) function fgsl_odeiv2_evolve_reset | ( | type(fgsl_odeiv2_evolve), intent(inout) | s | ) |

## ◆ fgsl_odeiv2_evolve_set_driver()

integer(fgsl_int) function fgsl_odeiv2_evolve_set_driver | ( | type(fgsl_odeiv2_evolve), intent(inout) | c,
|  | type(fgsl_odeiv2_driver), intent(in) | d
| ) |  |

## ◆ fgsl_odeiv2_evolve_status()

logical function fgsl_odeiv2_evolve_status | ( | type(fgsl_odeiv2_evolve), intent(in) | s | ) |

## ◆ fgsl_odeiv2_step_alloc()

type(fgsl_odeiv2_step) function fgsl_odeiv2_step_alloc | ( | type(fgsl_odeiv2_step_type), intent(in) | t,
|  | integer(fgsl_size_t), intent(in) | dim
| ) |  |

## ◆ fgsl_odeiv2_step_apply()

integer(fgsl_int) function fgsl_odeiv2_step_apply | ( | type(fgsl_odeiv2_step), intent(in) | s,
|  | real(fgsl_double), intent(in) | t,
|  | real(fgsl_double), intent(in) | h,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | y,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | yerr,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | dydt_in,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | dydt_out,
|  | type(fgsl_odeiv2_system), intent(in) | dydt
| ) |  |

## ◆ fgsl_odeiv2_step_free()

subroutine fgsl_odeiv2_step_free | ( | type(fgsl_odeiv2_step), intent(inout) | s | ) |

## ◆ fgsl_odeiv2_step_name()

character(kind=fgsl_char, len=fgsl_strmax) function fgsl_odeiv2_step_name | ( | type(fgsl_odeiv2_step), intent(in) | s | ) |

## ◆ fgsl_odeiv2_step_order()

integer(fgsl_int) function fgsl_odeiv2_step_order | ( | type(fgsl_odeiv2_step), intent(in) | s | ) |

## ◆ fgsl_odeiv2_step_reset()

integer(fgsl_int) function fgsl_odeiv2_step_reset | ( | type(fgsl_odeiv2_step), intent(inout) | s | ) |

## ◆ fgsl_odeiv2_step_set_driver()

integer(c_int) function fgsl_odeiv2_step_set_driver | ( | type(fgsl_odeiv2_step) | s,
|  | type(fgsl_odeiv2_driver), intent(in) | d
| ) |  |

## ◆ fgsl_odeiv2_step_status()

logical function fgsl_odeiv2_step_status | ( | type(fgsl_odeiv2_step), intent(in) | s | ) |

## ◆ fgsl_odeiv2_system_free()

subroutine fgsl_odeiv2_system_free | ( | type(fgsl_odeiv2_system), intent(inout) | system | ) |

## ◆ fgsl_odeiv2_system_init()

type(fgsl_odeiv2_system) function fgsl_odeiv2_system_init | ( |  | func,
|  | integer(fgsl_size_t) | dimension,
|  | type(c_ptr), intent(in), optional | params,
|  | optional | jacobian
| ) |  |

Constructor for an ODE system object.

Parameters

  func | - interface for a double precision vector valued function with derivatives and a parameter of arbitrary type
  dimension | - number of components of the vector function
  params | - parameter of arbitrary type
  jacobian | - interface for the jacobian of func

Returns
  ODE system object.

## ◆ fgsl_odeiv2_system_status()

logical function fgsl_odeiv2_system_status | ( | type(fgsl_odeiv2_system), intent(in) | s | ) |

## ◆ fgsl_odeiv_control_alloc()

type(fgsl_odeiv_control) function fgsl_odeiv_control_alloc | ( | type(fgsl_odeiv_control_type), intent(in) | t | ) |

Note: Use of fgsl_odeiv_control_alloc requires an initializer for the t object written in C.

## ◆ fgsl_odeiv_control_free()

subroutine fgsl_odeiv_control_free | ( | type(fgsl_odeiv_control), intent(inout) | c | ) |

## ◆ fgsl_odeiv_control_hadjust()

integer(fgsl_int) function fgsl_odeiv_control_hadjust | ( | type(fgsl_odeiv_control), intent(in) | c,
|  | type(fgsl_odeiv_step), intent(in) | s,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | y0,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | yerr,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | dydt,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | h
| ) |  |

## ◆ fgsl_odeiv_control_init()

integer(fgsl_int) function fgsl_odeiv_control_init | ( | type(fgsl_odeiv_control), intent(in) | c,
|  | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt
| ) |  |

## ◆ fgsl_odeiv_control_name()

character(kind=fgsl_char, len=fgsl_strmax) function fgsl_odeiv_control_name | ( | type(fgsl_odeiv_control), intent(in) | c | ) |

## ◆ fgsl_odeiv_control_scaled_new()

type(fgsl_odeiv_control) function fgsl_odeiv_control_scaled_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt,
|  | real(fgsl_double), dimension(:), intent(in), target, contiguous | scale_abs
| ) |  |

## ◆ fgsl_odeiv_control_standard_new()

type(fgsl_odeiv_control) function fgsl_odeiv_control_standard_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel,
|  | real(fgsl_double), intent(in) | a_y,
|  | real(fgsl_double), intent(in) | a_dydt
| ) |  |

## ◆ fgsl_odeiv_control_status()

logical function fgsl_odeiv_control_status | ( | type(fgsl_odeiv_control), intent(in) | s | ) |

## ◆ fgsl_odeiv_control_y_new()

type(fgsl_odeiv_control) function fgsl_odeiv_control_y_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel
| ) |  |

## ◆ fgsl_odeiv_control_yp_new()

type(fgsl_odeiv_control) function fgsl_odeiv_control_yp_new | ( | real(fgsl_double), intent(in) | eps_abs,
|  | real(fgsl_double), intent(in) | eps_rel
| ) |  |

## ◆ fgsl_odeiv_evolve_alloc()

type(fgsl_odeiv_evolve) function fgsl_odeiv_evolve_alloc | ( | integer(fgsl_size_t), intent(in) | dim | ) |

## ◆ fgsl_odeiv_evolve_apply()

integer(fgsl_int) function fgsl_odeiv_evolve_apply | ( | type(fgsl_odeiv_evolve), intent(inout) | e,
|  | type(fgsl_odeiv_control), intent(inout) | con,
|  | type(fgsl_odeiv_step), intent(inout) | step,
|  | type(fgsl_odeiv_system), intent(in) | dydt,
|  | real(fgsl_double), intent(inout) | t,
|  | real(fgsl_double), intent(in) | t1,
|  | real(fgsl_double), intent(inout) | h,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | y
| ) |  |

## ◆ fgsl_odeiv_evolve_free()

subroutine fgsl_odeiv_evolve_free | ( | type(fgsl_odeiv_evolve), intent(inout) | s | ) |

## ◆ fgsl_odeiv_evolve_reset()

integer(c_int) function fgsl_odeiv_evolve_reset | ( | type(fgsl_odeiv_evolve), intent(inout) | s | ) |

## ◆ fgsl_odeiv_evolve_status()

logical function fgsl_odeiv_evolve_status | ( | type(fgsl_odeiv_evolve), intent(in) | s | ) |

## ◆ fgsl_odeiv_step_alloc()

type(fgsl_odeiv_step) function fgsl_odeiv_step_alloc | ( | type(fgsl_odeiv_step_type), intent(in) | t,
|  | integer(fgsl_size_t), intent(in) | dim
| ) |  |

## ◆ fgsl_odeiv_step_apply()

integer(fgsl_int) function fgsl_odeiv_step_apply | ( | type(fgsl_odeiv_step), intent(in) | s,
|  | real(fgsl_double), intent(in) | t,
|  | real(fgsl_double), intent(in) | h,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | y,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | yerr,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | dydt_in,
|  | real(fgsl_double), dimension(:), intent(inout), target, contiguous | dydt_out,
|  | type(fgsl_odeiv_system), intent(in) | dydt
| ) |  |

## ◆ fgsl_odeiv_step_free()

subroutine fgsl_odeiv_step_free | ( | type(fgsl_odeiv_step), intent(inout) | s | ) |

## ◆ fgsl_odeiv_step_name()

character(kind=fgsl_char, len=fgsl_strmax) function fgsl_odeiv_step_name | ( | type(fgsl_odeiv_step), intent(in) | s | ) |

## ◆ fgsl_odeiv_step_order()

integer(fgsl_int) function fgsl_odeiv_step_order | ( | type(fgsl_odeiv_step), intent(in) | s | ) |

## ◆ fgsl_odeiv_step_reset()

integer(fgsl_int) function fgsl_odeiv_step_reset | ( | type(fgsl_odeiv_step), intent(inout) | s | ) |

## ◆ fgsl_odeiv_step_status()

logical function fgsl_odeiv_step_status | ( | type(fgsl_odeiv_step), intent(in) | s | ) |

## ◆ fgsl_odeiv_system_free()

subroutine fgsl_odeiv_system_free | ( | type(fgsl_odeiv_system), intent(inout) | system | ) |

## ◆ fgsl_odeiv_system_init()

type(fgsl_odeiv_system) function fgsl_odeiv_system_init | ( |  | func,
|  | integer(fgsl_size_t) | dimension,
|  | type(c_ptr), intent(in), optional | params,
|  | optional | jacobian
| ) |  |

Constructor for an ODE system object.

Parameters

  func | - interface for a double precision vector valued function with derivatives and a parameter of arbitrary type
  dimension | - number of components of the vector function
  params | - parameter of arbitrary type
  jacobian | - interface for the jacobian of func

Returns
  ODE system object.

## ◆ fgsl_odeiv_system_status()

logical function fgsl_odeiv_system_status | ( | type(fgsl_odeiv_system), intent(in) | s | ) |