VectorVortexCoronagraph

class hcipy.coronagraphy.VectorVortexCoronagraph(charge=2, phase_retardation=3.141592653589793, levels=4, scaling_factor=4)

Bases: hcipy.optics.optical_element.AgnosticOpticalElement

An vector vortex coronagraph.

This OpticalElement simulations the propagation of light through a vector vortex in the focal plane. To resolve the singularity of this vortex phase plate, a multi-scale approach is made. Discretisation errors made at a certain level are corrected by the next level with finer sampling.

Parameters
chargeinteger

The charge of the vortex.

phase_retardationscalar or function

The phase retardation of the vector vortex plate, potentially as a function of wavelength. Changes of the phase retardation as a function of spatial position is not yet supported.

levelsinteger

The number of levels in the multi-scale sampling.

scaling_factorscalar

The fractional increase in spatial frequency sampling per level.

Methods Summary

backward(self, wavefront, \*args, \*\*kwargs)

forward(self, wavefront, \*args, \*\*kwargs)

get_input_grid(self, output_grid, wavelength)

Get the input grid for a specified output grid and wavelength.

get_output_grid(self, input_grid, wavelength)

Get the output grid for a specified input grid and wavelength.

make_instance(self, instance_data, …)

Make an instance for this specific input_grid, output_grid, wavelength.

Methods Documentation

backward(self, wavefront, *args, **kwargs)
forward(self, wavefront, *args, **kwargs)
get_input_grid(self, output_grid, wavelength)

Get the input grid for a specified output grid and wavelength.

This optical element only supports propagation to the same plane as its input.

Parameters
output_gridGrid

The output grid of the optical element.

wavelengthscalar or None

The wavelength of the outgoing light.

Returns
Grid

The input grid corresponding to the output grid and wavelength combination.

get_output_grid(self, input_grid, wavelength)

Get the output grid for a specified input grid and wavelength.

This optical element only supports propagation to the same plane as its input.

Parameters
input_gridGrid

The input grid of the optical element.

wavelengthscalar or None

The wavelength of the incoming light.

Returns
Grid

The output grid corresponding to the input grid and wavelength combination.

make_instance(self, instance_data, input_grid, output_grid, wavelength)

Make an instance for this specific input_grid, output_grid, wavelength.

This function is intended to be implemented by a derived class. Any properties evaluated for the instance can be stored into the instance_data object which is stored in the internal cache.

Parameters
instance_dataInstanceData

An object storing all data for this instance. This object can be modified this function.

input_gridGrid or None

The input grid.

output_gridGrid or None

The output grid.

wavelengthscalar or None

The wavelength.