LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Static Protected Attributes | List of all members
lsst.pipe.tasks.reserveIsolatedStars.ReserveIsolatedStarsTask Class Reference
Inheritance diagram for lsst.pipe.tasks.reserveIsolatedStars.ReserveIsolatedStarsTask:

Public Member Functions

 run (self, nstar, extra='')
 

Static Public Attributes

 ConfigClass = ReserveIsolatedStarsConfig
 

Static Protected Attributes

str _DefaultName = 'reserve_isolated_stars'
 

Detailed Description

Reserve isolated stars with repeatable hash.

Definition at line 53 of file reserveIsolatedStars.py.

Member Function Documentation

◆ run()

lsst.pipe.tasks.reserveIsolatedStars.ReserveIsolatedStarsTask.run ( self,
nstar,
extra = '' )
Retrieve a selection of reserved stars.

Parameters
----------
nstar : `int`
    Number of stars to select from.
extra : `str`, optional
    Extra name to appended to reserve_name, often tract or pixel,
    and may be combined with band name.

Returns
-------
selection : `np.ndarray` (N,)
    Boolean index array, with ``True`` for reserved stars.

Definition at line 58 of file reserveIsolatedStars.py.

58 def run(self, nstar, extra=''):
59 """Retrieve a selection of reserved stars.
60
61 Parameters
62 ----------
63 nstar : `int`
64 Number of stars to select from.
65 extra : `str`, optional
66 Extra name to appended to reserve_name, often tract or pixel,
67 and may be combined with band name.
68
69 Returns
70 -------
71 selection : `np.ndarray` (N,)
72 Boolean index array, with ``True`` for reserved stars.
73 """
74 selection = np.zeros(nstar, dtype=bool)
75
76 if self.config.reserve_fraction == 0.0:
77 return selection
78
79 # Full name combines the configured reserve name and the tract.
80 name = self.config.reserve_name + '_' + extra
81 # Random seed is the lower 32 bits of the hashed name.
82 # We use hashlib.sha256 for guaranteed repeatability.
83 hex_hash = hashlib.sha256(name.encode('UTF-8')).hexdigest()
84 seed = int('0x' + hex_hash, 0) & 0xFFFFFFFF
85
86 rng = np.random.default_rng(seed)
87
88 selection[:int(nstar*self.config.reserve_fraction)] = True
89 rng.shuffle(selection)
90
91 return selection

Member Data Documentation

◆ _DefaultName

str lsst.pipe.tasks.reserveIsolatedStars.ReserveIsolatedStarsTask._DefaultName = 'reserve_isolated_stars'
staticprotected

Definition at line 56 of file reserveIsolatedStars.py.

◆ ConfigClass

lsst.pipe.tasks.reserveIsolatedStars.ReserveIsolatedStarsTask.ConfigClass = ReserveIsolatedStarsConfig
static

Definition at line 55 of file reserveIsolatedStars.py.


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