This PR adds a new type of PhaseScreen for use with galsim.PhaseScreenPSF. It wraps a galsim.LookupTable2D to enable arbitrary user provided phases.
Note that I haven't paid super close attention yet to potential 90-degree rotations or flips of phase screen definitions here, or even in the past with AtmosphericScreens or OpticalScreens. I'd like to address this in a future issue though, after I've had a bit of time to investigate with batoid/Zemax things like is a +ve wavefront defined to be leading or lagging the reference sphere?, and make sure I got things right like is the FFT math consistent with viewing the focal plane from the front or from the back?
This PR adds a new type of PhaseScreen for use with galsim.PhaseScreenPSF. It wraps a galsim.LookupTable2D to enable arbitrary user provided phases.
Note that I haven't paid super close attention yet to potential 90-degree rotations or flips of phase screen definitions here, or even in the past with AtmosphericScreens or OpticalScreens. I'd like to address this in a future issue though, after I've had a bit of time to investigate with batoid/Zemax things like is a +ve wavefront defined to be leading or lagging the reference sphere?, and make sure I got things right like is the FFT math consistent with viewing the focal plane from the front or from the back?