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.meas.base.diaCalculationPlugins.PercentileDiaPsFlux Class Reference
Inheritance diagram for lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux:
lsst.meas.base.diaCalculation.DiaObjectCalculationPlugin lsst.meas.base.catalogCalculation.CatalogCalculationPlugin lsst.meas.base.pluginsBase.BasePlugin

Public Member Functions

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

Public Attributes

 outputCols
 

Static Public Attributes

 ConfigClass = PercentileDiaPsFluxConfig
 
list outputCols = []
 
string plugType = "multi"
 
bool needsFilter = True
 

Detailed Description

Compute percentiles of diaSource fluxes.

Definition at line 347 of file diaCalculationPlugins.py.

Constructor & Destructor Documentation

◆ __init__()

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

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

Definition at line 357 of file diaCalculationPlugins.py.

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

Member Function Documentation

◆ calculate()

def lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux.calculate (   self,
  diaObjects,
  diaSources,
  filterDiaSources,
  filterName,
**  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 ``filterName``.
filterName : `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 371 of file diaCalculationPlugins.py.

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

◆ getExecutionOrder()

def lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux.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 367 of file diaCalculationPlugins.py.

367 def getExecutionOrder(cls):
368 return cls.DEFAULT_CATALOGCALCULATION
369

Member Data Documentation

◆ ConfigClass

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux.ConfigClass = PercentileDiaPsFluxConfig
static

Definition at line 351 of file diaCalculationPlugins.py.

◆ needsFilter

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

Definition at line 355 of file diaCalculationPlugins.py.

◆ outputCols [1/2]

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

Definition at line 353 of file diaCalculationPlugins.py.

◆ outputCols [2/2]

lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux.outputCols

Definition at line 363 of file diaCalculationPlugins.py.

◆ plugType

string lsst.meas.base.diaCalculationPlugins.PercentileDiaPsFlux.plugType = "multi"
static

Definition at line 354 of file diaCalculationPlugins.py.


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