gives the Bessel function of the first kind .


  • Mathematical function, suitable for both symbolic and numerical manipulation.
  • satisfies the differential equation .
  • BesselJ[n,z] has a branch cut discontinuity in the complex z plane running from to .
  • FullSimplify and FunctionExpand include transformation rules for BesselJ.
  • For certain special arguments, BesselJ automatically evaluates to exact values.
  • BesselJ can be evaluated to arbitrary numerical precision.
  • BesselJ automatically threads over lists.


open allclose all

Basic Examples  (5)

Evaluate numerically:

Plot over a subset of the reals:

Plot over a subset of the complexes:

Series expansion at the origin:

Series expansion at Infinity:

Scope  (44)

Numerical Evaluation  (5)

Evaluate numerically:

Evaluate to high precision:

The precision of the output tracks the precision of the input:

Evaluate for complex arguments and parameters:

Evaluate BesselJ efficiently at high precision:

Elementwise threading over lists and matrices:

Specific Values  (3)

For half-integer orders, BesselJ evaluates to elementary functions:

Limiting value at infinity:

The first three zeros of TemplateBox[{0, x}, BesselJ]:

Find the first positive zero of TemplateBox[{0, x}, BesselJ] using Solve:

Visualize the result:

Visualization  (4)

Plot the BesselJ function for integer () and half-integer () orders:

Plot the real and imaginary parts of the BesselJ function for half-integer orders:

Plot the real part of :

Plot the imaginary part of :

Plot the real part of :

Plot the imaginary part of :

Function Properties  (5)

is defined for all real and complex values:

is defined for all real values greater than 0:

Complex domain is the whole plane except :

Approximate function range of :

Approximate function range of :

For integer , TemplateBox[{n, z}, BesselJ] is an even or odd function in depending on whether is even or odd:

This can be expressed as TemplateBox[{n, z}, BesselJ]=(-1)^n TemplateBox[{n, {-, z}}, BesselJ]:

TraditionalForm formatting:

Differentiation  (3)

First derivative:

Higher derivatives:

Plot higher derivatives for integer and half-integer orders:

Formula for the ^(th) derivative:

Integration  (5)

Compute the indefinite integral of BesselJ using Integrate:

Indefinite integral of an expression involving BesselJ:

Definite integral:

Definite integral of over an interval centered at the origin is 0:

Definite integral of (even integrand) over an interval centered at the origin:

This is twice the integral over half the interval:

Series Expansions  (6)

Taylor expansion for around :

Plot the first three approximations for around :

General term in the series expansion of BesselJ:

Series expansion for around :

Plot the first three approximations for around :

Asymptotic approximation of BesselJ:

Taylor expansion at a generic point:

BesselJ can be applied to a power series:

Integral Transforms  (4)

Compute a Fourier transform using FourierTransform:




Function Identities and Simplifications  (4)

Use FullSimplify to simplify Bessel functions:

Verify the identity TemplateBox[{{n, -, 1}, z}, BesselJ] TemplateBox[{{-, n}, z}, BesselJ]+TemplateBox[{{1, -, n}, z}, BesselJ] TemplateBox[{n, z}, BesselJ]=(2 sin(pi n))/(pi z):

Recurrence relations z (TemplateBox[{{n, -, 1}, z}, BesselJ] + TemplateBox[{{n, +, 1}, z}, BesselJ])=2 n J_n(z):

For integer and arbitrary fixed , TemplateBox[{{-, n}, z}, BesselJ]=(-1)^n TemplateBox[{n, z}, BesselJ]:

Function Representations  (5)

Representation through BesselI:

Series representation:

Integral representation:

Representation in terms of MeijerG:

Representation in terms of DifferenceRoot:

Applications  (3)

Solve the Bessel differential equation:

Intensity of the Fraunhofer diffraction pattern of a circular aperture versus diffraction angle:

Approximate solution of Kepler's equation as a truncated Fourier sine series:

Exact solution:

Plot the difference between solutions:

Properties & Relations  (5)

Use FullSimplify to simplify Bessel functions:

Sum and Integrate can produce BesselJ:

Find limits of expressions involving BesselJ:

BesselJ can be represented as a DifferentialRoot:

The exponential generating function for BesselJ:

Possible Issues  (1)

With numeric arguments, half-integer Bessel functions are not automatically evaluated:

For symbolic arguments they are:

This can lead to major inaccuracies in machine-precision evaluation:

Introduced in 1988
Updated in 1999