FitAffineWcsTask¶
- class lsst.meas.astrom.FitAffineWcsTask(config: Config | None = None, *, name: str | None = None, parentTask: Task | None = None, log: logging.Logger | lsst.utils.logging.LsstLogAdapter | None = None)¶
- Bases: - Task- Fit a TAN-SIP WCS given a list of reference object/source matches. - This WCS fitter should be used on top of a cameraGeom distortion model as the model assumes that only a shift the WCS center position and a small affine transform are required. - Methods Summary - Empty (clear) the metadata for this Task and all sub-Tasks. - fitWcs(matches, initWcs[, bbox, refCat, ...])- Fit a simple Affine transform with a shift to the matches and update the WCS. - 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.- timer(name[, logLevel])- Context manager to log performance data for an arbitrary block of code. - Methods Documentation - fitWcs(matches, initWcs, bbox=None, refCat=None, sourceCat=None, exposure=None)¶
- Fit a simple Affine transform with a shift to the matches and update the WCS. - This method assumes that the distortion model of the telescope is applied correctly and is accurate with only a slight rotation, rotation, and “squish” required to fit to the reference locations. - Parameters:
- matcheslistoflsst.afw.table.ReferenceMatch
- The following fields are read: - match.first (reference object) coord 
- match.second (source) centroid 
 - The following fields are written: - match.first (reference object) centroid, 
- match.second (source) centroid 
- match.distance (on sky separation, in radians) 
 
- initWcslsst.afw.geom.SkyWcs
- initial WCS 
- bboxlsst.geom.Box2I
- Ignored; present for consistency with FitSipDistortionTask. 
- refCatlsst.afw.table.SimpleCatalog
- reference object catalog, or None. If provided then all centroids are updated with the new WCS, otherwise only the centroids for ref objects in matches are updated. Required fields are “centroid_x”, “centroid_y”, “coord_ra”, and “coord_dec”. 
- sourceCatlsst.afw.table.SourceCatalog
- source catalog, or None. If provided then coords are updated with the new WCS; otherwise only the coords for sources in matches are updated. Required fields are “slot_Centroid_x”, “slot_Centroid_y”, and “coord_ra”, and “coord_dec”. 
- exposurelsst.afw.image.Exposure
- Ignored; present for consistency with FitSipDistortionTask. 
 
- matches
- Returns:
- resultlsst.pipe.base.Struct
- with the following fields: - wcs: the fit WCS (- lsst.afw.geom.SkyWcs)
- scatterOnSky: median on-sky separation between reference objects and sources in “matches” (- lsst.afw.geom.Angle)
 
 
- result
 
 - 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.