BesselJ¶
Status: Stable
documented, exercised by the test suite and/or worked examples, with no known limitations recorded.
Description¶
BesselJ[n, z]
gives the Bessel function of the first kind J_n(z), a solution of z^2 y'' + z y' + (z^2 - n^2) y = 0 regular at the origin.
D[BesselJ[n, z], z] = (BesselJ[n-1, z] - BesselJ[n+1, z])/2. Listable.
Notes
J\_0(0) = 1, J\_n(0) = 0 for integer n != 0. Has a branch cut along the negative real z axis for non-integer n. Real and complex order and argument evaluate numerically at machine or arbitrary (MPFR) precision;Examples (8)¶
Every input below was run against the current Mathilda build and its output recorded.
Basic examples (2)¶
In[1]:= BesselJ[0, 5.2]
Out[1]= -0.11029
In[2]:= D[BesselJ[n, x], x]
Out[2]= 1/2 (BesselJ[-1 + n, x] - BesselJ[1 + n, x])
Applications (6)¶
In[3]:= BesselJ[0, 0]
Out[3]= 1
In[4]:= BesselJ[1, 0]
Out[4]= 0
In[5]:= BesselJ[1/2, z]
Out[5]= Sin[z] Sqrt[2/(Pi z)]
In[6]:= Series[BesselJ[0, x], {x, 0, 6}]
Out[6]= 1 - 1/4 x^2 + 1/64 x^4 - 1/2304 x^6 + O[x]^7
In[7]:= N[BesselJ[0, 1], 40]
Out[7]= 0.7651976865579665514497175261026632209093
In[8]:= N[BesselJ[0, 10 + 5 I], 30]
Out[8]= -17.78959112945037151834426180967 + 0.2007116167212048509818027697064*I
Performance¶
Against other systems, from the benchmark suite (same input, results cross-checked for agreement):
| case | Mathilda | Wolfram | Python |
|---|---|---|---|
| BesselJ[0, .] over 10^6 | 3.46e+03 s | 1.74e+03 s | 53 s |
| Zeta over 10^6 | 8.17 s | 4.31e+03 s | 5.7 s |
| AiryAi over 10^6 | 3.14 s | 107 s | 58.9 s |
| PolyGamma[0, .] over 10^6 | 1.55 s | 151 s | 8.19 s |
| Gamma over 10^6 | 1.16 s | 1.35 s | 7.34 s |
| Erf over 10^6 | 0.968 s | 1.23 s | 7.43 s |
Implementation notes¶
Attributes: Listable, NumericFunction, Protected.
References¶
See also: BesselY, BesselI, BesselK, N, Gamma, SeriesCoefficient
- Source:
src/info.c - Specification:
docs/spec/builtins/special-functions.md - Tests:
tests/test_besselj.c - Tests:
tests/test_compile.c - Tests:
tests/test_gruntz.c - Tests:
tests/test_integrate_ramanujan.c
Notes & additional examples¶
Notes¶
BesselJ[n, z] is the Bessel function of the first kind, regular at the origin, with J_0(0) = 1 and J_n(0) = 0 for integer n != 0. Real and complex order and argument evaluate at machine or MPFR precision; D[BesselJ[n, z], z] = (BesselJ[n-1, z] - BesselJ[n+1, z])/2. There is a branch cut along the negative real axis for non-integer order. Listable.