Coverage for python/lsst/analysis/tools/analysisParts/baseSources.py: 29%
21 statements
« prev ^ index » next coverage.py v7.2.3, created at 2023-04-21 10:04 +0000
« prev ^ index » next coverage.py v7.2.3, created at 2023-04-21 10:04 +0000
1from lsst.analysis.tools.actions.scalar import CountUniqueAction
2from lsst.analysis.tools.actions.vector import DownselectVector, LoadVector, ThresholdSelector, VectorSelector
3from lsst.analysis.tools.interfaces import AnalysisTool
5__all__ = ("BaseSources",)
8class BaseSources(AnalysisTool):
9 """Base class for counting associated and unassociated sources."""
11 def setDefaults(self):
12 super().setDefaults()
14 self.process.buildActions.loadVectorSources = LoadVector()
15 self.process.buildActions.associatedVectorSelector = ThresholdSelector()
16 self.process.buildActions.unassociatedVectorSelector = ThresholdSelector()
18 # assign keys for PSF and AP Flux
19 self.process.buildActions.loadVectorSources.vectorKey = "nDiaSources"
20 self.process.buildActions.associatedVectorSelector.vectorKey = "nDiaSources"
21 self.process.buildActions.associatedVectorSelector.op = "gt"
22 self.process.buildActions.associatedVectorSelector.threshold = 1.0
23 self.process.buildActions.unassociatedVectorSelector.vectorKey = "nDiaSources"
24 self.process.buildActions.unassociatedVectorSelector.op = "le"
25 self.process.buildActions.unassociatedVectorSelector.threshold = 1.0
27 self.process.filterActions.allSources = VectorSelector(vectorKey="nDiaSources")
28 self.process.filterActions.associatedVector = DownselectVector(
29 vectorKey="nDiaSources", selector=self.process.buildActions.associatedVectorSelector
30 )
31 self.process.filterActions.unassociatedVector = DownselectVector(
32 vectorKey="nDiaSources", selector=self.process.buildActions.unassociatedVectorSelector
33 )
35 self.process.buildActions.uniqueSources = CountUniqueAction(vectorKey="nDiaSources")