|
Packit |
67cb25 |
.. index:: Airy functions
|
|
Packit |
67cb25 |
.. index:: Ai(x)
|
|
Packit |
67cb25 |
.. index:: Bi(x)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
The Airy functions :math:`Ai(x)` and :math:`Bi(x)` are defined by the
|
|
Packit |
67cb25 |
integral representations,
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. only:: not texinfo
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. math::
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
Ai(x) & = {1\over\pi} \int_0^\infty \cos(t^3/3 + xt ) \,dt \\
|
|
Packit |
67cb25 |
Bi(x) & = {1\over\pi} \int_0^\infty (e^{-t^3/3 + xt} + \sin(t^3/3 + xt)) \,dt
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. only:: texinfo
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
| Ai(x) = (1/\pi) \int_0^\infty \cos((1/3) t^3 + xt) dt
|
|
Packit |
67cb25 |
| Bi(x) = (1/\pi) \int_0^\infty (e^(-(1/3) t^3 + xt) + \sin((1/3) t^3 + xt)) dt
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
For further information see Abramowitz & Stegun, Section 10.4. The Airy
|
|
Packit |
67cb25 |
functions are defined in the header file :file:`gsl_sf_airy.h`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
Airy Functions
|
|
Packit |
67cb25 |
--------------
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Ai (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Ai_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the Airy function :math:`Ai(x)` with an accuracy
|
|
Packit |
67cb25 |
specified by :data:`mode`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Bi (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Bi_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the Airy function :math:`Bi(x)` with an accuracy
|
|
Packit |
67cb25 |
specified by :data:`mode`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Ai_scaled (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Ai_scaled_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute a scaled version of the Airy function
|
|
Packit |
67cb25 |
:math:`S_A(x) Ai(x)`. For :math:`x > 0` the scaling factor :math:`S_A(x)` is
|
|
Packit |
67cb25 |
:math:`\exp(+(2/3) x^{3/2})`,
|
|
Packit |
67cb25 |
and is 1 for :math:`x < 0`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Bi_scaled (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Bi_scaled_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute a scaled version of the Airy function
|
|
Packit |
67cb25 |
:math:`S_B(x) Bi(x)`. For :math:`x > 0` the scaling factor :math:`S_B(x)` is
|
|
Packit |
67cb25 |
:math:`exp(-(2/3) x^{3/2})`, and is 1 for :math:`x < 0`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
Derivatives of Airy Functions
|
|
Packit |
67cb25 |
-----------------------------
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Ai_deriv (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Ai_deriv_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the Airy function derivative :math:`Ai'(x)` with
|
|
Packit |
67cb25 |
an accuracy specified by :data:`mode`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Bi_deriv (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Bi_deriv_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the Airy function derivative :math:`Bi'(x)` with
|
|
Packit |
67cb25 |
an accuracy specified by :data:`mode`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Ai_deriv_scaled (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Ai_deriv_scaled_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the scaled Airy function derivative
|
|
Packit |
67cb25 |
:math:`S_A(x) Ai'(x)`.
|
|
Packit |
67cb25 |
For :math:`x > 0` the scaling factor :math:`S_A(x)` is
|
|
Packit |
67cb25 |
:math:`\exp(+(2/3) x^{3/2})`, and is 1 for :math:`x < 0`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_Bi_deriv_scaled (double x, gsl_mode_t mode)
|
|
Packit |
67cb25 |
int gsl_sf_airy_Bi_deriv_scaled_e (double x, gsl_mode_t mode, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the scaled Airy function derivative
|
|
Packit |
67cb25 |
:math:`S_B(x) Bi'(x)`.
|
|
Packit |
67cb25 |
For :math:`x > 0` the scaling factor :math:`S_B(x)` is
|
|
Packit |
67cb25 |
:math:`exp(-(2/3) x^{3/2})`, and is 1 for :math:`x < 0`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
Zeros of Airy Functions
|
|
Packit |
67cb25 |
-----------------------
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_zero_Ai (unsigned int s)
|
|
Packit |
67cb25 |
int gsl_sf_airy_zero_Ai_e (unsigned int s, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the location of the :data:`s`-th zero of the Airy
|
|
Packit |
67cb25 |
function :math:`Ai(x)`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_zero_Bi (unsigned int s)
|
|
Packit |
67cb25 |
int gsl_sf_airy_zero_Bi_e (unsigned int s, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the location of the :data:`s`-th zero of the Airy
|
|
Packit |
67cb25 |
function :math:`Bi(x)`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
Zeros of Derivatives of Airy Functions
|
|
Packit |
67cb25 |
--------------------------------------
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_zero_Ai_deriv (unsigned int s)
|
|
Packit |
67cb25 |
int gsl_sf_airy_zero_Ai_deriv_e (unsigned int s, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the location of the :data:`s`-th zero of the Airy
|
|
Packit |
67cb25 |
function derivative :math:`Ai'(x)`.
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
.. function:: double gsl_sf_airy_zero_Bi_deriv (unsigned int s)
|
|
Packit |
67cb25 |
int gsl_sf_airy_zero_Bi_deriv_e (unsigned int s, gsl_sf_result * result)
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
These routines compute the location of the :data:`s`-th zero of the Airy
|
|
Packit |
67cb25 |
function derivative :math:`Bi'(x)`.
|