E.V.E
v2022.09.01

◆ cyl_bessel_i0

eve::cyl_bessel_i0 = {}
inlineconstexpr

Computes the modified Bessel function of the first kind, \( I_0(x)=\frac1{\pi}\int_{0}^{\pi}e^{x\cos\tau}\,\mathrm{d}\tau\).

It is the solution of \( x^{2}y''+xy'-x^2y=0\) for which \( y(0) = 0\).

Defined in header

#include <eve/module/bessel.hpp>

Callable Signatures

namespace eve
{
template< eve::floating_real_value T >
T cyl_bessel_i0(T x) noexcept;
}
constexpr callable_cyl_bessel_i0_ cyl_bessel_i0
Computes the modified Bessel function of the first kind, .
Definition: cyl_bessel_i0.hpp:53
Definition: all_of.hpp:22

Parameters

Return value

The value of \( \displaystyle I_0(x)=\frac1{\pi}\int_{0}^{\pi}e^{x\cos\tau} \,\mathrm{d}\tau\) is returned.

Example

#include <eve/module/bessel.hpp>
#include <eve/wide.hpp>
#include <iostream>
int main()
{
wide_ft pf = {0.5, -1.5, 0.1, -1.0, 19.0, 25.0, 21.5, 10000.0};
std::cout << "---- simd" << '\n'
<< "<- pf = " << pf << '\n'
<< "-> cyl_bessel_i0(pf) = " << eve::cyl_bessel_i0(pf) << '\n'
;
double xd = -1.0;
std::cout << "---- scalar" << '\n'
<< "<- xd = " << xd << '\n'
<< "-> cyl_bessel_i0(xd) = " << eve::cyl_bessel_i0(xd) << '\n';
return 0;
}
Wrapper for SIMD registers.
Definition: wide.hpp:65