## Class Bessel

• public class Bessel
extends Object
Bessel and Airy functions.
• ### Field Summary

Fields
Modifier and Type Field Description
protected static double[] A_i0
Chebyshev coefficients for exp(-x) I0(x) in the interval [0,8].
protected static double[] A_i1
Chebyshev coefficients for exp(-x) I1(x) / x in the interval [0,8].
protected static double[] A_k0
COEFFICIENTS FOR METHODS k0, k0e *
protected static double[] A_k1
COEFFICIENTS FOR METHODS k1, k1e *
protected static double[] B_i0
Chebyshev coefficients for exp(-x) sqrt(x) I0(x) in the inverted interval [8,infinity].
protected static double[] B_i1
protected static double[] B_k0
protected static double[] B_k1
protected static double big
protected static double biginv
protected static double LOGPI
protected static double MACHEP
protected static double MAXGAM
protected static double MAXLOG
protected static double MINLOG
protected static double SQRTH
protected static double SQTPI
• ### Constructor Summary

Constructors
Modifier Constructor Description
protected  Bessel()
Makes this class non instantiable, but still let's others inherit from it.
• ### Method Summary

All Methods
Modifier and Type Method Description
static double i0​(double x)
Returns the modified Bessel function of order 0 of the argument.
static double i0e​(double x)
Returns the exponentially scaled modified Bessel function of order 0 of the argument.
static double i1​(double x)
Returns the modified Bessel function of order 1 of the argument.
static double i1e​(double x)
Returns the exponentially scaled modified Bessel function of order 1 of the argument.
static double j0​(double x)
Returns the Bessel function of the first kind of order 0 of the argument.
static double j1​(double x)
Returns the Bessel function of the first kind of order 1 of the argument.
static double jn​(int n, double x)
Returns the Bessel function of the first kind of order n of the argument.
static double k0​(double x)
Returns the modified Bessel function of the third kind of order 0 of the argument.
static double k0e​(double x)
Returns the exponentially scaled modified Bessel function of the third kind of order 0 of the argument.
static double k1​(double x)
Returns the modified Bessel function of the third kind of order 1 of the argument.
static double k1e​(double x)
Returns the exponentially scaled modified Bessel function of the third kind of order 1 of the argument.
static double kn​(int nn, double x)
Returns the modified Bessel function of the third kind of order nn of the argument.
static double y0​(double x)
Returns the Bessel function of the second kind of order 0 of the argument.
static double y1​(double x)
Returns the Bessel function of the second kind of order 1 of the argument.
static double yn​(int n, double x)
Returns the Bessel function of the second kind of order n of the argument.
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Field Detail

• #### A_i0

protected static final double[] A_i0
Chebyshev coefficients for exp(-x) I0(x) in the interval [0,8]. lim(x->0){ exp(-x) I0(x) } = 1.
• #### B_i0

protected static final double[] B_i0
Chebyshev coefficients for exp(-x) sqrt(x) I0(x) in the inverted interval [8,infinity]. lim(x->inf){ exp(-x) sqrt(x) I0(x) } = 1/sqrt(2pi).
• #### A_i1

protected static final double[] A_i1
Chebyshev coefficients for exp(-x) I1(x) / x in the interval [0,8]. lim(x->0){ exp(-x) I1(x) / x } = 1/2.
• #### B_i1

protected static final double[] B_i1
• #### A_k0

protected static final double[] A_k0
COEFFICIENTS FOR METHODS k0, k0e *
• #### B_k0

protected static final double[] B_k0
• #### A_k1

protected static final double[] A_k1
COEFFICIENTS FOR METHODS k1, k1e *
• #### B_k1

protected static final double[] B_k1
• #### MACHEP

protected static final double MACHEP
Constant Field Values
• #### MAXLOG

protected static final double MAXLOG
Constant Field Values
• #### MINLOG

protected static final double MINLOG
Constant Field Values
• #### MAXGAM

protected static final double MAXGAM
Constant Field Values
• #### SQTPI

protected static final double SQTPI
Constant Field Values
• #### SQRTH

protected static final double SQRTH
Constant Field Values
• #### LOGPI

protected static final double LOGPI
Constant Field Values
• #### big

protected static final double big
Constant Field Values
• #### biginv

protected static final double biginv
Constant Field Values
• ### Constructor Detail

• #### Bessel

protected Bessel()
Makes this class non instantiable, but still let's others inherit from it.
• ### Method Detail

• #### i0

public static double i0​(double x)
throws ArithmeticException
Returns the modified Bessel function of order 0 of the argument.

The function is defined as i0(x) = j0( ix ).

The range is partitioned into the two intervals [0,8] and (8, infinity). Chebyshev polynomial expansions are employed in each interval.

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### i0e

public static double i0e​(double x)
throws ArithmeticException
Returns the exponentially scaled modified Bessel function of order 0 of the argument.

The function is defined as i0e(x) = exp(-|x|) j0( ix ).

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### i1

public static double i1​(double x)
throws ArithmeticException
Returns the modified Bessel function of order 1 of the argument.

The function is defined as i1(x) = -i j1( ix ).

The range is partitioned into the two intervals [0,8] and (8, infinity). Chebyshev polynomial expansions are employed in each interval.

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### i1e

public static double i1e​(double x)
throws ArithmeticException
Returns the exponentially scaled modified Bessel function of order 1 of the argument.

The function is defined as i1(x) = -i exp(-|x|) j1( ix ).

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### j0

public static double j0​(double x)
throws ArithmeticException
Returns the Bessel function of the first kind of order 0 of the argument.
Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### j1

public static double j1​(double x)
throws ArithmeticException
Returns the Bessel function of the first kind of order 1 of the argument.
Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### jn

public static double jn​(int n,
double x)
throws ArithmeticException
Returns the Bessel function of the first kind of order n of the argument.
Parameters:
n - the order of the Bessel function.
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### k0

public static double k0​(double x)
throws ArithmeticException
Returns the modified Bessel function of the third kind of order 0 of the argument.

The range is partitioned into the two intervals [0,8] and (8, infinity). Chebyshev polynomial expansions are employed in each interval.

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### k0e

public static double k0e​(double x)
throws ArithmeticException
Returns the exponentially scaled modified Bessel function of the third kind of order 0 of the argument.
Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### k1

public static double k1​(double x)
throws ArithmeticException
Returns the modified Bessel function of the third kind of order 1 of the argument.

The range is partitioned into the two intervals [0,2] and (2, infinity). Chebyshev polynomial expansions are employed in each interval.

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### k1e

public static double k1e​(double x)
throws ArithmeticException
Returns the exponentially scaled modified Bessel function of the third kind of order 1 of the argument.

k1e(x) = exp(x) * k1(x).

Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### kn

public static double kn​(int nn,
double x)
throws ArithmeticException
Returns the modified Bessel function of the third kind of order nn of the argument.

The range is partitioned into the two intervals [0,9.55] and (9.55, infinity). An ascending power series is used in the low range, and an asymptotic expansion in the high range.

Parameters:
nn - the order of the Bessel function.
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### y0

public static double y0​(double x)
throws ArithmeticException
Returns the Bessel function of the second kind of order 0 of the argument.
Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### y1

public static double y1​(double x)
throws ArithmeticException
Returns the Bessel function of the second kind of order 1 of the argument.
Parameters:
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error
• #### yn

public static double yn​(int n,
double x)
throws ArithmeticException
Returns the Bessel function of the second kind of order n of the argument.
Parameters:
n - the order of the Bessel function.
x - the value to compute the bessel function of.
Returns:
result
Throws:
ArithmeticException - error