Hi Fernando,
Thank you for discussing in the forum.
That is a good question. POP works with assuming the beam is paraxial, in other words the divergence angle of the beam is small and consequently the Ez is ignorable. This is why POP only holds Ex and Ey data.
If you really need the Ez data, although I cannot say how accurately this would work, my suggestion is you could restore it by using the transversality condition that
kx*Ex + ky*Ey + kz*Ez = 0,
where (kx,ky,kz) is wave vector with amplitude of 2*pi/wavelength.
To do this, you first need to do Fourier transformation for the Ex(x,y) and Ey(x,y) data into angular space Ex(kx,ky), Ey(kx,ky). You can then calculate Ez(kx,ky) by
Ez(kx,ky) = -1 / z(2*pi/wavelength)^2 - kx^2 - ky^2] * (kx*Ex(kx,k) + ky*Ey(kx,ky)),
where I substitute kz by kx and ky with the equation
kx^2 + ky^2 + kz^2 = (2*pi/wavelength)^2
Then you simply need to inverse Fourier transform the Ez(kx,ky) back to get Ez(x,y).
Be careful that, as the final step, you will need to renormalize the total power by multiple the 3 beam arrays Ex(x,y), Ey(x,y), Ez(x,y) by a factoer P, where
P = sqrt(integral((Ex^2+Ey^2)dxdy)) / sqrt(integral((Ex^2+Ey^2+Ez^2)dxdy))
to ensure the power of the beam don't increase becuase of you generated a new Ez array.
Best regards,
Michael
Hi Fernando,
Thank you for discussing in the forum.
That is a good question. POP works with assuming the beam is paraxial, in other words the divergence angle of the beam is small and consequently the Ez is ignorable. This is why POP only holds Ex and Ey data.
If you really need the Ez data, although I cannot say how accurately this would work, my suggestion is you could restore it by using the transversality condition that
kx*Ex + ky*Ey + kz*Ez = 0,
where (kx,ky,kz) is wave vector with amplitude of 2*pi/wavelength.
To do this, you first need to do Fouier transformation for the Ex(x,y) and Ey(x,y) data into angular space Ex(kx,ky), Ey(kx,ky). You can then calculate Ez(kx,ky) by
Ez(kx,ky) = -1 / >(2*pi/wavelength)^2 - kx^2 - ky^2] * (kx*Ex(kx,k) + ky*Ey(kx,ky)),
where I substitute kz by kx and ky with the equation
kx^2 + ky^2 + kz^2 = (2*pi/wavelength)^2
Then you simply need to inverse Fourier transform the Ez(kx,ky) back to get Ez(x,y).
Be careful that, as the final step, you will need to renormalize the total power by multiple the 3 beam arrays Ex(x,y), Ey(x,y), Ez(x,y) by a factoer P, where
P = sqrt(integral((Ex^2+Ey^2)dxdy)) / sqrt(integral((Ex^2+Ey^2+Ez^2)dxdy))
to ensure the power of the beam don't increase becuase of you generated a new Ez array.
Best regards,
Michael
Is it same as shown in Beam File Viewer? And is the same as wavefront map (here shows in Ex, Ey, Ez separately)? Because I am not familiar with this part. Thank you in advance if you have time to answer it.
The Beam File Viewer shows the irradiance (amplitude squared) and the phase atan(imaginary/real), so from there you can extract the complex values Ex and Ey.
This can be also done via the API: