Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
bessel.h File Reference

Integer-order cylindrical Bessel J_n helpers for beam-style operators. More...

Go to the source code of this file.

Functions

double sim_bessel_j0_f64 (double x)
 Cylindrical Bessel J_0(x) for double-precision real x.
 
double sim_bessel_j1_f64 (double x)
 Cylindrical Bessel J_1(x) for double-precision real x.
 
double sim_bessel_jn_f64 (int order, double x)
 Cylindrical Bessel J_n(x) for integer order n and double-precision real x.
 
float sim_bessel_jn_f32 (int order, float x)
 Cylindrical Bessel J_n(x) for integer order n and single-precision real x.
 

Detailed Description

Integer-order cylindrical Bessel J_n helpers for beam-style operators.

The implementation combines:

  • A convergent power series for moderate arguments.
  • Large-argument asymptotics for oscillatory tails.
  • Integer-order parity handling for negative orders and arguments.

This keeps common Bessel-beam style operators self-contained without relying on platform-specific special-function extensions.

Function Documentation

◆ sim_bessel_j0_f64()

double sim_bessel_j0_f64 ( double  x)

Cylindrical Bessel J_0(x) for double-precision real x.

Parameters
xReal argument.
Returns
Approximate J_0(x).

◆ sim_bessel_j1_f64()

double sim_bessel_j1_f64 ( double  x)

Cylindrical Bessel J_1(x) for double-precision real x.

Parameters
xReal argument.
Returns
Approximate J_1(x).

◆ sim_bessel_jn_f32()

float sim_bessel_jn_f32 ( int  order,
float  x 
)

Cylindrical Bessel J_n(x) for integer order n and single-precision real x.

Parameters
orderInteger Bessel order.
xReal argument.
Returns
Approximate J_order(x) rounded to float.

◆ sim_bessel_jn_f64()

double sim_bessel_jn_f64 ( int  order,
double  x 
)

Cylindrical Bessel J_n(x) for integer order n and double-precision real x.

Parameters
orderInteger Bessel order.
xReal argument.
Returns
Approximate J_order(x).