Detector¶
-
class
esis.optics.detector.
Detector
(name=<factory>, piston=<Quantity 0. mm>, cylindrical_radius=<Quantity 0. mm>, cylindrical_azimuth=<Quantity 0. deg>, inclination=<Quantity 0. deg>, roll=<Quantity 0. deg>, twist=<Quantity 0. deg>, pixel_width=<Quantity 0. um>, num_pixels=(0, 0), border_width_right=<Quantity 0. mm>, border_width_left=<Quantity 0. mm>, border_width_top=<Quantity 0. mm>, border_width_bottom=<Quantity 0. mm>, dynamic_clearance=<Quantity 0. mm>, npix_overscan=0, npix_blank=0, gain=<Quantity 0. electron / adu>, readout_noise=<Quantity 0. adu>)¶ Bases:
kgpy.optics.component.CylindricalComponent
-
__init__
(name=<factory>, piston=<Quantity 0. mm>, cylindrical_radius=<Quantity 0. mm>, cylindrical_azimuth=<Quantity 0. deg>, inclination=<Quantity 0. deg>, roll=<Quantity 0. deg>, twist=<Quantity 0. deg>, pixel_width=<Quantity 0. um>, num_pixels=(0, 0), border_width_right=<Quantity 0. mm>, border_width_left=<Quantity 0. mm>, border_width_top=<Quantity 0. mm>, border_width_bottom=<Quantity 0. mm>, dynamic_clearance=<Quantity 0. mm>, npix_overscan=0, npix_blank=0, gain=<Quantity 0. electron / adu>, readout_noise=<Quantity 0. adu>)¶ Initialize self. See help(type(self)) for accurate signature.
- Parameters
name (kgpy.Name) –
piston (astropy.units.Quantity) –
cylindrical_radius (astropy.units.Quantity) –
cylindrical_azimuth (astropy.units.Quantity) –
inclination (astropy.units.Quantity) –
roll (astropy.units.Quantity) –
twist (astropy.units.Quantity) –
pixel_width (astropy.units.Quantity) –
border_width_right (astropy.units.Quantity) –
border_width_left (astropy.units.Quantity) –
border_width_top (astropy.units.Quantity) –
border_width_bottom (astropy.units.Quantity) –
dynamic_clearance (astropy.units.Quantity) –
npix_overscan (int) –
npix_blank (int) –
gain (astropy.units.Quantity) –
readout_noise (astropy.units.Quantity) –
- Return type
Attributes
- rtype
astropy.units.core.PrefixUnit
- rtype
astropy.units.core.PrefixUnit
- rtype
astropy.units.core.PrefixUnit
- rtype
astropy.units.core.PrefixUnit
- rtype
Number of pixels in each axis including the overscan and blank pixels
- rtype
astropy.units.core.PrefixUnit
Slices for isolating the pixels associated with each tap on the CCD
Methods
__init__
([name, piston, cylindrical_radius, …])Initialize self.
apply_poletto_prescription
(wavelength_1, …)convert_adu_to_electrons
(data)Converts data in ADU units to electron units using the gain for each tap in each channel
convert_adu_to_photons
(data, wavelength)Converts data in ADU units to photon units.
convert_electrons_to_photons
(data, wavelength)Converts data in electron units to photon units using the wavelength and the silicon workfunction
copy
()readout_noise_image
(num_channels)Calculate an image where each pixel contains the expected readout noise at that location
remove_inactive_pixels
(data)Given a raw image from the ESIS cameras, trim off the blank and overscan pixels, leaving only the light- sensitive pixels
Inheritance Diagram
-
apply_poletto_prescription
(wavelength_1, wavelength_2, magnification, primary_focal_length, grating)¶ - Return type
- Parameters
wavelength_1 (astropy.units.Quantity) –
wavelength_2 (astropy.units.Quantity) –
magnification (astropy.units.Quantity) –
primary_focal_length (astropy.units.Quantity) –
grating (esis.optics.grating.Grating) –
-
convert_adu_to_electrons
(data)¶ Converts data in ADU units to electron units using the gain for each tap in each channel
- Parameters
data (
astropy.units.core.IrreducibleUnit
) – sequence of images in ADU units- Returns
- Return type
Sequence of images in electron units
-
convert_adu_to_photons
(data, wavelength)¶ Converts data in ADU units to photon units.
- Parameters
data (
astropy.units.core.IrreducibleUnit
) – sequence of images in ADU unitswavelength (
astropy.units.core.PrefixUnit
) – wavelength of incident light. Must be broadcastable with data
- Returns
- Return type
Sequence of images converted to photon units.
-
convert_electrons_to_photons
(data, wavelength)¶ Converts data in electron units to photon units using the wavelength and the silicon workfunction
- Parameters
data (
astropy.units.core.IrreducibleUnit
) – sequence of images in electron unitswavelength (
astropy.units.core.PrefixUnit
) – wavelength of incident light. Must be broadcastable with data
- Returns
- Return type
Sequence of images in photon units
-
copy
()¶ - Return type
-
readout_noise_image
(num_channels)¶ Calculate an image where each pixel contains the expected readout noise at that location
- Returns
- Return type
Image representing the readout noise at every pixel location.
-
remove_inactive_pixels
(data)¶ Given a raw image from the ESIS cameras, trim off the blank and overscan pixels, leaving only the light- sensitive pixels
- Parameters
data (
astropy.units.core.IrreducibleUnit
) – An array of raw ESIS images with the blank and overscan pixels still present- Returns
- Return type
A cropped array containing only light-sensitive pixels
-
border_width_bottom
: astropy.units.Quantity = <Quantity 0. mm>¶
-
border_width_left
: astropy.units.Quantity = <Quantity 0. mm>¶
-
border_width_right
: astropy.units.Quantity = <Quantity 0. mm>¶
-
border_width_top
: astropy.units.Quantity = <Quantity 0. mm>¶
-
property
clear_half_height
¶ - Return type
astropy.units.core.PrefixUnit
-
property
clear_half_width
¶ - Return type
astropy.units.core.PrefixUnit
-
property
clear_height
¶ - Return type
astropy.units.core.PrefixUnit
-
property
clear_width
¶ - Return type
astropy.units.core.PrefixUnit
-
cylindrical_azimuth
: astropy.units.Quantity = <Quantity 0. deg>¶
-
cylindrical_radius
: astropy.units.Quantity = <Quantity 0. mm>¶
-
property
dataframe
¶ - Return type
-
dynamic_clearance
: astropy.units.Quantity = <Quantity 0. mm>¶
-
gain
: astropy.units.Quantity = <Quantity 0. electron / adu>¶
-
inclination
: astropy.units.Quantity = <Quantity 0. deg>¶
-
property
num_pixels_all
¶ Number of pixels in each axis including the overscan and blank pixels
- Returns
- Return type
A tuple containing the total number of pixels along the long axis and short axis.
-
piston
: astropy.units.Quantity = <Quantity 0. mm>¶
-
property
pixel_half_width
¶ - Return type
astropy.units.core.PrefixUnit
-
pixel_width
: astropy.units.Quantity = <Quantity 0. um>¶
-
property
quadrants
¶ Slices for isolating the pixels associated with each tap on the CCD
- Returns
- Return type
A 4-tuple containing the pixel ranges for each axis of each quadrant on the sensor.
-
readout_noise
: astropy.units.Quantity = <Quantity 0. adu>¶
-
roll
: astropy.units.Quantity = <Quantity 0. deg>¶
-
property
surface
¶
-
property
transform
¶ - Return type
-
twist
: astropy.units.Quantity = <Quantity 0. deg>¶
-