Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Bessel.RawSourceThe Fortran shapes of the sequence routines, argument for argument: you hand them the array and the integer kode, and they hand you back the underflow count. These are what the differential in diff/ compares against the reference Fortran. The rest of the module is already the shape an OCaml caller wants, so it isn't repeated here.
dbesi x alpha kode n y fills y.(0) .. y.(n-1) with the sequence I_(alpha+k)(x) for k = 0 .. n-1, unscaled for kode = 1 and multiplied by exp (-. x) for kode = 2, and returns the number of trailing components set to zero by underflow. Needs x >= 0, alpha >= 0, n >= 1 and kode either 1 or 2; raises Invalid_argument otherwise, and also when kode = 1 and x is large enough to overflow.
dbesj x alpha n y fills y.(0) .. y.(n-1) with the sequence J_(alpha+k)(x) for k = 0 .. n-1, and returns the number of trailing components set to zero by underflow. Needs x >= 0, alpha >= 0 and n >= 1; raises Invalid_argument otherwise.
dbesk x fnu kode n y fills y.(0) .. y.(n-1) with the sequence K_(fnu+k)(x) for k = 0 .. n-1, unscaled for kode = 1 and multiplied by exp x for kode = 2, and returns the number of leading components set to zero by underflow. Needs x > 0, fnu >= 0, n >= 1 and kode either 1 or 2; raises Invalid_argument otherwise, and also when fnu or n is too large, or x too small, for the result to be representable.