LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
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: