PhaseGrating

class hcipy.optics.PhaseGrating(grating_period, grating_amplitude, grating_profile=None, orientation=0)[source]

Bases: OpticalElement

A grating that applies an achromatic phase pattern.

Parameters:
grating_periodscalar

The period of the grating.

grating_amplitudescalar

The amplitude of the grating.

grating_profilefield generator

The profile of the grating. The default is None and assumes a sinusoidal profile for the grating.

orientationscalar

The orientation of the grating in radians. The default orientation is aligned along the y-axis.

Attributes Summary

amplitude

period

Methods Summary

backward(wavefront)

Propagate a wavefront backward through the optical element.

forward(wavefront)

Propagate a wavefront forward through the optical element.

grating_pattern(grid)

Attributes Documentation

amplitude
period

Methods Documentation

backward(wavefront)[source]

Propagate a wavefront backward through the optical element.

A backward propagation is a literal backward propagation through the element. It is not (in general) the inverse of the forward propagation, except in cases where energy is conserved.

This function will be implemented by the derived class.

Parameters:
wavefrontWavefront

The wavefront to propagate.

Returns:
Wavefront

The propagated wavefront.

forward(wavefront)[source]

Propagate a wavefront forward through the optical element.

This will be implemented by the derived class.

Parameters:
wavefrontWavefront

The wavefront to propagate.

Returns:
Wavefront

The propagated wavefront.

grating_pattern(grid)[source]