Figure di diffrazione nel far field

Definizione di Sinc e Besinc

ClearAll[sinc,x];
sinc[x_]:=If[x≠0,Sin[Pi x]/(Pi x),1];
besinc[x_]:= If[x≠0,2 BesselJ[1,Pi x]/(Pi x),1];

Plot[{sinc[x],besinc[x]},{x,-4,4}]

Fenditura rettangolare (a x b)

gamma=.5; (* modifica la curva del contrasto *)
dimimm=400;
Manipulate[
DensityPlot[Abs[ sinc[a x] sinc[b y]]^(2 gamma),{x,-2,2},{y,-2,2},PlotPoints->{50,50},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All],{{a,2},0,20,.1},{{b,2},0,20,.1},ControlPlacement->Left]

Foro circolare di raggio a

gamma=.5; (* modifica la curva del contrasto *)
Manipulate[
DensityPlot[Abs[ besinc[2 a Sqrt[x^2 + y^2]]]^(2 gamma),{x,-2,2},{y,-2,2},PlotPoints->{50,50},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All],{{a,2},0,4,.1},ControlPlacement->Left]

Doppia fenditura (a x b, distanza d)

gamma=.4; (* modifica la curva del contrasto *)
dimimm=400;
Manipulate[
Column[{
Plot[{Abs[ sinc[a x] Cos[Pi d x]]^2,sinc[a x]^2},{x,-2,2},PlotRange->{0,1}, ImageSize->dimimm],
DensityPlot[Abs[ sinc[b y]sinc[a x] Cos[Pi d x]]^(2 gamma),{x,-2,2},{y,-2,2},PlotPoints->{50,50},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All]
}]
,{{a,2},0,5,.1},{{b,2},0,20,.1},{{d,0},0,10,.1},ControlPlacement->Left]

Doppio foro circolare (raggio a, distanza d)

gamma=.3; (* modifica la curva del contrasto *)
Manipulate[
DensityPlot[Abs[ besinc[2a Sqrt[x^2 + y^2]]  Cos[Pi d x]]^(2 gamma),{x,-2,2},{y,-2,2},PlotPoints->{50,50},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All],
{{a,1},0,4,.1},{{d,4},0,10,.1},ControlPlacement->Left]

Profilo gaussiano (spot-size w)

gamma=.4; (* modifica la curva del contrasto *)
Manipulate[
Column[{
Plot[ Exp[-(x w)^2],{x,-2,2},PlotRange->{0,1},AspectRatio->1/3,ImageSize->dimimm],
DensityPlot[ Exp[-(x^2 +y^2)w^2]^(gamma),{x,-2,2},{y,-2,2},PlotPoints->{100,100},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All]
}],{{w,1},0.01,20,.01},ControlPlacement->Left]

Limite di risoluzione

gamma=.4; (* modifica la curva del contrasto *)
Manipulate[
Column[{
Plot[{Abs[ sinc[a(x-x0)]^2+sinc[a(x+x0)]^2],sinc[a(x-x0)]^2,sinc[a(x+x0)]^2},{x,-2,2},PlotRange->{0,2},AspectRatio->1/3,ImageSize->dimimm,PlotStyle->{Black,{Red,Dashed},{Red,Dashed}}],
DensityPlot[Abs[ sinc[a(x-x0)]^2+sinc[a(x+x0)]^2]^(gamma),{x,-2,2},{y,-2,2},PlotPoints->{50,2},ColorFunction->GrayLevel,Frame->False, ImageSize->dimimm,PlotRange->All]
}],{{x0,1},0,1,.01},{{a,3},0,10,.1},ControlPlacement->Left]