Bessel function

Pierre Fromager 680dadb2b6 doc : Fix equations rendering 1 year ago
assets 39acabf80d doc : Fix equations rendering 1 year ago
src fbaa6238fc doc : README 1 year ago
.gitignore 6cd737bb8f feat : Bessel function 1 year ago
README.md 680dadb2b6 doc : Fix equations rendering 1 year ago
bessel2d.gnuplot f37e5e9233 doc : README 1 year ago
bessel3d.gnuplot f37e5e9233 doc : README 1 year ago

README.md

Bessels

Illustrate spherical Bessel function of first kind with gnuplot.

Bessel functions are canonical solutions y(x) for Bessel differential equation.

Here algorithm implements Frobenius method.

Definition

Bessel differential equation expression :

BesselEqDiff

BesselEq1

BesselEq2

Isolating terms

BesselIsolation

Feature

Cache

  • Factorial lower than 23 into table.
  • Bessels function order from 0 to 6 into data matrix (200 values per order, step 0.1 means 0.0 upto 20.0).

Compile

gcc -g -ggdb3 -std=c17 -Wall -pedantic src/bessel.c -o ./bessel -lm

Run

Usage

./bessel -h

Csv output

./bessel -d1 > bessel.csv

Plot

Dependency

sudo apt install gnuplot

2D

bessel2d

./bessel -d2 > bessel2d.dat && gnuplot ./bessel2d.gnuplot

3D

bessel3d

./bessel -d3 > bessel3d.dat && gnuplot ./bessel3d.gnuplot

Use case

FM bandwidth calculation

Bessel function zeros are exploited in frequency modulated (FM) radio transmission.
FM transmission is mathematically represented by a harmonic distribution of a sine wave carrier
modulated by a sine wave signal which can be represented with Bessel Functions.
The carrier or sideband frequencies disappear when the modulation index
(the peak frequency deviation divided by the modulation frequency)
is equal to the zero crossing of the function for the nth sideband.

Solving the schrodinger equation in cylindrical well