Bessel Functions
================

Regular Cylindrical Bessel Functions
------------------------------------

 -- Function: int gsl_sf_bessel_J0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_J0_e (double x, gsl_sf_result * result)
     Exceptional Return Values: none

 -- Function: int gsl_sf_bessel_J1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_J1_e (double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Jn_impl (int n, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Jn_e (int n, double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Jn_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_Jn_array_e (int nmin, int nmax, double x, double * result_array)
     Conditions: nmin <= n <= nmax Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

Irregular Cylindrical Bessel Functions
--------------------------------------

 -- Function: int gsl_sf_bessel_Y0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Y0_e (double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Y1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Y1_e (double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Yn_impl (int n,double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Yn_e (int n,double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Yn_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_Yn_array_e (int nmin, int nmax, double x, double * result_array)
     Domain: x > 0.0 Conditions: nmin <= n <= nmax Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

Regular Modified Cylindrical Bessel Functions
---------------------------------------------

 -- Function: int gsl_sf_bessel_I0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_I0_e (double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EOVRFLW

 -- Function: int gsl_sf_bessel_I1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_I1_e (double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_In_impl (int n, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_In_e (int n, double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_In_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_In_array_e (int nmin, int nmax, double x, double * result_array)
     Domain: nmin >=0, nmax >= nmin Conditions: n=nmin,...,nmax, nmin >=0, nmax >= nmin Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_I0_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_I0_scaled_e (double x, gsl_sf_result * result)
      \exp(-|x|) I_0(x) Exceptional Return Values: none

 -- Function: int gsl_sf_bessel_I1_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_I1_scaled_e (double x, gsl_sf_result * result)
      exp(-|x|) I_1(x) Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_In_scaled_impl (int n, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_In_scaled_e (int n, double x, gsl_sf_result * result)
      exp(-|x|) I_n(x) Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_In_scaled_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_In_scaled_array_e (int nmin, int nmax, double x, double * result_array)
      exp(-|x|) I_n(x) Domain: nmin >=0, nmax >= nmin Conditions:  n=nmin,...,nmax Exceptional Return Values: GSL_EUNDRFLW

Irregular Modified Cylindrical Bessel Functions
-----------------------------------------------

 -- Function: int gsl_sf_bessel_K0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_K0_e (double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_K1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_K1_e (double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Kn_impl (int n, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Kn_e (int n, double x, gsl_sf_result * result)
     Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Kn_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_Kn_array_e (int nmin, int nmax, double x, double * result_array)
     Conditions: n=nmin,...,nmax Domain: x > 0.0, nmin >=0, nmax >= nmin Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_K0_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_K0_scaled_e (double x, gsl_sf_result * result)
      exp(x) K_0(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM

 -- Function: int gsl_sf_bessel_K1_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_K1_scaled_e (double x, gsl_sf_result * result)
      exp(x) K_1(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Kn_scaled_impl (int n, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Kn_scaled_e (int n, double x, gsl_sf_result * result)
      exp(x) K_n(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_Kn_scaled_array_impl (int nmin, int nmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_Kn_scaled_array_e (int nmin, int nmax, double x, double * result_array)
      exp(x) K_n(x) Domain: x > 0.0, nmin >=0, nmax >= nmin Conditions: n=nmin,...,nmax Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

Regular Spherical Bessel Functions
----------------------------------

 -- Function: int gsl_sf_bessel_j0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_j0_e (double x, gsl_sf_result * result)
      j_0(x) = sin(x)/x Exceptional Return Values: none

 -- Function: int gsl_sf_bessel_j1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_j1_e (double x, gsl_sf_result * result)
      j_1(x) = (sin(x)/x - cos(x))/x Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_j2_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_j2_e (double x, gsl_sf_result * result)
      j_2(x) = ((3/x^2 - 1)sin(x) - 3cos(x)/x)/x Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_jl_impl (int l, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_jl_e (int l, double x, gsl_sf_result * result)
     Domain: l >= 0, x >= 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_jl_array_impl (int lmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_jl_array_e (int lmax, double x, double * result_array)
     Domain: lmax >= 0 Conditions: l=0,1,...,lmax Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_jl_steed_array_impl (int lmax, double x, double * jl_x_array)
     Uses Steed's method. Domain: lmax >= 0 Conditions: l=0,1,...,lmax Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

Irregular Spherical Bessel Functions
------------------------------------

 -- Function: int gsl_sf_bessel_y0_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_y0_e (double x, gsl_sf_result * result)
     Exceptional Return Values: none

 -- Function: int gsl_sf_bessel_y1_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_y1_e (double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_y2_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_y2_e (double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_yl_impl (int l, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_yl_e (int l, double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_yl_array_impl (int lmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_yl_array_e (int lmax, double x, double * result_array)
     Domain: lmax >= 0 Conditions: l=0,1,...,lmax Exceptional Return Values: GSL_EUNDRFLW

Regular Modified Spherical Bessel Functions
-------------------------------------------

 i_l(x) = Sqrt[Pi/(2x)] BesselI[l+1/2,x]

 -- Function: int gsl_sf_bessel_i0_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_i0_scaled_e (double x, gsl_sf_result * result)
      exp(-|x|) i_0(x) Exceptional Return Values: none

 -- Function: int gsl_sf_bessel_i1_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_i1_scaled_e (double x, gsl_sf_result * result)
      exp(-|x|) i_1(x) Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_i2_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_i2_scaled_e (double x, gsl_sf_result * result)
      exp(-|x|) i_2(x) Exceptional Return Values: GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_il_scaled_impl (int l, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_il_scaled_e (int l, double x, gsl_sf_result * result)
      exp(-|x|) i_l(x) Domain: l >= 0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_il_scaled_array_impl (int lmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_il_scaled_array_e (int lmax, double x, double * result_array)
      exp(-|x|) i_l(x) Domain: lmax >= 0 Conditions: l=0,1,...,lmax Exceptional Return Values: GSL_EUNDRFLW

Irregular Modified Spherical Bessel Functions
---------------------------------------------

 k_l(x) = Sqrt[Pi/(2x)] BesselK[l+1/2,x]

 -- Function: int gsl_sf_bessel_k0_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_k0_scaled_e (double x, gsl_sf_result * result)
      Exp[x] k_0(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_k1_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_k1_scaled_e (double x, gsl_sf_result * result)
      exp(x) k_1(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW

 -- Function: int gsl_sf_bessel_k2_scaled_impl (double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_k2_scaled_e (double x, gsl_sf_result * result)
      exp(x) k_2(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW

 -- Function: int gsl_sf_bessel_kl_scaled_impl (int l, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_kl_scaled_e (int l, double x, gsl_sf_result * result)
      exp(x) k_l(x) Domain: x > 0.0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_kl_scaled_array_impl (int lmax, double x, double * result_array)
 -- Function: int gsl_sf_bessel_kl_scaled_array_e (int lmax, double x, double * result_array)
      exp(x) k_l(x) Domain: lmax >= 0 Conditions: l=0,1,...,lmax Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

Regular Bessel Function, Fractional Order
-----------------------------------------

 -- Function: int gsl_sf_bessel_Jnu_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Jnu_e (double nu, double x, gsl_sf_result * result)
     Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_sequence_Jnu_impl (double nu, gsl_mode_t mode, size_t size, double * v)
 -- Function: int gsl_sf_bessel_sequence_Jnu_e (double nu, gsl_mode_t mode, size_t size, double * v)
     Regular cylindrical Bessel function J_nu(x) evaluated at a series of x values. The array contains the x values. They are assumed to be strictly ordered and positive. The array is over-written with the values of J_nu(x_i). Exceptional Return Values: GSL_EDOM, GSL_EINVAL

Irregular Bessel Functions, Fractional Order
--------------------------------------------

 -- Function: int gsl_sf_bessel_Ynu_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Ynu_e (double nu, double x, gsl_sf_result * result)
     Exceptional Return Values:

Regular Modified Bessel Functions, Fractional Order
---------------------------------------------------

 -- Function: int gsl_sf_bessel_Inu_scaled_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Inu_scaled_e (double nu, double x, gsl_sf_result * result)
      exp(-|x|) BesselI[nu, x] Domain: x >= 0, nu >= 0 Exceptional Return Values: GSL_EDOM

 -- Function: int gsl_sf_bessel_Inu_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Inu_e (double nu, double x, gsl_sf_result * result)
      BesselI[nu, x] Domain: x >= 0, nu >= 0 Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW

Irregular Modified Bessel Functions, Fractional Order
-----------------------------------------------------

 -- Function: int gsl_sf_bessel_Knu_scaled_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Knu_scaled_e (double nu, double x, gsl_sf_result * result)
      Exp[+|x|] BesselK[nu, x] Domain: x > 0, nu >= 0 Exceptional Return Values: GSL_EDOM

 -- Function: int gsl_sf_bessel_Knu_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_Knu_e (double nu, double x, gsl_sf_result * result)
      BesselK[nu, x] Domain: x > 0, nu >= 0 Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW

 -- Function: int gsl_sf_bessel_lnKnu_impl (double nu, double x, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_lnKnu_e (double nu, double x, gsl_sf_result * result)
      Log[BesselK[nu, x]] Domain: x > 0, nu >= 0 Exceptional Return Values: GSL_EDOM

Zeros of Regular Bessel Functions
---------------------------------

 -- Function: int gsl_sf_bessel_zero_J0_impl (int s, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_zero_J0_e (int s, gsl_sf_result * result)
     s'th positive zero of the Bessel function J_0(x). Exceptional Return Values:

 -- Function: int gsl_sf_bessel_zero_J1_impl (int s, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_zero_J1_e (int s, gsl_sf_result * result)
     s'th positive zero of the Bessel function J_1(x). Exceptional Return Values:

 -- Function: int gsl_sf_bessel_zero_Jnu_impl (double nu, int s, gsl_sf_result * result)
 -- Function: int gsl_sf_bessel_zero_Jnu_e (double nu, int s, gsl_sf_result * result)
     s'th positive zero of the Bessel function J_nu(x). Exceptional Return Values: