-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fresnel pull request for commenting #108
Comments
Comment by mperrin @douglase I just merged #107 for you so you can try it with pyfftw now. Meanwhile I've managed to reproduce the error you're getting, although it's not totally clear to me why; on one computer it works fine in 2.7 but fails in 3.4, but on another computer I can get the ufunc casting error on 2.7. Investigating... but I'm not optimistic I will figure this out in the next 15 minutes before I have to split. :-) |
Comment by douglase side note on notebook: GaussianLens() is Gaussian because it's spherical, so it is a "Gaussian Optics" approximation of a lens... SphericalLens would be clearer. |
Comment by mperrin Or "QuadraticLens" maybe? The point is that it's a pure quadratic phase term, such that it converts a plane wave into a converging spherical wave or vice versa. In hardware this would be achieved by a parabolic mirror (e.g. off axis paraboloid). Using a real spherical lens or mirror doesn't get you a perfectly converging beam, it gets you a converging beam with spherical aberration. As no astronomer should ever forget. :-) For that matter we could just name the class "Lens". I can imagine a future version of this which has a subclass "ConicLens" that allows precise description of conic asphere optics (such as the actual mirrors of Hubble, or the optics of JWST which are an ellipse, hyperbola, and ellipse, etc). |
Comment by douglase yes, spherical optics, not a spherical optic... I like QuadraticLens. |
Comment by mperrin I am planning to go ahead and merge this into I took a pass at cleaning up the |
Comment by douglase I don't see any issues with merging into master. I just created an issue for adding anti-aliased apertures (#129), since that seems to be the missing feature for head-to-head comparisons with PROPER, but that is not a just Fresnel issue. I have the PROPER example microscope working and see less than than 1% difference between POPPY and PROPER (https://github.com/douglase/poppy_example_notebooks/blob/master/Fresnel/Microscope_Example.ipynb). Have not had time for more examples (the TDEM coronagraph example is built but not well tested), but I don't think that is a reason to hold up merging with master. I think the mathematical notation makes the code a bit more readable than the PEP8 versions, but understand the desire for consistency. |
Comment by mperrin Ok thanks much. Nice to see the microscope example! After further reflection I think we can keep the shorter names, I'll just make them all lowercase for PEP8 compliance. And I think it's a little easier to remember all lowercase |
Comment by josePhoenix 👍 to lowercasing. I also thought about providing short aliases to the longer names but it's probably not worth the additional confusion. |
Comment by josePhoenix Woohoo! |
Issue by mperrin
Friday Aug 21, 2015 at 17:36 GMT
Originally opened as mperrin/poppy#108
This is the whole fresnel branch including my recent changes. PR for commenting as requested by @josePhoenix in mperrin/poppy#103 (comment)
In retrospect I probably should have made a branch from the branch and pull requested from that, but I didn't think of it.
mperrin included the following code: https://github.com/mperrin/poppy/pull/108/commits
The text was updated successfully, but these errors were encountered: