LSST Applications g00274db5b6+edbf708997,g00d0e8bbd7+edbf708997,g199a45376c+5137f08352,g1fd858c14a+1d4b6db739,g262e1987ae+f4d9505c4f,g29ae962dfc+7156fb1a53,g2cef7863aa+73c82f25e4,g35bb328faa+edbf708997,g3e17d7035e+5b3adc59f5,g3fd5ace14f+852fa6fbcb,g47891489e3+6dc8069a4c,g53246c7159+edbf708997,g64539dfbff+9f17e571f4,g67b6fd64d1+6dc8069a4c,g74acd417e5+ae494d68d9,g786e29fd12+af89c03590,g7ae74a0b1c+a25e60b391,g7aefaa3e3d+536efcc10a,g7cc15d900a+d121454f8d,g87389fa792+a4172ec7da,g89139ef638+6dc8069a4c,g8d7436a09f+28c28d8d6d,g8ea07a8fe4+db21c37724,g92c671f44c+9f17e571f4,g98df359435+b2e6376b13,g99af87f6a8+b0f4ad7b8d,gac66b60396+966efe6077,gb88ae4c679+7dec8f19df,gbaa8f7a6c5+38b34f4976,gbf99507273+edbf708997,gc24b5d6ed1+9f17e571f4,gca7fc764a6+6dc8069a4c,gcc769fe2a4+97d0256649,gd7ef33dd92+6dc8069a4c,gdab6d2f7ff+ae494d68d9,gdbb4c4dda9+9f17e571f4,ge410e46f29+6dc8069a4c,geaed405ab2+e194be0d2b,w.2025.47
LSST Data Management Base Package
Loading...
Searching...
No Matches
lsst.meas.algorithms.sourceSelector.ReferenceSourceSelectorTask Class Reference
Inheritance diagram for lsst.meas.algorithms.sourceSelector.ReferenceSourceSelectorTask:
lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask

Public Member Functions

 selectSources (self, sourceCat, matches=None, exposure=None)
 
 run (self, sourceCat, sourceSelectedField=None, matches=None, exposure=None)
 

Static Public Attributes

 ConfigClass = BaseSourceSelectorConfig
 
bool usesMatches = False
 

Static Protected Attributes

str _DefaultName = "sourceSelector"
 

Detailed Description

Reference source selector

This selects reference sources by (optionally) applying each of a
magnitude limit, flag requirements and color limits.

Definition at line 802 of file sourceSelector.py.

Member Function Documentation

◆ run()

lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask.run ( self,
sourceCat,
sourceSelectedField = None,
matches = None,
exposure = None )
inherited
Select sources and return them.

The input catalog must be contiguous in memory.

Parameters
----------
sourceCat : Various table formats
    Catalog of sources to select from. Can be
    `lsst.afw.table.SourceCatalog` or `pandas.DataFrame` or
    `astropy.table.Table`,
sourceSelectedField : `str` or None
    Name of flag field in sourceCat to set for selected sources.
    If set, will modify sourceCat in-place.
matches : `list` of `lsst.afw.table.ReferenceMatch` or None
    List of matches to use for source selection.
    If usesMatches is set in source selector this field is required.
    If not, it is ignored.
exposure : `lsst.afw.image.Exposure` or None
    The exposure the catalog was built from; used for debug display.

Returns
-------
struct : `lsst.pipe.base.Struct`
    The struct contains the following data:

    ``sourceCat``
        The catalog of sources that were selected.
        (may not be memory-contiguous)
        (`lsst.afw.table.SourceCatalog` or `pandas.DataFrame`
        or `astropy.table.Table`)
    ``selected``
        Boolean array of sources that were selected, same length as
        sourceCat.
        (`numpy.ndarray` of `bool`)

Raises
------
RuntimeError
    Raised if ``sourceCat`` is not contiguous.

Definition at line 72 of file sourceSelector.py.

72 def run(self, sourceCat, sourceSelectedField=None, matches=None, exposure=None):
73 """Select sources and return them.
74
75 The input catalog must be contiguous in memory.
76
77 Parameters
78 ----------
79 sourceCat : Various table formats
80 Catalog of sources to select from. Can be
81 `lsst.afw.table.SourceCatalog` or `pandas.DataFrame` or
82 `astropy.table.Table`,
83 sourceSelectedField : `str` or None
84 Name of flag field in sourceCat to set for selected sources.
85 If set, will modify sourceCat in-place.
86 matches : `list` of `lsst.afw.table.ReferenceMatch` or None
87 List of matches to use for source selection.
88 If usesMatches is set in source selector this field is required.
89 If not, it is ignored.
90 exposure : `lsst.afw.image.Exposure` or None
91 The exposure the catalog was built from; used for debug display.
92
93 Returns
94 -------
95 struct : `lsst.pipe.base.Struct`
96 The struct contains the following data:
97
98 ``sourceCat``
99 The catalog of sources that were selected.
100 (may not be memory-contiguous)
101 (`lsst.afw.table.SourceCatalog` or `pandas.DataFrame`
102 or `astropy.table.Table`)
103 ``selected``
104 Boolean array of sources that were selected, same length as
105 sourceCat.
106 (`numpy.ndarray` of `bool`)
107
108 Raises
109 ------
110 RuntimeError
111 Raised if ``sourceCat`` is not contiguous.
112 """
113 if hasattr(sourceCat, 'isContiguous'):
114 # Check for continuity on afwTable catalogs
115 if not sourceCat.isContiguous():
116 raise RuntimeError("Input catalogs for source selection must be contiguous.")
117
118 result = self.selectSources(sourceCat=sourceCat,
119 exposure=exposure,
120 matches=matches)
121
122 if sourceSelectedField is not None:
123 sourceCat[sourceSelectedField] = result.selected
124
125 return pipeBase.Struct(sourceCat=sourceCat[result.selected],
126 selected=result.selected)
127

◆ selectSources()

lsst.meas.algorithms.sourceSelector.ReferenceSourceSelectorTask.selectSources ( self,
sourceCat,
matches = None,
exposure = None )
Return a selection of reference sources selected by some criteria.

Parameters
----------
sourceCat : `lsst.afw.table.SourceCatalog`
    Catalog of sources to select from.
    This catalog must be contiguous in memory.
matches : `list` of `lsst.afw.table.ReferenceMatch` or None
    Ignored in this SourceSelector.
exposure : `lsst.afw.image.Exposure` or None
    The exposure the catalog was built from; used for debug display.

Returns
-------
struct : `lsst.pipe.base.Struct`
    The struct contains the following data:

    ``selected``
        Boolean array of sources that were selected, same length as
        sourceCat.
        (`numpy.ndarray` of `bool`)

Reimplemented from lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask.

Definition at line 810 of file sourceSelector.py.

810 def selectSources(self, sourceCat, matches=None, exposure=None):
811 """Return a selection of reference sources selected by some criteria.
812
813 Parameters
814 ----------
815 sourceCat : `lsst.afw.table.SourceCatalog`
816 Catalog of sources to select from.
817 This catalog must be contiguous in memory.
818 matches : `list` of `lsst.afw.table.ReferenceMatch` or None
819 Ignored in this SourceSelector.
820 exposure : `lsst.afw.image.Exposure` or None
821 The exposure the catalog was built from; used for debug display.
822
823 Returns
824 -------
825 struct : `lsst.pipe.base.Struct`
826 The struct contains the following data:
827
828 ``selected``
829 Boolean array of sources that were selected, same length as
830 sourceCat.
831 (`numpy.ndarray` of `bool`)
832 """
833 selected = np.ones(len(sourceCat), dtype=bool)
834 if self.config.doMagLimit:
835 selected &= self.config.magLimit.apply(sourceCat)
836 if self.config.doFlags:
837 selected &= self.config.flags.apply(sourceCat)
838 if self.config.doUnresolved:
839 selected &= self.config.unresolved.apply(sourceCat)
840 if self.config.doSignalToNoise:
841 selected &= self.config.signalToNoise.apply(sourceCat)
842 if self.config.doMagError:
843 selected &= self.config.magError.apply(sourceCat)
844 if self.config.doRequireFiniteRaDec:
845 selected &= self.config.requireFiniteRaDec.apply(sourceCat)
846 for limit in self.config.colorLimits.values():
847 selected &= limit.apply(sourceCat)
848 if self.config.doCullFromMaskedRegion:
849 selected &= self.config.cullFromMaskedRegion.apply(sourceCat, exposure)
850 self.log.info("Selected %d/%d references", selected.sum(), len(sourceCat))
851
852 return pipeBase.Struct(selected=selected)
853
854
855@pexConfig.registerConfigurable("null", sourceSelectorRegistry)

Member Data Documentation

◆ _DefaultName

str lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask._DefaultName = "sourceSelector"
staticprotectedinherited

Definition at line 66 of file sourceSelector.py.

◆ ConfigClass

lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask.ConfigClass = BaseSourceSelectorConfig
staticinherited

Definition at line 65 of file sourceSelector.py.

◆ usesMatches

bool lsst.meas.algorithms.sourceSelector.BaseSourceSelectorTask.usesMatches = False
staticinherited

Definition at line 67 of file sourceSelector.py.


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