LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
|
Public Member Functions | |
__init__ (self, table=None, **kwargs) | |
updateMetadata (self, setDate=False, **kwargs) | |
fromDetector (self, detector) | |
fromDict (cls, dictionary) | |
toDict (self) | |
fromTable (cls, tableList) | |
toTable (self) | |
getLinearityTypeByName (self, linearityTypeName) | |
validate (self, detector=None, amplifier=None) | |
applyLinearity (self, image, detector=None, log=None) | |
Public Attributes | |
hasLinearity | |
override | |
ampNames | |
linearityCoeffs | |
linearityType | |
linearityBBox | |
fitParams | |
fitParamsErr | |
fitChiSq | |
fitResiduals | |
linearFit | |
tableData | |
Protected Attributes | |
_detectorName | |
_detectorSerial | |
_detectorId | |
Static Protected Attributes | |
str | _OBSTYPE = "LINEARIZER" |
str | _SCHEMA = 'Gen3 Linearizer' |
float | _VERSION = 1.1 |
Parameter set for linearization. These parameters are included in `lsst.afw.cameraGeom.Amplifier`, but should be accessible externally to allow for testing. Parameters ---------- table : `numpy.array`, optional Lookup table; a 2-dimensional array of floats: - one row for each row index (value of coef[0] in the amplifier) - one column for each image value To avoid copying the table the last index should vary fastest (numpy default "C" order) detector : `lsst.afw.cameraGeom.Detector`, optional Detector object. Passed to self.fromDetector() on init. log : `logging.Logger`, optional Logger to handle messages. kwargs : `dict`, optional Other keyword arguments to pass to the parent init. Raises ------ RuntimeError Raised if the supplied table is not 2D, or if the table has fewer columns than rows (indicating that the indices are swapped). Notes ----- The linearizer attributes stored are: hasLinearity : `bool` Whether a linearity correction is defined for this detector. override : `bool` Whether the detector parameters should be overridden. ampNames : `list` [`str`] List of amplifier names to correct. linearityCoeffs : `dict` [`str`, `numpy.array`] Coefficients to use in correction. Indexed by amplifier names. The format of the array depends on the type of correction to apply. linearityType : `dict` [`str`, `str`] Type of correction to use, indexed by amplifier names. linearityBBox : `dict` [`str`, `lsst.geom.Box2I`] Bounding box the correction is valid over, indexed by amplifier names. fitParams : `dict` [`str`, `numpy.array`], optional Linearity fit parameters used to construct the correction coefficients, indexed as above. fitParamsErr : `dict` [`str`, `numpy.array`], optional Uncertainty values of the linearity fit parameters used to construct the correction coefficients, indexed as above. fitChiSq : `dict` [`str`, `float`], optional Chi-squared value of the linearity fit, indexed as above. fitResiduals : `dict` [`str`, `numpy.array`], optional Residuals of the fit, indexed as above. Used for calculating photdiode corrections linearFit : The linear fit to the low flux region of the curve. [intercept, slope]. tableData : `numpy.array`, optional Lookup table data for the linearity correction.
Definition at line 39 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.__init__ | ( | self, | |
table = None, | |||
** | kwargs ) |
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 107 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.applyLinearity | ( | self, | |
image, | |||
detector = None, | |||
log = None ) |
Apply the linearity to an image. If the linearity parameters are populated, use those, otherwise use the values from the detector. Parameters ---------- image : `~lsst.afw.image.image` Image to correct. detector : `~lsst.afw.cameraGeom.detector` Detector to use for linearity parameters if not already populated. log : `~logging.Logger`, optional Log object to use for logging.
Definition at line 451 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fromDetector | ( | self, | |
detector ) |
Read linearity parameters from a detector. Parameters ---------- detector : `lsst.afw.cameraGeom.detector` Input detector with parameters to use. Returns ------- calib : `lsst.ip.isr.Linearizer` The calibration constructed from the detector.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 155 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fromDict | ( | cls, | |
dictionary ) |
Construct a calibration from a dictionary of properties Parameters ---------- dictionary : `dict` Dictionary of properties Returns ------- calib : `lsst.ip.isr.Linearity` Constructed calibration. Raises ------ RuntimeError Raised if the supplied dictionary is for a different calibration.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 184 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fromTable | ( | cls, | |
tableList ) |
Read linearity from a FITS file. This method uses the `fromDict` method to create the calibration, after constructing an appropriate dictionary from the input tables. Parameters ---------- tableList : `list` [`astropy.table.Table`] afwTable read from input file name. Returns ------- linearity : `~lsst.ip.isr.linearize.Linearizer`` Linearity parameters. Notes ----- The method reads a FITS file with 1 or 2 extensions. The metadata is read from the header of extension 1, which must exist. Then the table is loaded, and the ['AMPLIFIER_NAME', 'TYPE', 'COEFFS', 'BBOX_X0', 'BBOX_Y0', 'BBOX_DX', 'BBOX_DY'] columns are read and used to set each dictionary by looping over rows. Extension 2 is then attempted to read in the try block (which only exists for lookup tables). It has a column named 'LOOKUP_VALUES' that contains a vector of the lookup entries in each row.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 267 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.getLinearityTypeByName | ( | self, | |
linearityTypeName ) |
Determine the linearity class to use from the type name. Parameters ---------- linearityTypeName : str String name of the linearity type that is needed. Returns ------- linearityType : `~lsst.ip.isr.linearize.LinearizeBase` The appropriate linearity class to use. If no matching class is found, `None` is returned.
Definition at line 367 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.toDict | ( | self | ) |
Return linearity parameters as a dict. Returns ------- outDict : `dict`:
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 236 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.toTable | ( | self | ) |
Construct a list of tables containing the information in this calibration. The list of tables should create an identical calibration after being passed to this class's fromTable method. Returns ------- tableList : `list` [`astropy.table.Table`] List of tables containing the linearity calibration information.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 330 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.updateMetadata | ( | self, | |
setDate = False, | |||
** | kwargs ) |
Update metadata keywords with new values. This calls the base class's method after ensuring the required calibration keywords will be saved. Parameters ---------- setDate : `bool`, optional Update the CALIBDATE fields in the metadata to the current time. Defaults to False. kwargs : Other keyword parameters to set in the metadata.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 135 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.validate | ( | self, | |
detector = None, | |||
amplifier = None ) |
Validate linearity for a detector/amplifier. Parameters ---------- detector : `lsst.afw.cameraGeom.Detector`, optional Detector to validate, along with its amplifiers. amplifier : `lsst.afw.cameraGeom.Amplifier`, optional Single amplifier to validate. Raises ------ RuntimeError Raised if there is a mismatch in linearity parameters, and the cameraGeom parameters are not being overridden.
Reimplemented from lsst.ip.isr.calibType.IsrCalib.
Definition at line 391 of file linearize.py.
|
protected |
Definition at line 170 of file linearize.py.
|
protected |
Definition at line 168 of file linearize.py.
|
protected |
Definition at line 169 of file linearize.py.
|
staticprotected |
Definition at line 103 of file linearize.py.
|
staticprotected |
Definition at line 104 of file linearize.py.
|
staticprotected |
Definition at line 105 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.ampNames |
Definition at line 111 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fitChiSq |
Definition at line 117 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fitParams |
Definition at line 115 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fitParamsErr |
Definition at line 116 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.fitResiduals |
Definition at line 118 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.hasLinearity |
Definition at line 108 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.linearFit |
Definition at line 119 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.linearityBBox |
Definition at line 114 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.linearityCoeffs |
Definition at line 112 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.linearityType |
Definition at line 113 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.override |
Definition at line 109 of file linearize.py.
lsst.ip.isr.linearize.Linearizer.tableData |
Definition at line 120 of file linearize.py.