opticspy / lightpipes

LightPipes for Python, "Pure Python version"
https://opticspy.github.io/lightpipes/
BSD 3-Clause "New" or "Revised" License
227 stars 52 forks source link

Off-axis parabolic mirror #39

Closed ppugpug closed 4 years ago

ppugpug commented 4 years ago

I am using LightPipes for THz optics design. Is there a way to use off-axis parabolic mirrors in LightPipes?

Best regards, Prach

ldoyle commented 4 years ago

Hi Prach,

that is a good question. Right now, there is no function to do this and I know of no example code which achieved this with LightPipes. However, to first approximation, an OAP is "just a lens" which changes the direction of the optical axis. In a recent project, I used LightPipes to compare the focus generated by an OAP with the wavefront measured in the recollimated beam after the OAP, and it worked very well. The OAP in this case is 90deg off-axis angle, f/2 focusing (28cm beam, 50cm eff. focal length). I am aware that there are slight asymmetries in the field components in the focus of an OAP, but since LightPipes only uses a scalar field these might not be calculable correctly anyway.

I would be interested if you have any literature comparing the maths for a simple lens and an OAP. I came across these two sources in the past:

Hope this helps.

Regards, Leonard

ppugpug commented 4 years ago

Thank you very much for your answer. I will come back to update if I find other interesting papers.