Module Gsl.Interp

Interpolation

type t
type accel
type interp_type =
| LINEAR
| POLYNOMIAL
| CSPLINE
| CSPLINE_PERIODIC
| AKIMA
| AKIMA_PERIODIC
val make : interp_type ‑> int ‑> t
val init : t ‑> float array ‑> float array ‑> unit
external name : t ‑> string = "ml_gsl_interp_name"
external min_size : t ‑> int = "ml_gsl_interp_min_size"
val make_accel : unit ‑> accel
external i_eval : t ‑> float array ‑> float array ‑> float ‑> accel ‑> float = "ml_gsl_interp_eval"
external i_eval_deriv : t ‑> float array ‑> float array ‑> float ‑> accel ‑> float = "ml_gsl_interp_eval_deriv"
external i_eval_deriv2 : t ‑> float array ‑> float array ‑> float ‑> accel ‑> float = "ml_gsl_interp_eval_deriv2"
external i_eval_integ : t ‑> float array ‑> float array ‑> float ‑> float ‑> accel ‑> float = "ml_gsl_interp_eval_integ_bc" "ml_gsl_interp_eval_integ"

Higher level functions

type interp = {
interp : t;
accel : accel;
xa : float array;
ya : float array;
size : int;
i_type : interp_type;
}
val make_interp : interp_type ‑> float array ‑> float array ‑> interp
val eval : interp ‑> float ‑> float
external eval_array : interp ‑> float array ‑> float array ‑> unit = "ml_gsl_interp_eval_array"

eval_array interp x_a y_a fills the array y_a with the evaluation of the interpolation function interp for each point of array x_a. x_a and y_a must have the same length.

val eval_deriv : interp ‑> float ‑> float
val eval_deriv2 : interp ‑> float ‑> float
val eval_integ : interp ‑> float ‑> float ‑> float