LSST Applications g0d97872fb5+4fd969bb9d,g1653933729+34a971ddd9,g28da252d5a+072f89fe25,g2bbee38e9b+a99b0ab4cd,g2bc492864f+a99b0ab4cd,g2ca4be77d2+c0e3b27cd8,g2cdde0e794+704103fe75,g3156d2b45e+6e87dc994a,g347aa1857d+a99b0ab4cd,g35bb328faa+34a971ddd9,g3a166c0a6a+a99b0ab4cd,g3e281a1b8c+8ec26ec694,g4005a62e65+ba0306790b,g414038480c+9ed5ed841a,g569e0e2b34+cb4faa46ad,g5a97de2502+520531a62c,g717e5f8c0f+29153700a5,g7ede599f99+367733290c,g80478fca09+17051a22cc,g82479be7b0+f2f1ea0a87,g858d7b2824+29153700a5,g8b782ad322+29153700a5,g8cd86fa7b1+05420e7f7d,g9125e01d80+34a971ddd9,ga5288a1d22+e7f674aaf3,gae0086650b+34a971ddd9,gae74b0b5c6+45ef5cdc51,gb58c049af0+ace264a4f2,gc28159a63d+a99b0ab4cd,gcf0d15dbbd+8051a81198,gda6a2b7d83+8051a81198,gdaeeff99f8+7774323b41,gdf4d240d4a+34a971ddd9,ge2409df99d+cb167bac99,ge33fd446bb+29153700a5,ge79ae78c31+a99b0ab4cd,gf0baf85859+890af219f9,gf5289d68f6+9faa5c5784,w.2024.36
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux Class Reference
Inheritance diagram for lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux:
lsst.meas.base.diaCalculation.DiaObjectCalculationPlugin lsst.meas.base.catalogCalculation.CatalogCalculationPlugin lsst.meas.base.pluginsBase.BasePlugin

Public Member Functions

 __init__ (self, config, name, metadata, **kwargs)
 
 getExecutionOrder (cls)
 
 calculate (self, diaObjects, diaSources, filterDiaSources, band, **kwargs)
 

Public Attributes

 outputCols
 

Static Public Attributes

 ConfigClass = PercentileDiaPsfFluxConfig
 
list outputCols = []
 
str plugType = "multi"
 
bool needsFilter = True
 

Detailed Description

Compute percentiles of diaSource fluxes.

Definition at line 349 of file diaCalculationPlugins.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.__init__ ( self,
config,
name,
metadata,
** kwargs )

Reimplemented from lsst.meas.base.diaCalculation.DiaObjectCalculationPlugin.

Definition at line 359 of file diaCalculationPlugins.py.

359 def __init__(self, config, name, metadata, **kwargs):
360 DiaObjectCalculationPlugin.__init__(self,
361 config,
362 name,
363 metadata,
364 **kwargs)
365 self.outputCols = ["psfFluxPercentile{:02d}".format(percent)
366 for percent in self.config.percentiles]
367

Member Function Documentation

◆ calculate()

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.calculate ( self,
diaObjects,
diaSources,
filterDiaSources,
band,
** kwargs )
Compute the percentile fluxes of the point source flux.

Parameters
----------
diaObject : `dict`
    Summary object to store values in.
diaSources : `pandas.DataFrame`
    DataFrame representing all diaSources associated with this
    diaObject.
filterDiaSources : `pandas.DataFrame`
    DataFrame representing diaSources associated with this
    diaObject that are observed in the band pass ``band``.
band : `str`
    Simple, string name of the filter for the flux being calculated.
**kwargs
    Any additional keyword arguments that may be passed to the plugin.

Reimplemented from lsst.meas.base.diaCalculation.DiaObjectCalculationPlugin.

Definition at line 373 of file diaCalculationPlugins.py.

378 **kwargs):
379 """Compute the percentile fluxes of the point source flux.
380
381 Parameters
382 ----------
383 diaObject : `dict`
384 Summary object to store values in.
385 diaSources : `pandas.DataFrame`
386 DataFrame representing all diaSources associated with this
387 diaObject.
388 filterDiaSources : `pandas.DataFrame`
389 DataFrame representing diaSources associated with this
390 diaObject that are observed in the band pass ``band``.
391 band : `str`
392 Simple, string name of the filter for the flux being calculated.
393 **kwargs
394 Any additional keyword arguments that may be passed to the plugin.
395 """
396 pTileNames = []
397 dtype = None
398 for tilePercent in self.config.percentiles:
399 pTileName = "{}_psfFluxPercentile{:02d}".format(band,
400 tilePercent)
401 pTileNames.append(pTileName)
402 if pTileName not in diaObjects.columns:
403 diaObjects[pTileName] = np.nan
404 elif dtype is None:
405 dtype = diaObjects[pTileName].dtype
406
407 def _fluxPercentiles(df):
408 pTiles = np.nanpercentile(df["psfFlux"], self.config.percentiles)
409 return pd.Series(
410 dict((tileName, pTile)
411 for tileName, pTile in zip(pTileNames, pTiles)))
412 if dtype is None:
413 diaObjects.loc[:, pTileNames] = filterDiaSources.apply(_fluxPercentiles)
414 else:
415 diaObjects.loc[:, pTileNames] = filterDiaSources.apply(_fluxPercentiles).astype(dtype)
416
417

◆ getExecutionOrder()

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.getExecutionOrder ( cls)
Used to set the relative order of plugin execution.

    The values returned by `getExecutionOrder` are compared across all
    plugins, and smaller numbers run first.

    Notes
    -----
    `CatalogCalculationPlugin`\s must run with
    `BasePlugin.DEFAULT_CATALOGCALCULATION` or higher.

    All plugins must implement this method with an appropriate run level

Reimplemented from lsst.meas.base.catalogCalculation.CatalogCalculationPlugin.

Definition at line 369 of file diaCalculationPlugins.py.

369 def getExecutionOrder(cls):
370 return cls.DEFAULT_CATALOGCALCULATION
371

Member Data Documentation

◆ ConfigClass

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.ConfigClass = PercentileDiaPsfFluxConfig
static

Definition at line 353 of file diaCalculationPlugins.py.

◆ needsFilter

bool lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.needsFilter = True
static

Definition at line 357 of file diaCalculationPlugins.py.

◆ outputCols [1/2]

list lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.outputCols = []
static

Definition at line 355 of file diaCalculationPlugins.py.

◆ outputCols [2/2]

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.outputCols

Definition at line 365 of file diaCalculationPlugins.py.

◆ plugType

str lsst.meas.base.diaCalculationPlugins.PercentileDiaPsfFlux.plugType = "multi"
static

Definition at line 356 of file diaCalculationPlugins.py.


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