Cross sections of Gaussian and Airy focal modes

From Optical Imaging and Spectroscopy (Wiley - OSA 2009)
By David J. Brady
www.opticalimaging.org
Figures 10.2 and 10.3

Fundamental Gaussian mode

lambda=1;
H[x_,z_,w_]:=Evaluate[Abs[(1/Sqrt[w^2+I lambda z])Exp[-Pi x^2/(w^2+I lambda z)]]^2];

DensityPlot[H[x+20,z,2]+4 H[x+10,z,4]+16 H[x-5,z,8]+64 H[x-20,z,16],{z,-200,200},{x,-30,30},PlotPoints->200,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

Diffractive Impulse response
Born and Wolf section 8.8 eqn. 21 a

i[u_,v_]:=If[u==0,4 ((If[v==0,(2^(-1)),BesselJ[1,v]/v])^2),4 (((If[v==0,NSum[(((((-1))^s) (2^(-(1+2 s))) (u^(2 s)))/((1+2 s)!)),{s,0,∞}],NSum[(((-1))^s) ((((u/v)))^(2 s)) BesselJ[1+2 s,v]/v,{s,0,∞}]])^2)+((If[v==0,NSum[(((((-1))^s) (2^(-(2+2 s))) (u^(1+2 s)))/((2+2 s)!)),{s,0,∞}],NSum[(((-1))^s) ((((u/v)))^(1+2 s)) BesselJ[2+2 s,v]/v,{s,0,∞}]])^2))]//N
izr[z_,r_,w0_]:=i[2π z/(((fn[w0]))^2),2π r/fn[w0]];
fn[w0_]=((2.431724783094232` w0)/(Sqrt[π]));

Caution: the Airy modes take a while to run in this form.

DensityPlot[izr[z,r+20,2]+izr[z,r+10,4]+izr[z,r-5,8]+izr[z,r-20,16],{z,-200,200},{r,-30,30},PlotPoints->200,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

r2=DensityPlot[izr[z,r+20,2],{z,-20,20},{r,-30,-10},PlotPoints->50,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

r16=DensityPlot[izr[z,r-20,16],{z,-200,200},{r,10,30},PlotPoints->50,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

r8=DensityPlot[izr[z,r-5,8],{z,-200,200},{r,-5,15},PlotPoints->75,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

r4=DensityPlot[izr[z,r+10,4],{z,-75,75},{r,-15,0},PlotPoints->50,PlotRange->All,Mesh->False,FrameLabel->{"longitudinal displacement (λ)","transverse displacement (λ)"}]

Show[r0,r2,r4, r8,r16];