I have forgotten
my Password

Or login with:

  • Facebookhttp://facebook.com/
  • Googlehttps://www.google.com/accounts/o8/id
  • Yahoohttps://me.yahoo.com
get GPL
COST (GBP)
this unit 5.62
sub units 0.50
+
0
MathsSpecialBesselI

i0

viewed 1906 times and licensed 51 times
Modified Bessel function of the first kind, with order zero and exponential scaling.
Controller: CodeCogs

Dependents

Info

Interface

C++
Excel

Overview

These function return solutions to the Modified Bessel Function of the first kind with zero order.

The differential equation is called the modified Bessel's equation of zero order, with the solution known as the modified Bessel function,

where \inline \Gamma(n) is the gamma function.

I0 Exp

 
doubleI0_expdoublex )
Returns exponentially scaled modified Bessel function of the first kind, with order zero.

The function is defined as \inline  I_0(x) \exp(x) = \exp(-|x|) J_0(i x).

See also Maths/Special/Bessel/I/I

Accuracy:

<pre> Relative error: arithmetic domain # trials peak rms IEEE 0,30 30000 5.4e-16 1.2e-16 </pre>

References:

Cephes Math Library Release 2.8: June, 2000

Example 1

#include <codecogs/maths/special/bessel/i/i0.h>
#include <stdio.h>
 
int main()
{
  using namespace Maths::Special::Bessel::I;
 
  for(double x=0; x<6; x+=1)
  {
    double y=I0_exp(x);
    printf("\n I0_exp(%.1lf)=%lf", x,y);
  }
  return 0;
}
Output:
I0_exp(0.0)=1.000000
I0_exp(1.0)=0.465760
I0_exp(2.0)=0.308508
I0_exp(3.0)=0.243000
I0_exp(4.0)=0.207002
I0_exp(5.0)=0.183541

Parameters

xinput argument

Authors

Stephen L. Moshier. Copyright 1984, 1987, 2000
Documentation by Will Bateman (August 2005)
Source Code

Source code is available when you agree to a GP Licence or buy a Commercial Licence.

Not a member, then Register with CodeCogs. Already a Member, then Login.


I0

 
doubleI0doublex )[inline]
Returns modified Bessel function of order zero of the argument (v=0).

The function is defined as \inline  I_0(x) = J_0(ix).

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

Accuracy:

<pre> Relative error: arithmetic domain # trials peak rms DEC 0,30 6000 8.2e-17 1.9e-17 IEEE 0,30 30000 5.8e-16 1.4e-16 </pre>

Example:

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

Output:

I0(0.0)=1.000000
I0(1.0)=1.266066
I0(2.0)=2.279585
I0(3.0)=4.880793
I0(4.0)=11.301922
I0(5.0)=27.239872

References:

Cephes Math Library Release 2.8: June, 2000

Parameters

xvalue to be transformed.

Authors

Stephen L. Moshier. Copyright 1984, 1987, 2000
Documentation by Will Bateman (August 2005)
Source Code

Source code is available when you agree to a GP Licence or buy a Commercial Licence.

Not a member, then Register with CodeCogs. Already a Member, then Login.