StrayLightData¶
- 
class 
lsst.ip.isr.StrayLightData(camera=None, detector=None, log=None, **kwargs)¶ Bases:
lsst.ip.isr.IsrCalibAn abstract base class for rotator-dependent stray light information.
Attributes Summary
requiredAttributesMethods Summary
apply(target)Method to apply the calibration to the target object. calibInfoFromDict(dictionary)Handle common keywords. determineCalibClass(metadata, message)Attempt to find calibration class in metadata. evaluate(angle_start, angle_end, None] = None)Get a stray light array for a range of rotator angles. fromDetector(detector)Modify the calibration parameters to match the supplied detector. fromDict(dictionary, **kwargs)Construct a calibration from a dictionary of properties. fromTable(tableList, **kwargs)Construct a calibration from a dictionary of properties. getMetadata()Retrieve metadata associated with this calibration. readFits(filename, **kwargs)Read calibration data from a FITS file. readText(filename, **kwargs)Read calibration representation from a yaml/ecsv file. setMetadata(metadata)Store a copy of the supplied metadata with this calibration. toDict()Return a dictionary containing the calibration properties. toTable()Return a list of tables containing the calibration properties. updateMetadata([camera, detector, …])Update metadata keywords with new values. validate([other])Validate that this calibration is defined and can be used. writeFits(filename)Write calibration data to a FITS file. writeText(filename[, format])Write the calibration data to a text file. Attributes Documentation
- 
requiredAttributes¶ 
Methods Documentation
- 
apply(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.
- target : 
 
- 
calibInfoFromDict(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 : 
dictorlsst.daf.base.PropertyList Source for the common keywords.
Raises: - RuntimeError
 Raised if the dictionary does not match the expected OBSTYPE.
- dictionary : 
 
- 
classmethod 
determineCalibClass(metadata, message)¶ Attempt to find calibration class in metadata.
Parameters: Returns: - calibClass : 
object The class to use to read the file contents. Should be an
lsst.ip.isr.IsrCalibsubclass.
Raises: - ValueError
 Raised if the resulting calibClass is the base
lsst.ip.isr.IsrClass(which does not implement the content methods).
- calibClass : 
 
- 
evaluate(angle_start: lsst.geom.Angle, angle_end: Optional[lsst.geom.Angle, None] = None)¶ Get a stray light array for a range of rotator angles.
Parameters: Returns: - array : 
numpy.ndarray A stray-light background image for this exposure.
- array : 
 
- 
fromDetector(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
 Raised if not implemented by a subclass. This needs to be implemented by subclasses for each calibration type.
- detector : 
 
- 
classmethod 
fromDict(dictionary, **kwargs)¶ Construct a calibration from a dictionary of properties.
Must be implemented by the specific calibration subclasses.
Parameters: Returns: - calib : 
lsst.ip.isr.CalibType Constructed calibration.
Raises: - NotImplementedError
 Raised if not implemented.
- calib : 
 
- 
classmethod 
fromTable(tableList, **kwargs)¶ Construct a calibration from a dictionary of properties.
Must be implemented by the specific calibration subclasses.
Parameters: Returns: - calib : 
lsst.ip.isr.CalibType Constructed calibration.
Raises: - NotImplementedError
 Raised if not implemented.
- calib : 
 
- 
getMetadata()¶ Retrieve metadata associated with this calibration.
Returns: - meta : 
lsst.daf.base.PropertyList Metadata. The returned
PropertyListcan be modified by the caller and the changes will be written to external files.
- meta : 
 
- 
classmethod 
readFits(filename, **kwargs)¶ Read calibration data from a FITS file.
Parameters: Returns: - calib : 
lsst.ip.isr.IsrCalib Calibration contained within the file.
- calib : 
 
- 
classmethod 
readText(filename, **kwargs)¶ Read calibration representation from a yaml/ecsv file.
Parameters: Returns: - calib : 
IsrCalibType Calibration class.
Raises: - RuntimeError
 Raised if the filename does not end in “.ecsv” or “.yaml”.
- calib : 
 
- 
setMetadata(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.
- metadata : 
 
- 
toDict()¶ 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.
- dictionary : 
 
- 
toTable()¶ 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.
- tableList : 
 
- 
updateMetadata(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
_instrumentfield.- 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
_calibIdfield from other fields.- setCalibInfo : 
bool, optional Set calibration parameters from metadata.
- setDate : 
bool, optional Ensure the metadata
CALIBDATEfields are set to the current datetime.- kwargs : 
dictorcollections.abc.Mapping, optional Set of
key=valuepairs to assign to the metadata.
- camera : 
 
- 
validate(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.
- other : 
 
- 
writeFits(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.
- filename : 
 
- 
writeText(filename, format='auto')¶ Write the calibration data to a text file.
Parameters: 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.
- used : 
 
-