LSST Applications g0265f82a02+0e5473021a,g02d81e74bb+f5613e8b4f,g1470d8bcf6+190ad2ba91,g14a832a312+311607e4ab,g2079a07aa2+86d27d4dc4,g2305ad1205+a8e3196225,g295015adf3+b67ee847e5,g2bbee38e9b+0e5473021a,g337abbeb29+0e5473021a,g3ddfee87b4+a761f810f3,g487adcacf7+17c8fdbcbd,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+65b5bd823e,g5a732f18d5+53520f316c,g64a986408d+f5613e8b4f,g6c1bc301e9+51106c2951,g858d7b2824+f5613e8b4f,g8a8a8dda67+585e252eca,g99cad8db69+6729933424,g9ddcbc5298+9a081db1e4,ga1e77700b3+15fc3df1f7,ga8c6da7877+ef4e3a5875,gb0e22166c9+60f28cb32d,gb6a65358fc+0e5473021a,gba4ed39666+c2a2e4ac27,gbb8dafda3b+e9bba80f27,gc120e1dc64+eee469a5e5,gc28159a63d+0e5473021a,gcf0d15dbbd+a761f810f3,gdaeeff99f8+f9a426f77a,ge6526c86ff+d4c1d4bfef,ge79ae78c31+0e5473021a,gee10cc3b42+585e252eca,gf1cff7945b+f5613e8b4f,w.2024.16
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: