ZernikeWavefrontSensorOptics

class hcipy.wavefront_sensing.ZernikeWavefrontSensorOptics(input_grid, phase_step=1.5707963267948966, phase_dot_diameter=1.06, num_pix=128, pupil_diameter=1, reference_wavelength=1)

Bases: hcipy.wavefront_sensing.wavefront_sensor.WavefrontSensorOptics

The optical elements for a Zernike wavefront sensor.

This class uses a propagation scheme of [NDiaye2013], similar to that of Lyot coronagraphs with a small blocking mask, see [Soummer2007].

NDiaye2013

N’Diaye et al. 2013, “Calibration of quasi-static aberrations in exoplanet direct-imaging instruments with a Zernike phase-mask sensor”

Soummer2007

Soummer et al. 2007, “Fast computation of Lyot-style coronagraph propagation”

Parameters
input_gridGrid

The grid on which the input wavefront is defined.

phase_stepscalar

The phase of the phase dot of the zernike wavefront sensor. The default is pi/2.

phase_dot_diameterscalar

The diameter of the phase dot. This has units of lambda_0/D.

num_pixscalar

The number of pixels across the phase dot.

pupil_diameterscalar

The diameter of the pupil. This is used for calculating the size of the phase dot.

reference_wavelengthscalar

The reference wavelength. This is used for calcualting the size of the phase dot.

Methods Summary

backward(wavefront)

Propagates a wavefront backwards through the wavefront sensor.

forward(wavefront)

Propagates a wavefront through the wavefront sensor.

Methods Documentation

backward(wavefront)

Propagates a wavefront backwards through the wavefront sensor.

Parameters
wavefrontWavefront

The input wavefront that will propagate through the system.

Returns
wfWavefront

The output wavefront.

forward(wavefront)

Propagates a wavefront through the wavefront sensor.

Parameters
wavefrontWavefront

The input wavefront that will propagate through the system.

Returns
wfWavefront

The output wavefront.