### 15.2 Bessel Functions

Function: bessel_j (v, z)

  The Bessel function of the first kind of order v and argument z.

  `bessel_j` is defined as

                      inf
                      ====       k  - v - 2 k  v + 2 k
                      \     (- 1)  2          z
                       >    --------------------------
                      /        k! gamma(v + k + 1)
                      ====
                      k = 0

  although the infinite series is not used for computations.

  ·

  Categories: Bessel functions ·Special functions

Function: bessel_y (v, z)

  The Bessel function of the second kind of order v and argument z.

  `bessel_y` is defined as

                    cos(%pi v) bessel_j(v, z) - bessel_j(-v, z)
                    -------------------------------------------
                                   sin(%pi v)

  when v is not an integer. When v is an integer n, the limit as v approaches n is taken.

  ·

  Categories: Bessel functions ·Special functions

Function: bessel_i (v, z)

  The modified Bessel function of the first kind of order v and argument z.

  `bessel_i` is defined as

                          inf
                          ====   - v - 2 k  v + 2 k
                          \     2          z
                           >    -------------------
                          /     k! gamma(v + k + 1)
                          ====
                          k = 0

  although the infinite series is not used for computations.

  ·

  Categories: Bessel functions ·Special functions

Function: bessel_k (v, z)

  The modified Bessel function of the second kind of order v and argument z.

  `bessel_k` is defined as

                 %pi csc(%pi v) (bessel_i(-v, z) - bessel_i(v, z))
                 -------------------------------------------------
                                        2

  when v is not an integer. If v is an integer n, then the limit as v approaches n is taken.

  ·

  Categories: Bessel functions ·Special functions

Function: hankel_1 (v, z)

  The Hankel function of the first kind of order v and argument z (A&S 9.1.3). `hankel_1` is defined as

         bessel_j(v,z) + %i * bessel_y(v,z)

  Maxima evaluates `hankel_1` numerically for a complex order v and complex argument z in float precision. The numerical evaluation in bigfloat precision is not supported.

  When `besselexpand` is `true`, `hankel_1` is expanded in terms of elementary functions when the order v is half of an odd integer. See `besselexpand`.

  Maxima knows the derivative of `hankel_1` wrt the argument z.

  Examples:

  Numerical evaluation:

      (%i1) hankel_1(1,0.5);
      (%o1)        0.24226845767487 - 1.471472392670243 %i

      (%i2) hankel_1(1,0.5+%i);
      (%o2)       - 0.25582879948621 %i - 0.23957560188301

  Expansion of `hankel_1` when `besselexpand` is `true`:

      (%i1) hankel_1(1/2,z),besselexpand:true;
                     sqrt(2) sin(z) - sqrt(2) %i cos(z)
      (%o1)          ----------------------------------
                             sqrt(%pi) sqrt(z)

  Derivative of `hankel_1` wrt the argument z. The derivative wrt the order v is not supported. Maxima returns a noun form:

      (%i1) diff(hankel_1(v,z),z);
                   hankel_1(v - 1, z) - hankel_1(v + 1, z)
      (%o1)        ---------------------------------------
                                      2

      (%i2) diff(hankel_1(v,z),v);
                             d
      (%o2)                  -- (hankel_1(v, z))
                             dv

  ·

  Categories: Bessel functions ·Special functions

Function: hankel_2 (v, z)

  The Hankel function of the second kind of order v and argument z (A&S 9.1.4). `hankel_2` is defined as

         bessel_j(v,z) - %i * bessel_y(v,z)

  Maxima evaluates `hankel_2` numerically for a complex order v and complex argument z in float precision. The numerical evaluation in bigfloat precision is not supported.

  When `besselexpand` is `true`, `hankel_2` is expanded in terms of elementary functions when the order v is half of an odd integer. See `besselexpand`.

  Maxima knows the derivative of `hankel_2` wrt the argument z.

  For examples see `hankel_1`.

  ·

  Categories: Bessel functions ·Special functions

Option variable: besselexpand

  Default value: `false`

  Controls expansion of the Bessel functions when the order is half of an odd integer. In this case, the Bessel functions can be expanded in terms of other elementary functions. When `besselexpand` is `true`, the Bessel function is expanded.

      (%i1) besselexpand: false$
      (%i2) bessel_j (3/2, z);
                                          3
      (%o2)                      bessel_j(-, z)
                                          2
      (%i3) besselexpand: true$
      (%i4) bessel_j (3/2, z);
                                              sin(z)   cos(z)
                             sqrt(2) sqrt(z) (------ - ------)
                                                 2       z
                                                z
      (%o4)                  ---------------------------------
                                         sqrt(%pi)

  ·

  Categories: Bessel functions ·Simplification flags and variables ·Special functions

Function: scaled_bessel_i (v, z)

  The scaled modified Bessel function of the first kind of order v and argument z. That is, scaled\_bessel_i(v,z) = exp(-abs(z))*bessel_i(v, z). This function is particularly useful for calculating bessel_i for large z, which is large. However, maxima does not otherwise know much about this function. For symbolic work, it is probably preferable to work with the expression `exp(-abs(z))*bessel_i(v, z)`.

  ·

  Categories: Bessel functions

Function: scaled_bessel_i0 (z)

  Identical to `scaled_bessel_i(0,z)`.

  ·

  Categories: Bessel functions ·Special functions

Function: scaled_bessel_i1 (z)

  Identical to `scaled_bessel_i(1,z)`.

  ·Bessel functions ·Special functions

Function: %s [u,v] (z)

  Lommel’s little s[u,v](z) function. Probably Gradshteyn & Ryzhik 8.570.1.

  ·Bessel functions ·Special functions