From 6e0112a18cb4f157103535d6e963b77e2b295c34 Mon Sep 17 00:00:00 2001 From: samueldmcdermott Date: Tue, 6 May 2025 15:08:00 -0400 Subject: [PATCH] setting seed --- deepszsim/dm_halo_dist.py | 7 ++++--- deepszsim/noise.py | 5 +++-- deepszsim/simclusters.py | 28 ++++++++++++++++++++-------- deepszsim/simtools.py | 11 ++++++++--- 4 files changed, 35 insertions(+), 16 deletions(-) diff --git a/deepszsim/dm_halo_dist.py b/deepszsim/dm_halo_dist.py index be72628..1f91413 100644 --- a/deepszsim/dm_halo_dist.py +++ b/deepszsim/dm_halo_dist.py @@ -33,9 +33,10 @@ def flatdist_halo(zmin, zmax, m200min_SM, m200max_SM, size, seed=None): distribution of random uniform redshifts starting at `m500min_SM` ending at `m500max_SM` with size `size` ''' - _rng = np.random.default_rng(seed=seed) + rng = np.random.default_rng(seed=seed) + rng_M, rng_z = rng.spawn(2) - zdist=_rng.uniform(low=zmin, high=zmax, size=size) - mdist=_rng.uniform(low=m200min_SM, high=m200max_SM, size=size) + zdist=rng_z.uniform(low=zmin, high=zmax, size=size) + mdist=rng_M.uniform(low=m200min_SM, high=m200max_SM, size=size) return zdist, mdist diff --git a/deepszsim/noise.py b/deepszsim/noise.py index 60bbbfa..9e2e9dd 100644 --- a/deepszsim/noise.py +++ b/deepszsim/noise.py @@ -4,7 +4,7 @@ import numpy as np -def generate_noise_map(image_size, noise_level, pix_size): +def generate_noise_map(image_size, noise_level, pix_size, seed): """ Generates a white noise map based on the noise level and beam size. @@ -21,7 +21,8 @@ def generate_noise_map(image_size, noise_level, pix_size): """ # Create random noise map - random_noise_map = np.random.normal(0, 1, (image_size, image_size)) + rng = np.random.default_rng(seed) + random_noise_map = rng.normal(0, 1, (image_size, image_size)) # Scale random noise map by noise level scaled_noise_map = random_noise_map * noise_level diff --git a/deepszsim/simclusters.py b/deepszsim/simclusters.py index d945798..90573a6 100644 --- a/deepszsim/simclusters.py +++ b/deepszsim/simclusters.py @@ -54,6 +54,9 @@ def __init__(self, M200 = None, redshift_z = None, num_halos = None, halo_params seed = None, tqverb = False ): + self.rng_ = np.random.default_rng(seed) + self.rng, self.rng_ = self.rng_.spawn(2) + if (M200 is not None) and (redshift_z is not None): self.M200, self.redshift_z = M200, redshift_z else: @@ -67,11 +70,13 @@ def __init__(self, M200 = None, redshift_z = None, num_halos = None, halo_params print(f"making {num_halos} clusters uniformly sampled from" f"{halo_params_dict['zmin']}