GetCoaddAsTemplateTask¶
- class lsst.ip.diffim.GetCoaddAsTemplateTask(config: Config | None = None, *, name: str | None = None, parentTask: Task | None = None, log: logging.Logger | lsst.utils.logging.LsstLogAdapter | None = None)¶
Bases:
TaskSubtask to retrieve coadd for use as an image difference template.
This is the default getTemplate Task to be run as a subtask by
pipe.tasks.ImageDifferenceTask.Methods Summary
Empty (clear) the metadata for this Task and all sub-Tasks.
Return coadd name for given task config
Get metadata for all tasks.
Get the task name as a hierarchical name including parent task names.
getName()Get the name of the task.
getOverlapPatchList(exposure, skyMap)Select the relevant tract and its patches that overlap with the science exposure.
Get a dictionary of all tasks as a shallow copy.
makeField(doc)Make a
lsst.pex.config.ConfigurableFieldfor this task.makeSubtask(name, **keyArgs)Create a subtask as a new instance as the
nameattribute of this task.run(tractInfo, patchList, skyCorners, ...[, ...])Determination of exposure dimensions and copying of pixels from overlapping patch regions.
runQuantum(exposure, butlerQC, skyMapRef, ...)Gen3 task entry point.
timer(name[, logLevel])Context manager to log performance data for an arbitrary block of code.
Methods Documentation
- getCoaddDatasetName()¶
Return coadd name for given task config
- Returns:
- CoaddDatasetName
string - TODO: This nearly duplicates a method in CoaddBaseTask (DM-11985)
- CoaddDatasetName
- 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.timeMethodis 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
- getOverlapPatchList(exposure, skyMap)¶
Select the relevant tract and its patches that overlap with the science exposure.
- Parameters:
- exposure
lsst.afw.image.Exposure The science exposure to define the sky region of the template coadd.
- skyMap
lsst.skymap.BaseSkyMap SkyMap object that corresponds to the template coadd.
- exposure
- Returns:
- result
tupleof tractInfolsst.skymap.TractInfoThe selected tract.
patchListlist[lsst.skymap.PatchInfo]List of all overlap patches of the selected tract.
skyCornerslist[lsst.geom.SpherePoint]Corners of the exposure in the sky in the order given by
lsst.geom.Box2D.getCorners.
- result
- getTaskDict() Dict[str, ReferenceType[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.ConfigurableFieldfor this task.- Parameters:
- doc
str Help text for the field.
- doc
- Returns:
- configurableField
lsst.pex.config.ConfigurableField A
ConfigurableFieldfor 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
nameattribute 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 ofConfigurableFieldorRegistryField.
- run(tractInfo, patchList, skyCorners, availableCoaddRefs, sensorRef=None, visitInfo=None)¶
Determination of exposure dimensions and copying of pixels from overlapping patch regions.
- Parameters:
- skyMap
lsst.skymap.BaseSkyMap SkyMap object that corresponds to the template coadd.
- tractInfo
lsst.skymap.TractInfo The selected tract.
- patchListiterable of
lsst.skymap.patchInfo.PatchInfo Patches to consider for making the template exposure.
- skyCorners
list[lsst.geom.SpherePoint] Sky corner coordinates to be covered by the template exposure.
- availableCoaddRefs
dict[int] Dictionary of spatially relevant retrieved coadd patches, indexed by their sequential patch number. Values are
lsst.daf.butler.DeferredDatasetHandleand.get()is called.- sensorRef
None Must always be
None. Gen2 parameters are no longer used.- visitInfo
lsst.afw.image.VisitInfo VisitInfo to make dcr model.
- skyMap
- Returns:
- templateExposure
lsst.afw.image.ExposureF The created template exposure.
- templateExposure
- runQuantum(exposure, butlerQC, skyMapRef, coaddExposureRefs)¶
Gen3 task entry point. Retrieve and mosaic a template coadd exposure that overlaps the science exposure.
- Parameters:
- exposure
lsst.afw.image.Exposure The science exposure to define the sky region of the template coadd.
- butlerQC
lsst.pipe.base.ButlerQuantumContext Butler like object that supports getting data by DatasetRef.
- skyMapRef
lsst.daf.butler.DatasetRef Reference to SkyMap object that corresponds to the template coadd.
- coaddExposureRefsiterable of
lsst.daf.butler.DeferredDatasetRef Iterable of references to the available template coadd patches.
- exposure
- Returns:
- result
lsst.pipe.base.Struct A struct with attibutes:
exposureTemplate coadd exposure assembled out of patches (
lsst.afw.image.ExposureF).sourcesAlways
Nonefor this subtask.
- result