LSST Applications g0da5cf3356+25b44625d0,g17e5ecfddb+50a5ac4092,g1c76d35bf8+585f0f68a2,g295839609d+8ef6456700,g2e2c1a68ba+cc1f6f037e,g38293774b4+62d12e78cb,g3b44f30a73+2891c76795,g48ccf36440+885b902d19,g4b2f1765b6+0c565e8f25,g5320a0a9f6+bd4bf1dc76,g56364267ca+403c24672b,g56b687f8c9+585f0f68a2,g5c4744a4d9+78cd207961,g5ffd174ac0+bd4bf1dc76,g6075d09f38+3075de592a,g667d525e37+cacede5508,g6f3e93b5a3+da81c812ee,g71f27ac40c+cacede5508,g7212e027e3+eb621d73aa,g774830318a+18d2b9fa6c,g7985c39107+62d12e78cb,g79ca90bc5c+fa2cc03294,g881bdbfe6c+cacede5508,g91fc1fa0cf+82a115f028,g961520b1fb+2534687f64,g96f01af41f+f2060f23b6,g9ca82378b8+cacede5508,g9d27549199+78cd207961,gb065e2a02a+ad48cbcda4,gb1df4690d6+585f0f68a2,gb35d6563ee+62d12e78cb,gbc3249ced9+bd4bf1dc76,gbec6a3398f+bd4bf1dc76,gd01420fc67+bd4bf1dc76,gd59336e7c4+c7bb92e648,gf46e8334de+81c9a61069,gfed783d017+bd4bf1dc76,v25.0.1.rc3
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.pipe.tasks.fit_multiband.MultibandFitTask Class Reference
Inheritance diagram for lsst.pipe.tasks.fit_multiband.MultibandFitTask:

Public Member Functions

def __init__ (self, initInputs, **kwargs)
 
def runQuantum (self, butlerQC, inputRefs, outputRefs)
 
pipeBase.Struct run (self, List[CatalogExposure] catexps, afwTable.SourceCatalog cat_ref)
 

Public Attributes

 cat_output_schema
 

Static Public Attributes

 ConfigClass = MultibandFitConfig
 

Detailed Description

Fit deblended exposures in multiple bands simultaneously.

It is generally assumed but not enforced (except optionally by the
configurable `fit_multiband` subtask) that there is only one exposure
per band, presumably a coadd.

Definition at line 289 of file fit_multiband.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.pipe.tasks.fit_multiband.MultibandFitTask.__init__ (   self,
  initInputs,
**  kwargs 
)

Definition at line 299 of file fit_multiband.py.

299 def __init__(self, initInputs, **kwargs):
300 super().__init__(initInputs=initInputs, **kwargs)
301 self.makeSubtask("fit_multiband", schema=initInputs["cat_ref_schema"].schema)
302 self.cat_output_schema = afwTable.SourceCatalog(self.fit_multiband.schema)
303

Member Function Documentation

◆ run()

pipeBase.Struct lsst.pipe.tasks.fit_multiband.MultibandFitTask.run (   self,
List[CatalogExposure catexps,
afwTable.SourceCatalog  cat_ref 
)
Fit sources from a reference catalog using data from multiple
exposures in the same region (patch).

Parameters
----------
catexps : `typing.List [CatalogExposure]`
    A list of catalog-exposure pairs in a given band.
cat_ref : `lsst.afw.table.SourceCatalog`
    A reference source catalog to fit.

Returns
-------
retStruct : `lsst.pipe.base.Struct`
    A struct with a cat_output attribute containing the output
    measurement catalog.

Notes
-----
Subtasks may have further requirements; see `MultibandFitSubTask.run`.

Definition at line 326 of file fit_multiband.py.

326 def run(self, catexps: List[CatalogExposure], cat_ref: afwTable.SourceCatalog) -> pipeBase.Struct:
327 """Fit sources from a reference catalog using data from multiple
328 exposures in the same region (patch).
329
330 Parameters
331 ----------
332 catexps : `typing.List [CatalogExposure]`
333 A list of catalog-exposure pairs in a given band.
335 A reference source catalog to fit.
336
337 Returns
338 -------
339 retStruct : `lsst.pipe.base.Struct`
340 A struct with a cat_output attribute containing the output
341 measurement catalog.
342
343 Notes
344 -----
345 Subtasks may have further requirements; see `MultibandFitSubTask.run`.
346 """
347 cat_output = self.fit_multiband.run(catexps, cat_ref).output
348 retStruct = pipeBase.Struct(cat_output=cat_output)
349 return retStruct

◆ runQuantum()

def lsst.pipe.tasks.fit_multiband.MultibandFitTask.runQuantum (   self,
  butlerQC,
  inputRefs,
  outputRefs 
)

Definition at line 304 of file fit_multiband.py.

304 def runQuantum(self, butlerQC, inputRefs, outputRefs):
305 inputs = butlerQC.get(inputRefs)
306 id_tp = ExposureIdInfo.fromDataId(butlerQC.quantum.dataId, "tract_patch").expId
307 input_refs_objs = [(inputRefs.cats_meas, inputs['cats_meas']), (inputRefs.coadds, inputs['coadds'])]
308 cats, exps = [
309 {dRef.dataId: obj for dRef, obj in zip(refs, objs)}
310 for refs, objs in input_refs_objs
311 ]
312 dataIds = set(cats).union(set(exps))
313 catexps = [
314 CatalogExposure(
315 catalog=cats.get(dataId), exposure=exps.get(dataId), dataId=dataId, id_tract_patch=id_tp,
316 )
317 for dataId in dataIds
318 ]
319 outputs = self.run(catexps=catexps, cat_ref=inputs['cat_ref'])
320 butlerQC.put(outputs, outputRefs)
321 # Validate the output catalog's schema and raise if inconsistent (after output to allow debugging)
322 if outputs.cat_output.schema != self.cat_output_schema.schema:
323 raise RuntimeError(f'{__class__}.config.fit_multiband.run schema != initOutput schema:'
324 f' {outputs.cat_output.schema} vs {self.cat_output_schema.schema}')
325
daf::base::PropertySet * set
Definition: fits.cc:927

Member Data Documentation

◆ cat_output_schema

lsst.pipe.tasks.fit_multiband.MultibandFitTask.cat_output_schema

Definition at line 302 of file fit_multiband.py.

◆ ConfigClass

lsst.pipe.tasks.fit_multiband.MultibandFitTask.ConfigClass = MultibandFitConfig
static

Definition at line 296 of file fit_multiband.py.


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