LSST Applications g02d81e74bb+86cf3d8bc9,g180d380827+7a4e862ed4,g2079a07aa2+86d27d4dc4,g2305ad1205+e1ca1c66fa,g29320951ab+012e1474a1,g295015adf3+341ea1ce94,g2bbee38e9b+0e5473021a,g337abbeb29+0e5473021a,g33d1c0ed96+0e5473021a,g3a166c0a6a+0e5473021a,g3ddfee87b4+c429d67c83,g48712c4677+f88676dd22,g487adcacf7+27e1e21933,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+b41db86c35,g5a732f18d5+53520f316c,g64a986408d+86cf3d8bc9,g858d7b2824+86cf3d8bc9,g8a8a8dda67+585e252eca,g99cad8db69+84912a7fdc,g9ddcbc5298+9a081db1e4,ga1e77700b3+15fc3df1f7,ga8c6da7877+a2b54eae19,gb0e22166c9+60f28cb32d,gba4ed39666+c2a2e4ac27,gbb8dafda3b+6681f309db,gc120e1dc64+f0fcc2f6d8,gc28159a63d+0e5473021a,gcf0d15dbbd+c429d67c83,gdaeeff99f8+f9a426f77a,ge6526c86ff+0433e6603d,ge79ae78c31+0e5473021a,gee10cc3b42+585e252eca,gff1a9f87cc+86cf3d8bc9,w.2024.17
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | Static Protected Attributes | List of all members
lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask Class Reference
Inheritance diagram for lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask:
lsst.fgcmcal.fgcmCalibrateTractBase.FgcmCalibrateTractBaseTask

Public Member Functions

 __init__ (self, initInputs=None, **kwargs)
 
 runQuantum (self, butlerQC, inputRefs, outputRefs)
 

Public Attributes

 sourceSchema
 

Static Public Attributes

 ConfigClass = FgcmCalibrateTractTableConfig
 
bool canMultiprocess = False
 

Static Protected Attributes

str _DefaultName = "fgcmCalibrateTractTable"
 

Detailed Description

Calibrate a single tract using fgcmcal, using sourceTable_visit (parquet)
input catalogs.

Definition at line 153 of file fgcmCalibrateTractTable.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask.__init__ ( self,
initInputs = None,
** kwargs )

Reimplemented from lsst.fgcmcal.fgcmCalibrateTractBase.FgcmCalibrateTractBaseTask.

Definition at line 163 of file fgcmCalibrateTractTable.py.

163 def __init__(self, initInputs=None, **kwargs):
164 super().__init__(initInputs=initInputs, **kwargs)
165 if initInputs is not None:
166 self.sourceSchema = initInputs["sourceSchema"].schema
167

Member Function Documentation

◆ runQuantum()

lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask.runQuantum ( self,
butlerQC,
inputRefs,
outputRefs )

Definition at line 168 of file fgcmCalibrateTractTable.py.

