Difference between revisions of "Bessel transform"

From TORI
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
'''Bessel Transform''' or BesselTransform, called also '''Hankel transform'''
 
'''Bessel Transform''' or BesselTransform, called also '''Hankel transform'''
   
at order $\nu$ is operator that converts function $f$ to funciton $g=\mathrm{BesselTransform}_\nu(f)$ such that
+
at order \(\nu\) is operator that converts function \(f\) to function \(g=\mathrm{BesselTransform}_\nu(f)\) such that
: $\!\!\!\!\!\!\!\!\!\!\! (1) \displaystyle ~ ~ ~
+
: \(\!\!\!\!\!\!\!\!\!\!\! (1) \displaystyle ~ ~ ~
g ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) f(x) x ~\mathrm d x$
+
g ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) f(x) x ~\mathrm d x\)
where [[BesselJ]]$_\nu$ is the [[Bessel function]], and
+
where [[BesselJ]]\(_\nu\) is the [[Bessel function]], and
$\nu$ is assumed to be real number; in many applications $\nu$ is [[natural number]] or just zero.
+
\(\nu\) is assumed to be real number; in many applications \(\nu\) is [[natural number]] or just zero.
   
 
'''WARNING!''' The formulas of this article are not yet verified with pics,
 
'''WARNING!''' The formulas of this article are not yet verified with pics,
Line 14: Line 14:
 
In publications, it is difficult to see difference between meanings of terms '''Hankel transform''' and '''Bessel transform''' is found. In TORI, in future, these two terms may be used to denote transform with kernels
 
In publications, it is difficult to see difference between meanings of terms '''Hankel transform''' and '''Bessel transform''' is found. In TORI, in future, these two terms may be used to denote transform with kernels
   
$\mathrm{HankelKernel}(p,x)= \frac{1}{2 pi} \mathrm{BesselJ}_\nu(2 \pi px)$
+
\(\mathrm{HankelKernel}(p,x)= \frac{1}{2 pi} \mathrm{BesselJ}_\nu(2 \pi px)\)
   
 
and
 
and
   
$\mathrm{BesselKernel}(p,x)= \mathrm{BesselJ}_\nu(2 \pi px)$
+
\(\mathrm{BesselKernel}(p,x)= \mathrm{BesselJ}_\nu(2 \pi px)\)
   
 
Respectively,
 
Respectively,
   
 
The second iteration of the BesselTransform is [[Identity transform]],
 
The second iteration of the BesselTransform is [[Identity transform]],
id set, $\mathrm{BesselTransform}^2= $[[IdentiryOperator]], and,
+
id set, \(\mathrm{BesselTransform}^2= \)[[IdentiryOperator]], and,
for $f$ and $g$ related with (1), the inverse relation takes place,
+
for \(f\) and \(g\) related with (1), the inverse relation takes place,
: $\!\!\!\!\!\!\!\!\!\!\! (2) \displaystyle ~ ~ ~
+
: \(\!\!\!\!\!\!\!\!\!\!\! (2) \displaystyle ~ ~ ~
f ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) g(x) x ~ \mathrm d x$
+
f ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) g(x) x ~ \mathrm d x\)
   
at least for continuous functions $f$ and $g$.
+
at least for continuous functions \(f\) and \(g\).
   
 
While no unique notations is established, the definition of transform should be supplied at very beginning of each article that use it.
 
While no unique notations is established, the definition of transform should be supplied at very beginning of each article that use it.
   
 
==Discrete Bessel==
 
