diff options
author | Eugeniy Mikhailov <evgmik@gmail.com> | 2014-05-13 16:24:42 -0400 |
---|---|---|
committer | Eugeniy Mikhailov <evgmik@gmail.com> | 2014-05-13 16:24:42 -0400 |
commit | fe8d0f267ad8586242172b23322ac01d0b40cba0 (patch) | |
tree | 14771879ef0fc0addcadae3031987b6a22f5a05b | |
parent | d1b62466d81b164656588ac1c55acff15ee9ea43 (diff) | |
download | optics_toolkit-fe8d0f267ad8586242172b23322ac01d0b40cba0.tar.gz optics_toolkit-fe8d0f267ad8586242172b23322ac01d0b40cba0.zip |
fixed normalization for LaguerreGaussianE(n,0, ...)
Overlap of LaguerreGaussianE(n,0, ...) with itself was equal to 0.5
For example
------------------------------------------
screensize=0.125;
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.008;
R=-1e3;
lambda=0.795e-6;
q=q_(w,R,lambda);
z1=LaguerreGaussianE([0,0,q_(w,R,lambda),lambda],xmesh,ymesh,'cart');
z2=LaguerreGaussianE([0,0,q_(w,R,lambda),lambda],xmesh,ymesh,'cart');
a=overlap(z1,conj(z2),domain,rmesh)
------------------------------------------
a use to be 0.5 instead of 1
As result decomposition -> composition cycle was not producing the same beam
-rw-r--r-- | transverse/LaguerreGaussianE.m | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/transverse/LaguerreGaussianE.m b/transverse/LaguerreGaussianE.m index f95985d..adc004a 100644 --- a/transverse/LaguerreGaussianE.m +++ b/transverse/LaguerreGaussianE.m @@ -175,14 +175,14 @@ w=w_(q,lambda); if min(size(r))>=2
for u=1:size(params,1)
z(:,:,u) = a(u)...
- .* sqrt(2*factorial(p(u))/(1+(m(u)==0))/pi/(factorial( m(u)+p(u) )))/w(u)...
+ .* sqrt(2*factorial(p(u))/pi/(factorial( m(u)+p(u) )))/w(u)...
.* (sqrt(2)*r/w(u)).^m(u) .*exp(1i*signm(u)*m(u).*theta).* LaguerrePoly([p(u),m(u)],2*r.^2/w(u).^2)...
.* exp( -1i*2*pi/lambda(u)*r.^2/2/q(u));
end
else
for u=1:size(params,1)
z(:,u) = a(u)...
- .* sqrt(2*factorial(p(u))/(1+(m(u)==0))/pi/(factorial( m(u)+p(u) )))/w(u)...
+ .* sqrt(2*factorial(p(u))/pi/(factorial( m(u)+p(u) )))/w(u)...
.* (sqrt(2)*r/w(u)).^m(u) .* exp(i*signm(u)*m(u).*theta).* LaguerrePoly([p(u),m(u)],2*r.^2/w(u).^2)...
.* exp( -1i*2*pi/lambda(u)*r.^2/2/q(u));
end
|