Next: , Previous: , Up: Special Functions   [Contents][Index]

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.

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.

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.

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.

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
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.

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)
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).

Function: scaled_bessel_i1 (z)

Identical to scaled_bessel_i(1,z).

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

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


Next: , Previous: , Up: Special Functions   [Contents][Index]