168 def runQuantum(self, butlerQC, inputRefs, outputRefs):
169 handleDict = butlerQC.get(inputRefs)
170
171 self.log.info("Running with %d sourceTable_visit handles", (len(handleDict['source_catalogs'])))
172
173 # Run the build stars tasks
174 tract = butlerQC.quantum.dataId['tract']
175
176 handleDict['sourceSchema'] = self.sourceSchema
177
178 sourceTableHandles = handleDict['source_catalogs']
179 sourceTableHandleDict = {sourceTableHandle.dataId['visit']: sourceTableHandle for
180 sourceTableHandle in sourceTableHandles}
181
182 visitSummaryHandles = handleDict['visitSummary']
183 visitSummaryHandleDict = {visitSummaryHandle.dataId['visit']: visitSummaryHandle for
184 visitSummaryHandle in visitSummaryHandles}
185
186 handleDict['sourceTableHandleDict'] = sourceTableHandleDict
187 handleDict['visitSummaryHandleDict'] = visitSummaryHandleDict
188
189 # And the outputs
190 if self.config.fgcmOutputProducts.doZeropointOutput:
191 photoCalibRefDict = {photoCalibRef.dataId['visit']:
192 photoCalibRef for photoCalibRef in outputRefs.fgcmPhotoCalib}
193 handleDict['fgcmPhotoCalibs'] = photoCalibRefDict
194
195 if self.config.fgcmOutputProducts.doAtmosphereOutput:
196 atmRefDict = {atmRef.dataId['visit']: atmRef for
197 atmRef in outputRefs.fgcmTransmissionAtmosphere}
198 handleDict['fgcmTransmissionAtmospheres'] = atmRefDict
199
200 if self.config.fgcmBuildStars.doReferenceMatches:
201 refConfig = LoadReferenceObjectsConfig()
202 refConfig.filterMap = self.config.fgcmBuildStars.fgcmLoadReferenceCatalog.filterMap
203 loader = ReferenceObjectLoader(dataIds=[ref.datasetRef.dataId
204 for ref in inputRefs.refCat],
205 refCats=butlerQC.get(inputRefs.refCat),
206 name=self.config.connections.refCat,
207 config=refConfig,
208 log=self.log)
209 buildStarsRefObjLoader = loader
210 else:
211 buildStarsRefObjLoader = None
212
213 if self.config.fgcmOutputProducts.doReferenceCalibration:
214 refConfig = self.config.fgcmOutputProducts.refObjLoader
215 loader = ReferenceObjectLoader(dataIds=[ref.datasetRef.dataId
216 for ref in inputRefs.refCat],
217 refCats=butlerQC.get(inputRefs.refCat),
218 name=self.config.connections.refCat,
219 config=refConfig,
220 log=self.log)
221 self.fgcmOutputProducts.refObjLoader = loader
222
223 struct = self.run(handleDict, tract,
224 buildStarsRefObjLoader=buildStarsRefObjLoader)
225
226 if struct.photoCalibCatalogs is not None:
227 self.log.info("Outputting photoCalib catalogs.")
228 for visit, expCatalog in struct.photoCalibCatalogs:
229 butlerQC.put(expCatalog, photoCalibRefDict[visit])
230 self.log.info("Done outputting photoCalib catalogs.")
231
232 if struct.atmospheres is not None:
233 self.log.info("Outputting atmosphere transmission files.")
234 for visit, atm in struct.atmospheres:
235 butlerQC.put(atm, atmRefDict[visit])
236 self.log.info("Done outputting atmosphere files.")
237
238 # Turn raw repeatability into simple catalog for persistence
239 schema = afwTable.Schema()
240 schema.addField('rawRepeatability', type=np.float64,
241 doc="Per-band raw repeatability in FGCM calibration.")
242 repeatabilityCat = afwTable.BaseCatalog(schema)
243 repeatabilityCat.resize(len(struct.repeatability))
244 repeatabilityCat['rawRepeatability'][:] = struct.repeatability
245
246 butlerQC.put(repeatabilityCat, outputRefs.fgcmRepeatability)
247
248 return
Defines the fields and offsets for a table.
Definition Schema.h:51

Member Data Documentation

◆ _DefaultName

str lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask._DefaultName = "fgcmCalibrateTractTable"
staticprotected

Definition at line 159 of file fgcmCalibrateTractTable.py.

◆ canMultiprocess

bool lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask.canMultiprocess = False
static

Definition at line 161 of file fgcmCalibrateTractTable.py.

◆ ConfigClass

lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask.ConfigClass = FgcmCalibrateTractTableConfig
static

Definition at line 158 of file fgcmCalibrateTractTable.py.

◆ sourceSchema

lsst.fgcmcal.fgcmCalibrateTractTable.FgcmCalibrateTractTableTask.sourceSchema

Definition at line 166 of file fgcmCalibrateTractTable.py.


The documentation for this class was generated from the following file: