InverseTransmission

class poppy.InverseTransmission(optic=None)[source]

Bases: poppy.optics.AnalyticOpticalElement

Given any arbitrary OpticalElement with transmission T(x,y) return the inverse transmission 1 - T(x,y)

This is a useful ingredient in the SemiAnalyticCoronagraph algorithm.

Attributes Summary

shape Return shape of the OpticalElement, as a tuple

Methods Summary

display(**kwargs) Display plots showing an optic’s transmission and OPD.
get_opd(wave) Return the optical path difference, given a wavelength.
get_transmission(wave) Note that this is the amplitude transmission, not the total intensity transmission.

Attributes Documentation

shape

Return shape of the OpticalElement, as a tuple

Methods Documentation

display(**kwargs)[source]

Display plots showing an optic’s transmission and OPD.

what : str
What to display: ‘intensity’, ‘amplitude’, ‘phase’, ‘opd’, or ‘both’ (meaning intensity and OPD in two subplots)
ax : matplotlib.Axes instance
Axes to display into
nrows, row : integers
number of rows and row index for subplot display
crosshairs : bool
Display crosshairs indicating the center?
colorbar : bool
Show colorbar?
colorbar_orientation : bool
Desired orientation, horizontal or vertical? Default is horizontal if only 1 row of plots, else vertical
opd_vmax : float
Max absolute value for OPD image display, in meters.
title : string
Plot label
wavelength : float, default 1 micron
For optics with wavelength-dependent behavior, evaluate at this wavelength for display.
npix : integer
For optics without a fixed pixel sampling, evaluate onto this many pixels for display.
grid_size : float
For optics without a fixed pixel sampling, evaluate onto this large a spatial or angular extent for display. Specify in units of arcsec for image plane optics, meters for all other optics. If unspecified, a default value will be chosen instead, possibly from the ._default_display_size attribute, if present.
get_opd(wave)[source]

Return the optical path difference, given a wavelength.

wave : float or obj
either a scalar wavelength or a Wavefront object

ndarray giving OPD in meters

get_transmission(wave)[source]

Note that this is the amplitude transmission, not the total intensity transmission.