==Discrete Bessel==
Te discrete analogy of the Bessel transform is defined at an array $f$ of length $N$, and gives array $g=\mathrm{BesselTransform}_{N,\nu}(f)$ with the following formula:
+
Te discrete analogy of the Bessel transform is defined at an array \(f\) of length \(N\), and gives array \(g=\mathrm{BesselTransform}_{N,\nu}(f)\) with the following formula:
: $\!\!\!\!\!\!\!\!\!\!\! (3) \displaystyle ~ ~ ~
+
: \(\!\!\!\!\!\!\!\!\!\!\! (3) \displaystyle ~ ~ ~
g_m = \sum_{n=1}^{N}~ T_{m,n}~ f_n$
+
g_m = \sum_{n=1}^{N}~ T_{m,n}~ f_n\)
with matrix $T$ defined with
+
with matrix \(T\) defined with
: $\!\!\!\!\!\!\!\!\!\!\! (4) \displaystyle ~ ~ ~
+
: \(\!\!\!\!\!\!\!\!\!\!\! (4) \displaystyle ~ ~ ~
 
T_{m,n}=\frac{
 
T_{m,n}=\frac{
 
2~ \mathrm{BesselJ}_{\nu} \left(
 
2~ \mathrm{BesselJ}_{\nu} \left(
Line 49: Line 49:
 
\left| \mathrm{BesselJ}_{\nu+1}(\alpha_{\nu,n}) \right|~
 
\left| \mathrm{BesselJ}_{\nu+1}(\alpha_{\nu,n}) \right|~
 
\alpha_{\nu,N+1}
 
\alpha_{\nu,N+1}
}$
+
}\)
where $\alpha_{\nu,n}$ is $n$th zero of function [[BesselJ]]$_{\nu}$.
+
where \(\alpha_{\nu,n}\) is \(n\)th zero of function [[BesselJ]]\(_{\nu}\).
   
The $n$th element of array $f$ or $g$ corresponds to the function evaluated at point
+
The \(n\)th element of array \(f\) or \(g\) corresponds to the function evaluated at point
$\displaystyle \frac{\alpha_{\nu, n}}{\sqrt{\alpha_{\nu,N+1}}}$
+
\(\displaystyle \frac{\alpha_{\nu, n}}{\sqrt{\alpha_{\nu,N+1}}}\)
   
and scaled with factor $\displaystyle
+
and scaled with factor \(\displaystyle
 
\frac
 
\frac
 
{\alpha_{\nu,N+1}}
 
{\alpha_{\nu,N+1}}
{|J_{\nu+1}(\alpha_{\nu,n})|}$
+
{|J_{\nu+1}(\alpha_{\nu,n})|}\)
   
 
The numerical test is not yet loaded.
 
The numerical test is not yet loaded.
   
 
==Scaling of the argument==
 
==Scaling of the argument==
As in the case of the [[Fourier transform]], the scale of the arguments of the functions $f$ and $g$ can be varied, defining the new function
+
As in the case of the [[Fourier transform]], the scale of the arguments of the functions \(f\) and \(g\) can be varied, defining the new function
$ F(x)=f(x ~ M) M$
+
\( F(x)=f(x ~ M) M\)
 
and
 
and
$ G(x)=g( x / M) /M$
+
\( G(x)=g( x / M) /M\)
where $M$ is real parameter of magnification. Similar scaling can be applied also to the discrete Bessel transform.
+
where \(M\) is real parameter of magnification. Similar scaling can be applied also to the discrete Bessel transform.
   
 
==Scaling of the function==
 
==Scaling of the function==
Line 80: Line 80:
 
==Truncated Hankel transform==
 
==Truncated Hankel transform==
 
The "truncated Hankel transform" called also
 
The "truncated Hankel transform" called also
"finite Hanlel transform" relates functions $f$ and $g$
+
"finite Hanlel transform" relates functions \(f\) and \(g\)
 
such that
 
such that
:$ \displaystyle
+
:\( \displaystyle
 
f(x)=
 
f(x)=
 
\int_0^1 J_m(xy)~ g(y)~y ~\mathrm{d} y
 
\int_0^1 J_m(xy)~ g(y)~y ~\mathrm{d} y
$
+
\)
 
In notations by <ref>
 
In notations by <ref>
 
http://www.math.tuwien.ac.at/~ewa/PDF_Files/Hankel_Transf_Eigenfunctions_Amodioetal
 
http://www.math.tuwien.ac.at/~ewa/PDF_Files/Hankel_Transf_Eigenfunctions_Amodioetal
 
P. Amodio, T. Levitina, G. Settanni, and E. B. Weinmu ̈ller. On the Calculation of the Finite Hankel Transform Eigenfunctions. November 29, 2011
 
P. Amodio, T. Levitina, G. Settanni, and E. B. Weinmu ̈ller. On the Calculation of the Finite Hankel Transform Eigenfunctions. November 29, 2011
 
</ref>,
 
</ref>,
the functions are already multiplied by the square toot of their argument; for example, $T(x)=f(x)\sqrt{x}$.
+
the functions are already multiplied by the square toot of their argument; for example, \(T(x)=f(x)\sqrt{x}\).
   
The corresponding modification of the kernel of the integral transfom, $\mathrm d y$ appears instead of $y\,\mathrm d y$.
+
The corresponding modification of the kernel of the integral transfom, \(\mathrm d y\) appears instead of \(y\,\mathrm d y\).
 
It is not clear which notation is better; so, perhaps, both notations will be used in [[TORI]].
 
It is not clear which notation is better; so, perhaps, both notations will be used in [[TORI]].
   
Line 98: Line 98:
   
 
==Application of the Bessel transform==
 
==Application of the Bessel transform==
The Bessel transform of zero-th order (id set, $\nu=0$ in the formulas above) is useful for the description of propagation of waves with circular (radial) symmetty. <!--in the [[paraxial approximation]] !-->
+
The Bessel transform of zero-th order (id set, \(\nu=0\) in the formulas above) is useful for the description of propagation of waves with circular (radial) symmetty. <!--in the [[paraxial approximation]] !-->
   
 
In particular this method could bemused for the precise numerical testing
 
In particular this method could bemused for the precise numerical testing
Line 133: Line 133:
 
GNU Scientific Library Reference Manual - Third Edition (v1.12)
 
GNU Scientific Library Reference Manual - Third Edition (v1.12)
 
by M. Galassi, J. Davies, J. Theiler, B. Gough, G. Jungman, P. Alken, M. Booth, F. Rossi
 
by M. Galassi, J. Davies, J. Theiler, B. Gough, G. Jungman, P. Alken, M. Booth, F. Rossi
:$ \displaystyle g_m = \int_0^1 t \mathrm d t ~ J_\nu(j_{\nu,m}t) f(t)$
+
:\( \displaystyle g_m = \int_0^1 t \mathrm d t ~ J_\nu(j_{\nu,m}t) f(t)\)
; $ \displaystyle f(t) = \sum_{m=1}^\infty (2 J_\nu(j_{\nu,m}x) / J_{\nu+1}(j_{\nu,m})^2) g_m ~ ~ ~$ (perhaps, $t=x$ )
+
; \( \displaystyle f(t) = \sum_{m=1}^\infty (2 J_\nu(j_{\nu,m}x) / J_{\nu+1}(j_{\nu,m})^2) g_m ~ ~ ~\) (perhaps, \(t=x\) )
:$ \displaystyle
+
:\( \displaystyle
 
g_m = (2 / j_{\nu,M}^2)
 
g_m = (2 / j_{\nu,M}^2)
 
\sum_{k=1}^{M-1} f(j_{\nu,k}/j_{\nu,M})
 
\sum_{k=1}^{M-1} f(j_{\nu,k}/j_{\nu,M})
 
(J_\nu(j_{\nu,m} j_{\nu,k} / j_{\nu,M}) / J_{\nu+1}(j_{\nu,k})^2)
 
(J_\nu(j_{\nu,m} j_{\nu,k} / j_{\nu,M}) / J_{\nu+1}(j_{\nu,k})^2)
  +
\)
$
 
   
 
1993. http://www.sciencedirect.com/science/article/pii/0898122193900816
 
1993. http://www.sciencedirect.com/science/article/pii/0898122193900816

Latest revision as of 10:21, 20 July 2020

Bessel Transform or BesselTransform, called also Hankel transform

at order \(\nu\) is operator that converts function \(f\) to function \(g=\mathrm{BesselTransform}_\nu(f)\) such that

\(\!\!\!\!\!\!\!\!\!\!\! (1) \displaystyle ~ ~ ~ g ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) f(x) x ~\mathrm d x\)

where BesselJ\(_\nu\) is the Bessel function, and \(\nu\) is assumed to be real number; in many applications \(\nu\) is natural number or just zero.

WARNING! The formulas of this article are not yet verified with pics, so, test well all you need before to use it! In addition.

Hankel transform and Bessel transform

In publications, it is difficult to see difference between meanings of terms Hankel transform and Bessel transform is found. In TORI, in future, these two terms may be used to denote transform with kernels

\(\mathrm{HankelKernel}(p,x)= \frac{1}{2 pi} \mathrm{BesselJ}_\nu(2 \pi px)\)

and

\(\mathrm{BesselKernel}(p,x)= \mathrm{BesselJ}_\nu(2 \pi px)\)

Respectively,

The second iteration of the BesselTransform is Identity transform, id set, \(\mathrm{BesselTransform}^2= \)IdentiryOperator, and, for \(f\) and \(g\) related with (1), the inverse relation takes place,

\(\!\!\!\!\!\!\!\!\!\!\! (2) \displaystyle ~ ~ ~ f ( p ) =\int_0^\infty \mathrm{BesselJ}_\nu(px) g(x) x ~ \mathrm d x\)

at least for continuous functions \(f\) and \(g\).

While no unique notations is established, the definition of transform should be supplied at very beginning of each article that use it.

Discrete Bessel

Te discrete analogy of the Bessel transform is defined at an array \(f\) of length \(N\), and gives array \(g=\mathrm{BesselTransform}_{N,\nu}(f)\) with the following formula:

\(\!\!\!\!\!\!\!\!\!\!\! (3) \displaystyle ~ ~ ~ g_m = \sum_{n=1}^{N}~ T_{m,n}~ f_n\)

with matrix \(T\) defined with

\(\!\!\!\!\!\!\!\!\!\!\! (4) \displaystyle ~ ~ ~ T_{m,n}=\frac{ 2~ \mathrm{BesselJ}_{\nu} \left( \frac{ \alpha_{\nu,n}~ \alpha_{\nu,m} }{\alpha_{\nu,N+1}} \right) }{ \left| \mathrm{BesselJ}_{\nu+1}(\alpha_{\nu,m}) \right|~ \left| \mathrm{BesselJ}_{\nu+1}(\alpha_{\nu,n}) \right|~ \alpha_{\nu,N+1} }\)

where \(\alpha_{\nu,n}\) is \(n\)th zero of function BesselJ\(_{\nu}\).

The \(n\)th element of array \(f\) or \(g\) corresponds to the function evaluated at point \(\displaystyle \frac{\alpha_{\nu, n}}{\sqrt{\alpha_{\nu,N+1}}}\)

and scaled with factor \(\displaystyle \frac {\alpha_{\nu,N+1}} {|J_{\nu+1}(\alpha_{\nu,n})|}\)

The numerical test is not yet loaded.

Scaling of the argument

As in the case of the Fourier transform, the scale of the arguments of the functions \(f\) and \(g\) can be varied, defining the new function \( F(x)=f(x ~ M) M\) and \( G(x)=g( x / M) /M\) where \(M\) is real parameter of magnification. Similar scaling can be applied also to the discrete Bessel transform.

Scaling of the function

The additional factor in the integral representation of the Bessel transform can be eliminated, multiplying each, the function and its transform, to the square root of the argument, with corresponding modification of the kernel. [1].

Truncated Hankel transform

The "truncated Hankel transform" called also "finite Hanlel transform" relates functions \(f\) and \(g\) such that

\( \displaystyle f(x)= \int_0^1 J_m(xy)~ g(y)~y ~\mathrm{d} y \)

In notations by [2], the functions are already multiplied by the square toot of their argument; for example, \(T(x)=f(x)\sqrt{x}\).

The corresponding modification of the kernel of the integral transfom, \(\mathrm d y\) appears instead of \(y\,\mathrm d y\). It is not clear which notation is better; so, perhaps, both notations will be used in TORI.

However, the second iteration of the truncated Hankel transform is not the identity transform.

Application of the Bessel transform

The Bessel transform of zero-th order (id set, \(\nu=0\) in the formulas above) is useful for the description of propagation of waves with circular (radial) symmetty.

In particular this method could bemused for the precise numerical testing of the general interpretation of guiding of waves with series of pinholes. [3][4]

Implementation

There are many publications, that describe the Bessel (Hankel) transform. The amount of these publications indicate, that the fast, efficient Bessel transform is not so easy to implement, and the implementation is not so easy to translate from the original programming language to other languages.

References

  1. http://www.sciencedirect.com/science/article/pii/S0377042706006236 W.N.Everitt, H.Kalf. The Bessel differential equation and the Hankeltransform. Journal of Computational and Applied Mathematics Volume 208, Issue 1, 1 November 2007, Pages 3–19.
  2. http://www.math.tuwien.ac.at/~ewa/PDF_Files/Hankel_Transf_Eigenfunctions_Amodioetal P. Amodio, T. Levitina, G. Settanni, and E. B. Weinmu ̈ller. On the Calculation of the Finite Hankel Transform Eigenfunctions. November 29, 2011
  3. http://arxiv.org/abs/1407.3013 Guiding of Light with Pinholes. Makoto Morinaga. (Submitted on 11 Jul 2014)
  4. http://link.springer.com/article/10.1007/s10043-015-0045-1#/page-1 Makoto Morinaga. Wave propagation through a set of slits. Optical Review, February 2015, Volume 22, Issue 1, pp 33-38. 26 February 2015.

http://en.wikipedia.org/wiki/Hankel_transform

1985. http://www.fh.huji.ac.il/~ronnie/Papers/k31.pdf JOURNAL OF COMPUTATIONAL PHYSICS 59, 136-151 (1985) ROB BISSELINC AND RONNIE KOSLOFF. The Fast Hankel Transform as a Tool in the Solution of the Time Dependent Schrijdinger Equation.

1999. http://dsp-book.narod.ru/HFTSP/8579ch17.pdf Poularikas A. D. “The Hankel Transform” The Handbook of Formulas and Tables for Signal Processing. Ed. Alexander D. Poularikas. Boca Raton: CRC Press LLC,1999.

http://www.network-theory.co.uk/docs/gslref/DiscreteHankelTransformDefinition.html GNU Scientific Library Reference Manual - Third Edition (v1.12) by M. Galassi, J. Davies, J. Theiler, B. Gough, G. Jungman, P. Alken, M. Booth, F. Rossi

\( \displaystyle g_m = \int_0^1 t \mathrm d t ~ J_\nu(j_{\nu,m}t) f(t)\)
\( \displaystyle f(t) = \sum_{m=1}^\infty (2 J_\nu(j_{\nu,m}x) / J_{\nu+1}(j_{\nu,m})^2) g_m ~ ~ ~\) (perhaps, \(t=x\) )
\( \displaystyle g_m = (2 / j_{\nu,M}^2) \sum_{k=1}^{M-1} f(j_{\nu,k}/j_{\nu,M}) (J_\nu(j_{\nu,m} j_{\nu,k} / j_{\nu,M}) / J_{\nu+1}(j_{\nu,k})^2) \)

1993. http://www.sciencedirect.com/science/article/pii/0898122193900816 M.J.Cree, P.J.Bones. Algorithma to numerically evaluate the Hankel transform. Computers & Mathematics with Applications Volume 26, Issue 1, July 1993, Pages 1-12,

1995. https://www.osapublishing.org/josaa/abstract.cfm?uri=josaa-12-8-1812 José A. Ferrari. Fast Hankel transform of order zero. Journal of the Optical Society of America A Vol. 12, Issue 8, pp. 1812-1813 (1995)

2000.06. http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=845927&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F78%2F18343%2F00845927.pdf%3Farnumber%3D845927 L.Knockaert . Fast Hankel transform by fast sine and cosine transforms: the Mellin connection. IEEE Transactions on Signal Processing, Volume:48, Issue: 6, Jun 2000.

2001. http://www.arl.army.mil/arlreports/2001/ARL-TR-2492.pdf Timothy M. Pritchett. Fast Hankel Transform Algorithms for Optical Beam Propagation. ARL-TR-2492 December 2001.

2004. http://www.acms.arizona.edu/FemtoTheory/MK_personal/opti547/literature/QD-Hankel.pdf M.Guizar-Sicairos, J.C.Gutierrez-Vega. Computation of quasi-discrete Hankel transforms of integer order for propagating optical wave fields. Vol. 21, No. 1/January 2004/J.Opt.Soc.Am.A, p.53-58.

2012. http://marineemlab.ucsd.edu/~kkey/pubs/Geophysics%202012%20Key.pdf Kerry Key. Is the fast Hankel transform faster than quadrature? GEOPHYSICS, VOL. 77, NO. 3 (MAY-JUNE 2012); P. F21–F30, 10 FIGS., 1 TABLE.

Keywords

BesselJ0, Fourier transform