KnifeEdgeLyotCoronagraph

class hcipy.coronagraphy.KnifeEdgeLyotCoronagraph(input_grid, q=8, apodizer=None, lyot_stop=None)

Bases: hcipy.optics.optical_element.OpticalElement

A Lyot-style coronagraph with a centered, knife-edge focal-plane mask.

As the knife-edge is invariant along one axis, the Fourier transforms can be sped up by only taking them along one axis. Also, the zero-padding only needs to be done along that axis, reducing memory usage while doing the transform.

The knife-edge is set along the y-axis, so perpendicular to the x-axis.

Parameters
input_gridGrid

The grid of the wavefront that is to be propagated.

qscalar

The amount of oversampling used for the knife edge.

apodizerOpticalElement or Field or None

The pre-apodizer in the pupil before the focal-plane mask. If this is a Field, it will be converted into an apodizer. If this is None, no apodizer will be used.

lyot_maskOpticalElement or Field

The Lyot stop in the pupil after the focal-plane mask. If this is a Field, it will be converted to an apodizer. If this is None, no Lyot stop will be used.

Methods Summary

backward(self, wavefront)

Propagate a wavefront backward through the knife-edge coronagraph.

forward(self, wavefront)

Propagate a wavefront forward through the knife-edge coronagraph.

Methods Documentation

backward(self, wavefront)

Propagate a wavefront backward through the knife-edge coronagraph.

Parameters
wavefrontWavefront

The wavefront to propagate.

Returns
Wavefront

The propagated wavefront.

forward(self, wavefront)

Propagate a wavefront forward through the knife-edge coronagraph.

Parameters
wavefrontWavefront

The wavefront to propagate.

Returns
Wavefront

The propagated wavefront.