CrosstalkTask¶
- class lsst.ip.isr.CrosstalkTask(config: Config | None = None, *, name: str | None = None, parentTask: Task | None = None, log: logging.Logger | lsst.utils.logging.LsstLogAdapter | None = None)¶
Bases:
Task
Apply intra-detector crosstalk correction.
Methods Summary
Empty (clear) the metadata for this Task and all sub-Tasks.
Get metadata for all tasks.
Get the task name as a hierarchical name including parent task names.
getName
()Get the name of the task.
Get a dictionary of all tasks as a shallow copy.
makeField
(doc)Make a
lsst.pex.config.ConfigurableField
for this task.makeSubtask
(name, **keyArgs)Create a subtask as a new instance as the
name
attribute of this task.run
(exposure[, crosstalk, crosstalkSources, ...])Apply intra-detector crosstalk correction
timer
(name[, logLevel])Context manager to log performance data for an arbitrary block of code.
Methods Documentation
- getFullMetadata() TaskMetadata ¶
Get metadata for all tasks.
- Returns:
- metadata
TaskMetadata
The keys are the full task name. Values are metadata for the top-level task and all subtasks, sub-subtasks, etc.
- metadata
Notes
The returned metadata includes timing information (if
@timer.timeMethod
is used) and any metadata set by the task. The name of each item consists of the full task name with.
replaced by:
, followed by.
and the name of the item, e.g.:topLevelTaskName:subtaskName:subsubtaskName.itemName
using
:
in the full task name disambiguates the rare situation that a task has a subtask and a metadata item with the same name.
- getFullName() str ¶
Get the task name as a hierarchical name including parent task names.
- Returns:
- fullName
str
The full name consists of the name of the parent task and each subtask separated by periods. For example:
The full name of top-level task “top” is simply “top”.
The full name of subtask “sub” of top-level task “top” is “top.sub”.
The full name of subtask “sub2” of subtask “sub” of top-level task “top” is “top.sub.sub2”.
- fullName
- getName() str ¶
Get the name of the task.
- Returns:
- taskName
str
Name of the task.
- taskName
See also
getFullName
Get the full name of the task.
- getTaskDict() dict[str, weakref.ReferenceType[lsst.pipe.base.task.Task]] ¶
Get a dictionary of all tasks as a shallow copy.
- Returns:
- taskDict
dict
Dictionary containing full task name: task object for the top-level task and all subtasks, sub-subtasks, etc.
- taskDict
- classmethod makeField(doc: str) ConfigurableField ¶
Make a
lsst.pex.config.ConfigurableField
for this task.- Parameters:
- doc
str
Help text for the field.
- doc
- Returns:
- configurableField
lsst.pex.config.ConfigurableField
A
ConfigurableField
for this task.
- configurableField
Examples
Provides a convenient way to specify this task is a subtask of another task.
Here is an example of use:
class OtherTaskConfig(lsst.pex.config.Config): aSubtask = ATaskClass.makeField("brief description of task")
- makeSubtask(name: str, **keyArgs: Any) None ¶
Create a subtask as a new instance as the
name
attribute of this task.- Parameters:
- name
str
Brief name of the subtask.
- **keyArgs
Extra keyword arguments used to construct the task. The following arguments are automatically provided and cannot be overridden:
config
.parentTask
.
- name
Notes
The subtask must be defined by
Task.config.name
, an instance ofConfigurableField
orRegistryField
.
- run(exposure, crosstalk=None, crosstalkSources=None, isTrimmed=False, camera=None, parallelOverscanRegion=False, detectorConfig=None, fullAmplifier=False, gains=None)¶
Apply intra-detector crosstalk correction
- Parameters:
- exposure
lsst.afw.image.Exposure
Exposure for which to remove crosstalk.
- crosstalkCalib
lsst.ip.isr.CrosstalkCalib
, optional External crosstalk calibration to apply. Constructed from detector if not found.
- crosstalkSources
defaultdict
, optional Image data for other detectors that are sources of crosstalk in exposure. The keys are expected to be names of the other detectors, with the values containing
lsst.afw.image.Exposure
at the same level of processing asexposure
. The default for intra-detector crosstalk here is None.- isTrimmed
bool
, optional The image is already trimmed. This should no longer be needed once DM-15409 is resolved.
- camera
lsst.afw.cameraGeom.Camera
, optional Camera associated with this exposure. Only used for inter-chip matching.
- parallelOverscanRegion
bool
, optional Do subtraction in parallel overscan region (only)?
- detectorConfig
lsst.ip.isr.OverscanDetectorConfig
, optional Per-amplifier configs used when parallelOverscanRegion=True.
- fullAmplifier
bool
, optional Use full amplifier and not just imaging region.
- gains
dict
[str
,float
], optional Dictionary of amp name to gain. Required if there is a unit mismatch between the exposure and the crosstalk matrix.
- exposure
- Raises:
- RuntimeError
Raised if called for a detector that does not have a crosstalk correction. Also raised if the crosstalkSource is not an expected type.