CrosstalkFilterTask¶
- class lsst.cp.pipe.CrosstalkFilterTask(*, config: PipelineTaskConfig | None = None, log: logging.Logger | LsstLogAdapter | None = None, initInputs: dict[str, Any] | None = None, **kwargs: Any)¶
Bases:
PipelineTaskTask to compare crosstalk solutions between detectors, to identify and remove outliers.
Attributes Summary
Whether this task can be run by an executor that uses subprocesses for parallelism.
Methods Summary
Empty (clear) the metadata for this Task and all sub-Tasks.
find_outliers(matrix0, matrix1)Do checks to see if an element of the matrix is out-of-family.
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.ConfigurableFieldfor this task.makeSubtask(name, **keyArgs)Create a subtask as a new instance as the
nameattribute of this task.replace_outliers(matrix0, matrix1, isBad, ...)Do checks to see if an element of the matrix is out-of-family.
run(inputCrosstalk, camera, inputDims, ...)Compare crosstalk solutions to produce filtered crosstalk calibrations.
runQuantum(butlerQC, inputRefs, outputRefs)Ensure that the input and output dimensions are passed along.
timer(name[, logLevel])Context manager to log performance data for an arbitrary block of code.
Attributes Documentation
- canMultiprocess: ClassVar[bool] = True¶
Whether this task can be run by an executor that uses subprocesses for parallelism.
Methods Documentation
- find_outliers(matrix0, matrix1)¶
Do checks to see if an element of the matrix is out-of-family.
- Parameters:
- matrix0
np.ndarray, (Ndet, Namp, Namp) Matrix holding the 0th-order terms.
- matrix1
np.ndarray, (Ndet, Namp, Namp) Matrix holding the 1st-order terms.
- matrix0
- Returns:
- results
lsst.pipe.base.Struct Results struct containing
median0Median in-family value (
np.ndarray(Namp, Namp)).stdev0MAD effective sigma in-family value (
np.ndarray(Namp, Namp)).median1Median in-family value (
np.ndarray(Namp, Namp)).stdev1MAD effective sigma in-family value (
np.ndarray(Namp, Namp)).isBadBoolean indicator that an element has been replaced (
np.ndarray(Ndet, Namp, Namp)).
- results
- Raises:
- ValueError
Raised if the inputs have a mismatch in size.
- 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
- getName() str¶
Get the name of the task.
- Returns:
- taskName
str Name of the task.
- taskName
See also
getFullNameGet 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.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.
- replace_outliers(matrix0, matrix1, isBad, median0, median1)¶
Do checks to see if an element of the matrix is out-of-family.
- Parameters:
- matrix0
np.ndarray, (Ndet, Namp, Namp) Matrix holding the 0th-order terms.
- matrix1
np.ndarray, (Ndet, Namp, Namp) Matrix holding the 1st-order terms.
- isBad
np.ndarray, (Ndet, Namp, Namp) Matrix holding the boolean “is bad”.
- median0
np.ndarray, (Namp, Namp) Matrix of median 0th-order terms.
- median1
np.ndarray, (Namp, Namp) Matrix of median 1st-order terms.
- matrix0
- Returns:
- results
lsst.pipe.base.Struct Results struct containing
new_matrix0Replacement matrix0, with median substitutions. (
np.ndarray(Ndet, Namp, Namp)).new_matrix1Replacement matrix1, with median substitutions. (
np.ndarray(Ndet, Namp, Namp)).
- results
- Raises:
- ValueError
Raised if the inputs have a mismatch in size.
- run(inputCrosstalk, camera, inputDims, outputDims)¶
Compare crosstalk solutions to produce filtered crosstalk calibrations.
- Parameters:
- inputCrosstalk
list[lsst.ip.isr.CrosstalkCalib] List of crosstalk solutions to filter.
- camera
lsst.afw.cameraGeom.Camera - Input camera.
inputDims :
list[lsst.daf.butler.DataCoordinate]
DataIds to use to construct provenance.
- outputDims
list[lsst.daf.butler.DataCoordinate] DataIds to use to populate the output calibration.
- inputCrosstalk
- Returns:
- results
lsst.pipe.base.Struct The results struct containing:
outputCrosstalkFinal crosstalk calibration (
lsst.ip.isr.CrosstalkCalib).
- results
- Raises:
- RuntimeError
Raised if something goes bad. CZW/Fix me.
- runQuantum(butlerQC, inputRefs, outputRefs)¶
Ensure that the input and output dimensions are passed along.
- Parameters:
- butlerQC
lsst.daf.butler.QuantumContext Butler to operate on.
- inputRefs
lsst.pipe.base.InputQuantizedConnection Input data refs to load.
- ouptutRefs
lsst.pipe.base.OutputQuantizedConnection Output data refs to persist.
- butlerQC