﻿ Bessel Class

# Bessel Class

Bessel functions.
Inheritance Hierarchy
SystemObject
Accord.MathBessel

Namespace:  Accord.Math
Assembly:  Accord.Math (in Accord.Math.dll) Version: 3.8.0
Syntax
`public static class Bessel`

The Bessel type exposes the following members.

Methods
NameDescription
I(Double)
Bessel function of the first kind, of order 1.
I(Int32, Double)
Bessel function of the first kind, of order n.
I0
Bessel function of the first kind, of order 0.
J(Double)
Bessel function of order 1.
J(Int32, Double)
Bessel function of order n.
J0
Bessel function of order 0.
Y(Double)
Bessel function of the second kind, of order 1.
Y(Int32, Double)
Bessel function of the second kind, of order n.
Y0
Bessel function of the second kind, of order 0.
Top
Remarks

Bessel functions, first defined by the mathematician Daniel Bernoulli and generalized by Friedrich Bessel, are the canonical solutions y(x) of Bessel's differential equation.

Bessel's equation arises when finding separable solutions to Laplace's equation and the Helmholtz equation in cylindrical or spherical coordinates. Bessel functions are therefore especially important for many problems of wave propagation and static potentials. In solving problems in cylindrical coordinate systems, one obtains Bessel functions of integer order (α = n); in spherical problems, one obtains half-integer orders (α = n+1/2). For example:

• Electromagnetic waves in a cylindrical waveguide
• Heat conduction in a cylindrical object
• Modes of vibration of a thin circular (or annular) artificial membrane (such as a drum or other membranophone)
• Diffusion problems on a lattice
• Solutions to the radial Schrödinger equation (in spherical and cylindrical coordinates) for a free particle Solving for patterns of acoustical radiation Frequency-dependent friction in circular pipelines

Bessel functions also appear in other problems, such as signal processing (e.g., see FM synthesis, Kaiser window, or Bessel filter).

This class offers implementations of Bessel's first and second kind functions, with special cases for zero and for arbitrary n.

References:

• Cephes Math Library, http://www.netlib.org/cephes/
• Wikipedia contributors, "Bessel function,". Wikipedia, The Free Encyclopedia. Available at: http://en.wikipedia.org/wiki/Bessel_function

Examples
```// Bessel function of order 0
actual = Bessel.J0(1);  //  0.765197686557967
actual = Bessel.J0(5);  // -0.177596771314338

// Bessel function of order n
double j2  = Bessel.J(2, 17.3); // 0.117351128521774
double j01 = Bessel.J(0, 1);    // 0.765197686557967
double j05 = Bessel.J(0, 5);    // -0.177596771314338

// Bessel function of the second kind, of order 0.
double y0 = Bessel.Y0(64);   // 0.037067103232088

// Bessel function of the second kind, of order n.
double y2 = Bessel.Y(2, 4);  // 0.215903594603615
double y0 = Bessel.Y(0, 64); // 0.037067103232088```