Evaluates a sequence of modified Bessel functions of the first kind with real order and real argument.

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
public static double[] I(
	double xnu,
	double x,
	int n
)
Visual Basic (Declaration)
Public Shared Function I ( _
	xnu As Double, _
	x As Double, _
	n As Integer _
) As Double()
Visual C++
public:
static array<double>^ I(
	double xnu, 
	double x, 
	int n
)

Parameters

xnu
Type: System..::.Double
A double representing the lowest order desired. xnu must be at least zero and less than 1.
x
Type: System..::.Double
A double representing the argument of the Bessel functions to be evaluated.
n
Type: System..::.Int32
The int order of the last element in the sequence.

Return Value

A double array of length n + 1 containing the values of the function through the series.

Remarks

Bessel.I[i] contains the value of the Bessel function of order i+xnu.

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

I_\nu  (x) = {1 \over \pi }\int_0^\pi 
            {e^{x\cos \theta } } \cos (\nu \theta )d\,\theta  - {{\sin (\nu \pi 
            )} \over \pi }\int_0^\infty  {e^{ - x\cosh t - vt} } dt

Here, argument xnu is represented by \nu in the above equation.

The input x must be nonnegative and less than or equal to log(b) (b is the largest representable number). The argument \nu = xnu must satisfy {\rm{0 
            }} \le {\rm{ }}\nu {\rm{ }} \le {\rm{ 1}}.

This function is based on a code due to Cody (1983), which uses backward recursion.

See Also