IMSL C# Numerical Library

Bessel.J Method (Double, Double, Int32)

Evaluate a sequence of Bessel functions of the first kind with real order and real positive argument.

public static double[] J(
   double xnu,
   double x,
   int n
);

Parameters

xnu
A double representing the lowest order desired. xnu must be at least zero and less than 1.
x
A double representing the argument for which the sequence of Bessel functions is to be evaluated.
n
A int representing the order of the last element in the sequence. If order is the highest order desired, set n to int(order).

Return Value

A double array of length n+1 containing the values of the function through the series. Bessel.J[I] contains the value of the Bessel function of order I + v at x for I=0 to n.

Remarks

The Bessel function J_v (x), is defined to be

J_\nu  (x) = {{(x/2)^\nu  } \over {\sqrt 
            \pi \Gamma (\nu  + 1/2)}}\int_0^\pi  {\,\,\cos \left( {x\,\cos 
            \,\theta } \right)\sin ^{2\nu } \theta \,\,d\,\theta }

This code is based on the work of Gautschi (1964) and Skovgaard (1975). It uses backward recursion.

See Also

Bessel Class | Imsl.Math Namespace | Bessel.J Overload List