diff options
Diffstat (limited to 'gauss_on_aperture.m')
-rw-r--r-- | gauss_on_aperture.m | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/gauss_on_aperture.m b/gauss_on_aperture.m deleted file mode 100644 index 4523c73..0000000 --- a/gauss_on_aperture.m +++ /dev/null @@ -1,122 +0,0 @@ -% 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.
-
-
-ploton=[1 1];
-overlaponly=0; showfigure=0;
-
-clear domain;
-
-screensize=0.0125;
-nptsr=500;
-nptstheta=100;
-accuracy=0.001;
-n=400;
-
-[rmesh,thetamesh,xmesh,ymesh]=polarmesh([0,screensize,nptsr],[0 2*pi nptstheta],'lin');
-domain(:,:,1)=rmesh; domain(:,:,2)=thetamesh;
-
-w=0.001;
-R=-1e3;
-lambda=0.795e-6;
-q=q_(w,R,lambda);
-
-%deltax=1.5*w;
-%deltay=1.5*w;
-deltax=0;
-deltay=0;
-wfactor=1;
-
-mask_R = (w/10);
-mask = 1.0*((xmesh.^2+ymesh.^2) < mask_R^2);
-%mask = 1.0;
-
-if overlaponly
- z1=LaguerreGaussianE([0,2,q_(w,R,lambda),lambda],xmesh,ymesh,'cart');
- z2=LaguerreGaussianE([0,2,q_(w,R,lambda),lambda],xmesh,ymesh,'cart');
- a=overlap(z1,conj(z2),domain,rmesh)
- if showfigure
- figure(4);
- subplot(221); h=pcolor(xmesh,ymesh,abs(z1).^2); shg; colorbar; axis square; set(h,'edgecolor','none');
- subplot(222); h=pcolor(xmesh,ymesh,abs(z2).^2); shg; colorbar; axis square; set(h,'edgecolor','none');
- subplot(223); h=pcolor(xmesh,ymesh,angle(z1)); shg; colorbar; axis square; set(h,'edgecolor','none');
- subplot(224); h=pcolor(xmesh,ymesh,angle(z2)); shg; colorbar; axis square; set(h,'edgecolor','none');
- end
- return
-end
-
-z_before_mask=LaguerreGaussianE([0,0,q_(w*wfactor,R,lambda),lambda],xmesh+deltax,ymesh+deltay,'cart');
-zin=mask.*z_before_mask;
-clear tmat tmat_in
-tmat_in(1:n,1,1)=1;
-tmat_in(1:n,1,2)=0;
-[coeffs,tmat]=decompose(zin,domain,'lg',n,[q,lambda,accuracy]);
-%[coeffs,tmat]=decompose(zin,domain,'lg',tmat_in,[q,lambda,accuracy]);
-disp(' '); disp('horizontal');
-dispmat(abs(coeffs(:,:,1)));
-disp(' '); disp('vertical')
-dispmat(abs(coeffs(:,:,2)));
-
-%[rmesh,thetamesh,xmesh,ymesh]=polarmesh([0,screensize/10,nptsr],[0 2*pi nptstheta],'lin');
-%domain(:,:,1)=rmesh; domain(:,:,2)=thetamesh;
-zout=recompose(domain,'lg',coeffs,[q,lambda,accuracy]);
-
-
-if ploton(1)==1
- figure(1);
- subplot(331);
- h=pcolor(xmesh,ymesh,abs(zin).^2); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('original intensity');
- subplot(332);
- h=pcolor(xmesh,ymesh,abs(zout).^2); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('recomposed');
- subplot(333);
- h=pcolor(xmesh,ymesh,abs(zout).^2-abs(zin).^2); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('difference');
- subplot(334);
- h=pcolor(xmesh,ymesh,real(zin)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('original real part');
- subplot(335);
- h=pcolor(xmesh,ymesh,real(zout)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('recomposed');
- subplot(336);
- h=pcolor(xmesh,ymesh,real(zout)-real(zin)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('difference');
- subplot(337);
- h=pcolor(xmesh,ymesh,imag(zin)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('original imaginary part')
- subplot(338);
- h=pcolor(xmesh,ymesh,imag(zout)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('recomposed');
- subplot(339);
- h=pcolor(xmesh,ymesh,imag(zout)-imag(zin)); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
- title('difference');
-end
-
-if length(ploton)>=2 & ploton(2)==1
- figure(2);
- coeffplotmat=[coeffs(:,end:-1:2,2),coeffs(:,:,1)];
- ps=[-size(coeffs(:,:,2),1)+1:size(coeffs(:,:,1),1)-1];
- ms=[0:size(coeffs(:,:,2))-1];
- [psmesh,msmesh]=meshgrid(ps,ms);
- h=pcolor(psmesh,msmesh,log10(abs(coeffplotmat))); axis square; colorbar; drawnow; shg;
- title('Log_{10} of coefficients of the modes in the decomposition');
- xlabel('m'); ylabel('p');
-end
-
-
-[rmesh,thetamesh,xmesh,ymesh]=polarmesh([0,screensize/10,nptsr],[0 2*pi nptstheta],'lin');
-domain(:,:,1)=rmesh; domain(:,:,2)=thetamesh;
-zout_magn=recompose(domain,'lg',coeffs,[q,lambda,accuracy]);
-figure(3)
-title('recomposed');
-h=pcolor(xmesh,ymesh,abs(zout_magn).^2); set(h,'edgecolor','none'); axis square; colorbar; drawnow; shg;
-
-
-
|