package gsl

  1. Overview
  2. Docs

Ordinary Differential Equations

type system
val make_system : (float -> float array -> float array -> unit) -> ?jac:(float -> float array -> Matrix.matrix -> float array -> unit) -> int -> system
type step
type step_kind =
  1. | RK2
  2. | RK4
  3. | RKF45
  4. | RKCK
  5. | RK8PD
  6. | RK2IMP
  7. | RK2SIMP
  8. | RK4IMP
  9. | BSIMP
  10. | GEAR1
  11. | GEAR2
val make_step : step_kind -> dim:int -> step
val step_reset : step -> unit
val step_name : step -> string
val step_order : step -> int
val step_apply : step -> t:float -> h:float -> y:float array -> yerr:float array -> ?dydt_in:float array -> ?dydt_out:float array -> system -> unit
type control
val make_control_standard_new : eps_abs:float -> eps_rel:float -> a_y:float -> a_dydt:float -> control
val make_control_y_new : eps_abs:float -> eps_rel:float -> control
val make_control_yp_new : eps_abs:float -> eps_rel:float -> control
val make_control_scaled_new : eps_abs:float -> eps_rel:float -> a_y:float -> a_dydt:float -> scale_abs:float array -> control
val control_name : control -> string
type hadjust =
  1. | HADJ_DEC
  2. | HADJ_NIL
  3. | HADJ_INC
val control_hadjust : control -> step -> y:float array -> yerr:float array -> dydt:float array -> h:float -> hadjust * float
type evolve
val make_evolve : int -> evolve
val evolve_reset : evolve -> unit
val evolve_apply : evolve -> control -> step -> system -> t:float -> t1:float -> h:float -> y:float array -> float * float