Source code for GUIBRUSHR.Retrieval.ModelCalculation.Classes.Random
"""
Random number generator wrapper class.
This module provides a wrapper around NumPy's random number generator
with seed management capabilities.
"""
from numpy.random import default_rng, SeedSequence
[docs]
class Random:
"""
A wrapper class for NumPy's random number generator.
Attributes:
seed: The seed value used for random number generation
seed_seq: SeedSequence used to spawn independent child streams
for multiprocessing workers (see ModelData.parallel_chain).
rng: The NumPy random number generator instance
"""
[docs]
def __init__(self, seme):
self.seed = seme
self.seed_seq = SeedSequence(seme)
self.rng = default_rng(self.seed_seq)