Closed andykee closed 2 years ago
Plane transformations (Rotate and Flip) are only applied to Wavefront's data attribute at the moment. This is fine, unless the Wavefront's tilt attribute is populated. This is pretty clear from the example below:
Rotate
Flip
data
tilt
import lentil pupil = lentil.Pupil(amplitude=lentil.util.circle((256, 256), 128), diameter=1, focal_length=10, pixelscale=1/256) detector = lentil.Detector(pixelscale=5e-6, shape=(1024, 1024)) psf = lentil.propagate([pupil, detector], wave=650e-9, npix=(64, 64))
tilt = lentil.Tilt(x=10e-6, y=0) psf = lentil.propagate([tilt, pupil, detector], wave=650e-9, npix=(64, 64))
psf = lentil.propagate([tilt, pupil, lentil.Rotate(angle=30), detector], wave=650e-9, npix=(64, 64))
I'm not entirely sure how to deal with this yet, but I wanted to capture the problem before I forgot.
Plane transformations (
Rotate
andFlip
) are only applied to Wavefront'sdata
attribute at the moment. This is fine, unless the Wavefront'stilt
attribute is populated. This is pretty clear from the example below:I'm not entirely sure how to deal with this yet, but I wanted to capture the problem before I forgot.