Fourier-Bessel transform / FT in polar coordinates
- To: mathgroup at smc.vnet.net
- Subject: [mg76279] Fourier-Bessel transform / FT in polar coordinates
- From: Mathieu G <ellocomateo at free.fr>
- Date: Sat, 19 May 2007 04:29:05 -0400 (EDT)
Hello,
How can I compute a Fourier Transform in polar coordinates?
Here is where I am so far, but it seems the CircularFourierTransform
functions are badly defined??? Or is it with the Beam and Hole functions?:
(* **********Code following********** *)
Clear["Global`*"];
HoleSize = Rationalize[1.5 1*^-6 /2];
BeamRadius = Rationalize[3.81 1*^-6];
BeamPower = 81*^-3;
BeamAmplitude = BeamPower/(2 \[Pi] BeamRadius^2);
(*2D Gaussian*)
Gaussian2D[r_, Radius_: 1, Amplitude_: 1] :=
Amplitude Exp[-1/2 (r/Radius)^2];
(*Disk shaped hole*)
DHole[r_?NonNegative, HoleSize_: 1] := Boole[r <= HoleSize];
(*Test function*)THole[r_?NonNegative, Dummy_: 1] := DiracDelta[r];
Beam[r_?NonNegative] := Gaussian2D[r, BeamRadius, BeamAmplitude];
Hole[r_?NonNegative] := THole[r, HoleSize];
RevolutionPlot3D[Beam[r], {r, 0, 4 BeamRadius}, Mesh -> All,
PlotRange -> All, ColorFunction -> "Rainbow"]
RevolutionPlot3D[Hole[r], {r, 0, 2 HoleSize}, Mesh -> All,
PlotRange -> All, ColorFunction -> "Rainbow"]
(*Using Fourier transform definition*)
CircularFourierTransform[f_, \[Omega]r_] :=
2 \[Pi] Integrate[
r f[r] BesselJ[0, 2 \[Pi] r \[Omega]r], {r, 0, \[Infinity]}];
InverseCircularFourierTransform[f_, r_] :=
2 \[Pi] Integrate[\[Omega]r f[\[Omega]r] BesselJ[0,
2 \[Pi] r \[Omega]r], {\[Omega]r, 0, \[Infinity]}];
TFBeam = CircularFourierTransform[Beam[r], \[Omega]r]
TFHole = CircularFourierTransform[Hole[r], r]