ModulatedPyramidWavefrontSensorOptics

class hcipy.wavefront_sensing.ModulatedPyramidWavefrontSensorOptics(pyramid_wavefront_sensor, modulation, num_steps=12, fast_modulation_method=False)

Bases: WavefrontSensorOptics

The optical elements for a modulated pyramid wavefront sensor.

This class supports both a slow (default) and a fast modulation method, chosen by the fast_modulation_method parameters. The fast method shifts the pyramid surface instead of applying tilts to the incoming wavefront. While the fast modulation method can be up to twice as fast, it needs to precompute all pyramid surfaces and will use up more memory.

Parameters:
pyramid_wavefront_sensorWavefrontSensorOptics

The pyramid wavefront sensor optics that are used.

modulationscalar

The modulation radius in radians.

num_stepsint

The number of steps per modulation cycle.

fast_modulation_methodboolean

If True the fast propagation method will be used. Default is False.

Methods Summary

backward(wavefront)

Propagate a wavefront backward through the optical system.

forward(wavefront)

Propagates a wavefront through the modulated pyramid wavefront sensor.

Methods Documentation

backward(wavefront)

Propagate a wavefront backward through the optical system.

This will be implemented by the derived class.

Parameters:
wavefrontWavefront

The wavefront to propagate.

Returns:
Wavefront

The propagated wavefront.

forward(wavefront)

Propagates a wavefront through the modulated pyramid wavefront sensor.

Parameters:
wavefrontWavefront

The input wavefront that will propagate through the system.

Returns:
wf_modulatedlist

A list of wavefronts for each modulation position.