Bessel function of the first kind, with order one.

You're viewing an older version of this page (#142). View the current version.

View versions (1)

Interface

#include <codecogs/maths/special/bessel/j/j1.h>

using namespace Maths::Special::Bessel::J;

Returns the modified Bessel function of the first kind, with order one.

The domain is divided into the intervals [0, 8] and [8, infinity]. In the first interval a 24 term Chebyshev expansion is used. In the second, the asymptotic trigonometric representation is employed using two rational functions of degree 5/5.

See also J

Accuracy:

<pre> Relative error: arithmetic domain # trials peak rms DEC 0, 30 10000 4.0e-17 1.1e-17 IEEE 0, 30 30000 2.6e-16 1.1e-16 </pre>

Example:

#include <stdio.h>
#include <codecogs/maths/special/bessel/j/j1.h>
int main()
{
  using namespace Maths::Special::Bessel::J;
  for(double x=0; x<6; x+=1)
  {
    double y=J1(x);
    printf("\n J1(%.1lf)=%lf", x,y);
  }
  return 0;
}

Output:

J1(0.0)=0.000000
J1(1.0)=0.440051
J1(2.0)=0.576725
J1(3.0)=0.339059
J1(4.0)=-0.066043
J1(5.0)=-0.327579

References

Cephes Math Library Release 2.8: June, 2000

Parameters

x
input argument
GPL Licence — free for non commercial use. See Licence details.

Interactive Calculator

x
Result