Detector

class poppy.Detector(pixelscale=<Quantity 1. arcsec / pix>, fov_pixels=None, fov_arcsec=None, oversample=1, name='Detector', **kwargs)[source]

Bases: OpticalElement

A Detector is a specialized type of OpticalElement that forces a wavefront onto a specific fixed pixelization of an Image plane.

This class is in effect just a metadata container for the desired sampling; all the machinery for transformation of a wavefront to that sampling happens within Wavefront.

Note that this is not in any way a representation of real noisy detectors; no model for read noise, imperfect sensitivity, etc is included whatsoever.

Parameters:
namestring

Descriptive name

pixelscalefloat or astropy.units.Quantity

Pixel scale, either in angular units such as arcsec/pixel, or (for Fresnel optical systems only) in physical units such as micron/pixel. Units should be specified as astropy Quantities. If pixelscale is given as a float without an explicit unit, it will be interpreted as in arcsec/pixel. Note, this value may be further subdivided by specifying the oversample parameter > 1.

fov_pixels, fov_arcsecfloat or astropy.units.Quantity

The field of view may be specified either in arcseconds or by a number of pixels. Either is acceptable and the pixel scale is used to convert as needed. You may specify a non-square FOV by providing two elements in an iterable. Note that this follows the usual Python convention of ordering axes (Y,X), so put your desired Y axis size first. For Fresnel optical systems, if specifying pixelscale in microns/pixel then you must specify fov_pixels rather than fov_arcsec.

oversampleint

Oversampling factor beyond the detector pixel scale. The returned array will have sampling that much finer than the specified pixelscale.

Attributes Summary

shape

Return shape of the OpticalElement, as a tuple

Attributes Documentation

shape