|
lsst.ip.isr g9cb75138f3+bac7c66737
|
Public Member Functions | |
| def | __init__ (self, camera=None, detector=None, log=None, **kwargs) |
| def | __str__ (self) |
| def | __eq__ (self, other) |
| def | requiredAttributes (self) |
| def | requiredAttributes (self, value) |
| def | getMetadata (self) |
| def | setMetadata (self, metadata) |
| def | updateMetadata (self, camera=None, detector=None, filterName=None, setCalibId=False, setCalibInfo=False, setDate=False, **kwargs) |
| def | calibInfoFromDict (self, dictionary) |
| def | determineCalibClass (cls, metadata, message) |
| def | readText (cls, filename, **kwargs) |
| def | writeText (self, filename, format="auto") |
| def | readFits (cls, filename, **kwargs) |
| def | writeFits (self, filename) |
| def | fromDetector (self, detector) |
| def | fromDict (cls, dictionary, **kwargs) |
| def | toDict (self) |
| def | fromTable (cls, tableList, **kwargs) |
| def | toTable (self) |
| def | validate (self, other=None) |
| def | apply (self, target) |
Public Attributes | |
| requiredAttributes | |
| log | |
Generic calibration type.
Subclasses must implement the toDict, fromDict, toTable, fromTable
methods that allow the calibration information to be converted
from dictionaries and afw tables. This will allow the calibration
to be persisted using the base class read/write methods.
The validate method is intended to provide a common way to check
that the calibration is valid (internally consistent) and
appropriate (usable with the intended data). The apply method is
intended to allow the calibration to be applied in a consistent
manner.
Parameters
----------
camera : `lsst.afw.cameraGeom.Camera`, optional
Camera to extract metadata from.
detector : `lsst.afw.cameraGeom.Detector`, optional
Detector to extract metadata from.
log : `logging.Logger`, optional
Log for messages.
Definition at line 40 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.__init__ | ( | self, | |
camera = None, |
|||
detector = None, |
|||
log = None, |
|||
| ** | kwargs | ||
| ) |
Reimplemented in lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset, lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.defects.Defects, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.linearize.Linearizer, and lsst.ip.isr.photodiode.PhotodiodeCalib.
Definition at line 67 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.__eq__ | ( | self, | |
| other | |||
| ) |
Calibration equivalence. Running ``calib.log.setLevel(0)`` enables debug statements to identify problematic fields.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, and lsst.ip.isr.defects.Defects.
Definition at line 95 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.__str__ | ( | self | ) |
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, and lsst.ip.isr.defects.Defects.
Definition at line 92 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.apply | ( | self, | |
| target | |||
| ) |
Method to apply the calibration to the target object.
Parameters
----------
target : `object`
Thing to validate against.
Returns
-------
valid : `bool`
Returns true if the calibration was applied correctly.
Raises
------
NotImplementedError :
Raised if not implemented.
Definition at line 613 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.calibInfoFromDict | ( | self, | |
| dictionary | |||
| ) |
Handle common keywords.
This isn't an ideal solution, but until all calibrations
expect to find everything in the metadata, they still need to
search through dictionaries.
Parameters
----------
dictionary : `dict` or `lsst.daf.base.PropertyList`
Source for the common keywords.
Raises
------
RuntimeError :
Raised if the dictionary does not match the expected OBSTYPE.
Definition at line 262 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.determineCalibClass | ( | cls, | |
| metadata, | |||
| message | |||
| ) |
Attempt to find calibration class in metadata.
Parameters
----------
metadata : `dict` or `lsst.daf.base.PropertyList`
Metadata possibly containing a calibration class entry.
message : `str`
Message to include in any errors.
Returns
-------
calibClass : `object`
The class to use to read the file contents. Should be an
`lsst.ip.isr.IsrCalib` subclass.
Raises
------
ValueError :
Raised if the resulting calibClass is the base
`lsst.ip.isr.IsrClass` (which does not implement the
content methods).
Definition at line 317 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.fromDetector | ( | self, | |
| detector | |||
| ) |
Modify the calibration parameters to match the supplied detector.
Parameters
----------
detector : `lsst.afw.cameraGeom.Detector`
Detector to use to set parameters from.
Raises
------
NotImplementedError
This needs to be implemented by subclasses for each
calibration type.
Reimplemented in lsst.ip.isr.linearize.Linearizer, and lsst.ip.isr.crosstalk.CrosstalkCalib.
Definition at line 496 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.fromDict | ( | cls, | |
| dictionary, | |||
| ** | kwargs | ||
| ) |
Construct a calibration from a dictionary of properties.
Must be implemented by the specific calibration subclasses.
Parameters
----------
dictionary : `dict`
Dictionary of properties.
kwargs : `dict` or collections.abc.Mapping`, optional
Set of key=value options.
Returns
------
calib : `lsst.ip.isr.CalibType`
Constructed calibration.
Raises
------
NotImplementedError :
Raised if not implemented.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.defects.Defects, lsst.ip.isr.linearize.Linearizer, lsst.ip.isr.photodiode.PhotodiodeCalib, and lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset.
Definition at line 513 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.fromTable | ( | cls, | |
| tableList, | |||
| ** | kwargs | ||
| ) |
Construct a calibration from a dictionary of properties.
Must be implemented by the specific calibration subclasses.
Parameters
----------
tableList : `list` [`lsst.afw.table.Table`]
List of tables of properties.
kwargs : `dict` or collections.abc.Mapping`, optional
Set of key=value options.
Returns
------
calib : `lsst.ip.isr.CalibType`
Constructed calibration.
Raises
------
NotImplementedError :
Raised if not implemented.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.linearize.Linearizer, lsst.ip.isr.photodiode.PhotodiodeCalib, lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset, and lsst.ip.isr.defects.Defects.
Definition at line 556 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.getMetadata | ( | self | ) |
Retrieve metadata associated with this calibration.
Returns
-------
meta : `lsst.daf.base.PropertyList`
Metadata. The returned `~lsst.daf.base.PropertyList` can be
modified by the caller and the changes will be written to
external files.
Definition at line 145 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.readFits | ( | cls, | |
| filename, | |||
| ** | kwargs | ||
| ) |
Read calibration data from a FITS file.
Parameters
----------
filename : `str`
Filename to read data from.
kwargs : `dict` or collections.abc.Mapping`, optional
Set of key=value pairs to pass to the ``fromTable``
method.
Returns
-------
calib : `lsst.ip.isr.IsrCalib`
Calibration contained within the file.
Definition at line 433 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.readText | ( | cls, | |
| filename, | |||
| ** | kwargs | ||
| ) |
Read calibration representation from a yaml/ecsv file.
Parameters
----------
filename : `str`
Name of the file containing the calibration definition.
kwargs : `dict` or collections.abc.Mapping`, optional
Set of key=value pairs to pass to the ``fromDict`` or
``fromTable`` methods.
Returns
-------
calib : `~lsst.ip.isr.IsrCalibType`
Calibration class.
Raises
------
RuntimeError :
Raised if the filename does not end in ".ecsv" or ".yaml".
Definition at line 347 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.requiredAttributes | ( | self | ) |
Definition at line 138 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.requiredAttributes | ( | self, | |
| value | |||
| ) |
Definition at line 142 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.setMetadata | ( | self, | |
| metadata | |||
| ) |
Store a copy of the supplied metadata with this calibration.
Parameters
----------
metadata : `lsst.daf.base.PropertyList`
Metadata to associate with the calibration. Will be copied and
overwrite existing metadata.
Definition at line 157 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.toDict | ( | self | ) |
Return a dictionary containing the calibration properties.
The dictionary should be able to be round-tripped through
`fromDict`.
Returns
-------
dictionary : `dict`
Dictionary of properties.
Raises
------
NotImplementedError :
Raised if not implemented.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.defects.Defects, lsst.ip.isr.linearize.Linearizer, lsst.ip.isr.photodiode.PhotodiodeCalib, and lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset.
Definition at line 537 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.toTable | ( | self | ) |
Return a list of tables containing the calibration properties.
The table list should be able to be round-tripped through
`fromDict`.
Returns
-------
tableList : `list` [`lsst.afw.table.Table`]
List of tables of properties.
Raises
------
NotImplementedError :
Raised if not implemented.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.defects.Defects, lsst.ip.isr.linearize.Linearizer, lsst.ip.isr.photodiode.PhotodiodeCalib, and lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset.
Definition at line 580 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.updateMetadata | ( | self, | |
camera = None, |
|||
detector = None, |
|||
filterName = None, |
|||
setCalibId = False, |
|||
setCalibInfo = False, |
|||
setDate = False, |
|||
| ** | kwargs | ||
| ) |
Update metadata keywords with new values.
Parameters
----------
camera : `lsst.afw.cameraGeom.Camera`, optional
Reference camera to use to set _instrument field.
detector : `lsst.afw.cameraGeom.Detector`, optional
Reference detector to use to set _detector* fields.
filterName : `str`, optional
Filter name to assign to this calibration.
setCalibId : `bool`, optional
Construct the _calibId field from other fields.
setCalibInfo : `bool`, optional
Set calibration parameters from metadata.
setDate : `bool`, optional
Ensure the metadata CALIBDATE fields are set to the current
datetime.
kwargs : `dict` or `collections.abc.Mapping`, optional
Set of key=value pairs to assign to the metadata.
Reimplemented in lsst.ip.isr.calibType.IsrProvenance, lsst.ip.isr.crosstalk.CrosstalkCalib, lsst.ip.isr.linearize.Linearizer, and lsst.ip.isr.ptcDataset.PhotonTransferCurveDataset.
Definition at line 179 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.validate | ( | self, | |
other = None |
|||
| ) |
Validate that this calibration is defined and can be used.
Parameters
----------
other : `object`, optional
Thing to validate against.
Returns
-------
valid : `bool`
Returns true if the calibration is valid and appropriate.
Reimplemented in lsst.ip.isr.linearize.Linearizer.
Definition at line 598 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.writeFits | ( | self, | |
| filename | |||
| ) |
Write calibration data to a FITS file.
Parameters
----------
filename : `str`
Filename to write data to.
Returns
-------
used : `str`
The name of the file used to write the data.
Definition at line 472 of file calibType.py.
| def lsst.ip.isr.calibType.IsrCalib.writeText | ( | self, | |
| filename, | |||
format = "auto" |
|||
| ) |
Write the calibration data to a text file.
Parameters
----------
filename : `str`
Name of the file to write.
format : `str`
Format to write the file as. Supported values are:
``"auto"`` : Determine filetype from filename.
``"yaml"`` : Write as yaml.
``"ecsv"`` : Write as ecsv.
Returns
-------
used : `str`
The name of the file used to write the data. This may
differ from the input if the format is explicitly chosen.
Raises
------
RuntimeError :
Raised if filename does not end in a known extension, or
if all information cannot be written.
Notes
-----
The file is written to YAML/ECSV format and will include any
associated metadata.
Definition at line 380 of file calibType.py.
| lsst.ip.isr.calibType.IsrCalib.log |
Definition at line 86 of file calibType.py.
| lsst.ip.isr.calibType.IsrCalib.requiredAttributes |
Definition at line 81 of file calibType.py.