diff options
Diffstat (limited to 'gauss_transmission_after_aperture.m')
-rw-r--r-- | gauss_transmission_after_aperture.m | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/gauss_transmission_after_aperture.m b/gauss_transmission_after_aperture.m new file mode 100644 index 0000000..7a5bbc3 --- /dev/null +++ b/gauss_transmission_after_aperture.m @@ -0,0 +1,55 @@ +% Illustrates the use fo LaguerreGaussianE.m, decompose.m and recompose.m by
+% defining an off-center Guassian beam (Fig. 1, Col. 1) and recomposing it
+% in a basis of Laguerre Gaussians defined about the center on the figure.
+% The recomposed beam is shown in Fig. 1, Col. 2, where we have used the
+% first 40 Laguerre Gaussian modes. Figure 1, Col. 3 shows the
+% difference between the recomposed beam and the original. Figure 2 shows
+% the magnitude of the coefficients of the various modes in the
+% decomposition.
+
+
+clear domain
+screensize=0.0125;
+nptsr=1500;
+nptstheta=100;
+accuracy=0.001;
+n=30;
+
+[rmesh,thetamesh,xmesh,ymesh]=polarmesh([0,screensize,nptsr],[0 2*pi nptstheta],'lin');
+domain(:,:,1)=rmesh; domain(:,:,2)=thetamesh;
+
+w=0.002;
+R=-1e3;
+lambda=0.795e-6;
+q=q_(w,R,lambda);
+
+%deltax=1.5*w;
+%deltay=1.5*w;
+deltax=0;
+deltay=0;
+
+z_before_mask=LaguerreGaussianE([0,0,q_(w,R,lambda),lambda],xmesh+deltax,ymesh+deltay,'cart');
+
+Np = 1000;
+apR = linspace(0, 2, Np); % aperture ratio
+for i = Np:-1:1
+ mask_R = w*apR(i);
+ % disk
+ mask = 1.0*((xmesh.^2+ymesh.^2) > mask_R^2);
+ zout=mask.*z_before_mask;
+ a_disk(i)=overlap(zout,conj(zout),domain,rmesh);
+
+ % iris
+ mask = 1.0*((xmesh.^2+ymesh.^2) < mask_R^2);
+ zout=mask.*z_before_mask;
+ a_iris(i)=overlap(zout,conj(zout),domain,rmesh);
+end
+
+
+plot( a_disk, apR, 'k-', a_iris, apR, 'r-' );
+grid on;
+legend( ['disk'; 'iris'] );
+ylabel('Aperture radius R_a/w');
+xlabel('Transmitter power ratio')
+title( 'LG_{00} beam transmission after round disk or aperture');
+
|