summaryrefslogtreecommitdiff
path: root/gauss_transmission_after_aperture.m
blob: 7a5bbc390c2bf7d68c32525c8e27868020e4f1a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
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');