Here are my calculations:
d = 10
s = 0.1
f = 1
wavelength = 0.0004
lens = Exp[(I*Pi*y^2)/(wavelength*f)]
aperture = Exp[-((y-d)^2)/(2*s^2)]*lens
APERTURE = FourierTransform[aperture, y, k]
APERTURE gets evaluated as 0.0 + 0.0i, which is just not true... I can do this transform by hand... It's not that difficult, but for some reason Mathematica seems to choke on it... If I don't multiply by lens
, it comes out okay... But I do need the lens term in there.
And this is just the first step, I could write what this evaluates to (since I did it by hand), but now I need to multiply APERTURE
by Exp[-2*Pi*I*Sqrt[(1/wavelength^2-k^2)]]
and take the inverse Fourier, which doesn't work either! (give 0 + 0i).
i.e.:
APERTURE = (1/Sqrt[(1/(2*Pi*s^2))-(I/(wavelength*f))])*Exp[-s^2*k^2/(2-4*Pi*s^2*I/(wavelength*f))+d*k/(i+2*Pi*s^2/(wavelength*f))-d^2*(wavelength*f-I*Pi*s^2)/(s^2*(wavelength*f-2*I*Pi*s^2))]
PROPAGATED = APERTURE*Exp[-2*Pi*I*Sqrt[(1/wavelength^2-k^2)]]
propagated = InverseFourierTransform[PROPAGATED,k,y]
get propagated
evaluated as 0 + 0i.
Any idea how I can get this solved?
When calculating this numerically, I get the correct solution (when f is large enough), but for small f, I get a wrong solution, so I thought it might be a case of underflow.
With that in mind, I turned to try and solve it symbolically, so that I don't run into these type of trouble - but it would seem Mathematica has some trouble solving these Fourier transforms...