BrighterFatterKernelSolveTask¶
- class lsst.cp.pipe.BrighterFatterKernelSolveTask(*, config: PipelineTaskConfig | None = None, log: logging.Logger | LsstLogAdapter | None = None, initInputs: dict[str, Any] | None = None, **kwargs: Any)¶
- Bases: - PipelineTask- Measure appropriate Brighter-Fatter Kernel from the PTC dataset. - Attributes Summary - Methods Summary - averageCorrelations(xCorrList, name)- Average input correlations. - 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.ConfigurableFieldfor this task.- makeSubtask(name, **keyArgs)- Create a subtask as a new instance as the - nameattribute of this task.- quadraticCorrelations(xCorrList, fluxList, name)- Measure a quadratic correlation model. - run(inputPtc, dummy, camera, inputDims)- Combine covariance information from PTC into brighter-fatter kernels. - runQuantum(butlerQC, inputRefs, outputRefs)- Ensure that the input and output dimensions are passed along. - sampleCovModel(fluxes, noiseMatrix, gain, ...)- Sample the correlation model and measure widetile{C}_{ij} from Broughton et al. 2023 (eq. - successiveOverRelax(source[, maxIter, eLevel])- An implementation of the successive over relaxation (SOR) method. - timer(name[, logLevel])- Context manager to log performance data for an arbitrary block of code. - Attributes Documentation - Methods Documentation - averageCorrelations(xCorrList, name)¶
- Average input correlations. - Parameters:
- xCorrListlist[numpy.array]
- List of cross-correlations. These are expected to be square arrays. 
- namestr
- Name for log messages. 
 
- xCorrList
- Returns:
- meanXcorrnumpy.array, (N, N)
- The averaged cross-correlation. 
 
- meanXcorr
 
 - getFullMetadata() TaskMetadata¶
- Get metadata for all tasks. - Returns:
- metadataTaskMetadata
- 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:
- fullNamestr
- 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:
- taskNamestr
- 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:
- taskDictdict
- 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:
- docstr
- Help text for the field. 
 
- doc
- Returns:
- configurableFieldlsst.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:
- namestr
- 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 of- ConfigurableFieldor- RegistryField.
 - quadraticCorrelations(xCorrList, fluxList, name)¶
- Measure a quadratic correlation model. - Parameters:
- xCorrListlist[numpy.array]
- List of cross-correlations. These are expected to be square arrays. 
- fluxListnumpy.array, (Nflux,)
- Associated list of fluxes. 
- namestr
- Name for log messages. 
 
- xCorrList
- Returns:
- meanXcorrnumpy.array, (N, N)
- The averaged cross-correlation. 
 
- meanXcorr
 
 - run(inputPtc, dummy, camera, inputDims)¶
- Combine covariance information from PTC into brighter-fatter kernels. - Parameters:
- inputPtclsst.ip.isr.PhotonTransferCurveDataset
- PTC data containing per-amplifier covariance measurements. 
- dummylsst.afw.image.Exposure
- The exposure used to select the appropriate PTC dataset. In almost all circumstances, one of the input exposures used to generate the PTC dataset is the best option. 
- cameralsst.afw.cameraGeom.Camera
- Camera to use for camera geometry information. 
- inputDimslsst.daf.butler.DataCoordinateordict
- DataIds to use to populate the output calibration. 
 
- inputPtc
- Returns:
- resultslsst.pipe.base.Struct
- The resulst struct containing: - outputBfk
- Resulting Brighter-Fatter Kernel ( - lsst.ip.isr.BrighterFatterKernel).
 
 
- results
 
 - runQuantum(butlerQC, inputRefs, outputRefs)¶
- Ensure that the input and output dimensions are passed along. - Parameters:
- butlerQClsst.daf.butler.QuantumContext
- Butler to operate on. 
- inputRefslsst.pipe.base.InputQuantizedConnection
- Input data refs to load. 
- ouptutRefslsst.pipe.base.OutputQuantizedConnection
- Output data refs to persist. 
 
- butlerQC
 
 - sampleCovModel(fluxes, noiseMatrix, gain, covModelList, flux, name)¶
- Sample the correlation model and measure widetile{C}_{ij} from Broughton et al. 2023 (eq. 4) - Parameters:
- fluxeslist[float]
- List of fluxes (in ADU) 
- noiseMatrixnumpy.array, (N, N)
- Noise matrix 
- gainfloat
- Amplifier gain 
- covModelListnumpy.array, (N, N)
- List of covariance model matrices. These are expected to be square arrays. 
- fluxfloat
- Flux in electrons at which to sample the covariance model. 
- namestr
- Name for log messages. 
 
- fluxes
- Returns:
- covTildenumpy.array, (N, N)
- The calculated C-tilde from Broughton et al. 2023 (eq. 4). 
 
- covTilde
 
 - successiveOverRelax(source, maxIter=None, eLevel=None)¶
- An implementation of the successive over relaxation (SOR) method. - A numerical method for solving a system of linear equations with faster convergence than the Gauss-Seidel method. - Parameters:
- sourcenumpy.ndarray, (N, N)
- The input array. 
- maxIterint, optional
- Maximum number of iterations to attempt before aborting. 
- eLevelfloat, optional
- The target error level at which we deem convergence to have occurred. 
 
- source
- Returns:
- outputnumpy.ndarray, (N, N)
- The solution. 
 
- output