Ejemplo n.º 1
0
 def setUp(self):
     self.m1s = np.linspace(3, 100, 1000)
     self.qs = np.linspace(0.01, 1, 500)
     self.dm = self.m1s[1] - self.m1s[0]
     self.dq = self.qs[1] - self.qs[0]
     m1s_grid, qs_grid = xp.meshgrid(self.m1s, self.qs)
     self.dataset = dict(mass_1=m1s_grid, mass_ratio=qs_grid)
     self.power_prior = PriorDict()
     self.power_prior["alpha"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["beta"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["mmin"] = Uniform(minimum=3, maximum=10)
     self.power_prior["mmax"] = Uniform(minimum=30, maximum=100)
     self.gauss_prior = PriorDict()
     self.gauss_prior["lam"] = Uniform(minimum=0, maximum=1)
     self.gauss_prior["mpp"] = Uniform(minimum=20, maximum=60)
     self.gauss_prior["sigpp"] = Uniform(minimum=0, maximum=10)
     self.double_gauss_prior = PriorDict()
     self.double_gauss_prior["lam"] = Uniform(minimum=0, maximum=1)
     self.double_gauss_prior["lam_1"] = Uniform(minimum=0, maximum=1)
     self.double_gauss_prior["mpp_1"] = Uniform(minimum=20, maximum=60)
     self.double_gauss_prior["mpp_2"] = Uniform(minimum=20, maximum=60)
     self.double_gauss_prior["sigpp_1"] = Uniform(minimum=0, maximum=10)
     self.double_gauss_prior["sigpp_2"] = Uniform(minimum=0, maximum=10)
     self.smooth_prior = PriorDict()
     self.smooth_prior["delta_m"] = Uniform(minimum=0, maximum=10)
     self.n_test = 10
Ejemplo n.º 2
0
 def setUp(self):
     self.m1s = np.linspace(3, 100, 1000)
     self.qs = np.linspace(0.01, 1, 500)
     m1s_grid, qs_grid = xp.meshgrid(self.m1s, self.qs)
     self.dataset = dict(mass_1=m1s_grid, mass_ratio=qs_grid)
     self.power_prior = PriorDict()
     self.power_prior["alpha_1"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["alpha_2"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["beta"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["mmin"] = Uniform(minimum=3, maximum=10)
     self.power_prior["mmax"] = Uniform(minimum=40, maximum=100)
     self.power_prior["break_fraction"] = Uniform(minimum=40, maximum=100)
     self.n_test = 10
Ejemplo n.º 3
0
 def setUp(self):
     self.ms = np.linspace(3, 100, 1000)
     self.dm = self.ms[1] - self.ms[0]
     m1s_grid, m2s_grid = xp.meshgrid(self.ms, self.ms)
     self.dataset = dict(mass_1=m1s_grid, mass_2=m2s_grid)
     self.power_prior = PriorDict()
     self.power_prior["alpha"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["beta"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["mmin"] = Uniform(minimum=3, maximum=10)
     self.power_prior["mmax"] = Uniform(minimum=40, maximum=100)
     self.gauss_prior = PriorDict()
     self.gauss_prior["lam"] = Uniform(minimum=0, maximum=1)
     self.gauss_prior["mpp"] = Uniform(minimum=20, maximum=60)
     self.gauss_prior["sigpp"] = Uniform(minimum=0, maximum=10)
     self.n_test = 10
Ejemplo n.º 4
0
 def setUp(self):
     self.m1s = np.linspace(3, 100, 1000)
     self.qs = np.linspace(0.01, 1, 500)
     m1s_grid, qs_grid = xp.meshgrid(self.m1s, self.qs)
     self.dataset = dict(mass_1=m1s_grid, mass_ratio=qs_grid)
     self.power_prior = PriorDict()
     self.power_prior["alpha"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["beta"] = Uniform(minimum=-4, maximum=12)
     self.power_prior["mmin"] = Uniform(minimum=3, maximum=10)
     self.power_prior["mmax"] = Uniform(minimum=40, maximum=100)
     self.gauss_prior = PriorDict()
     self.gauss_prior["lam"] = Uniform(minimum=0, maximum=1)
     self.gauss_prior["mpp"] = Uniform(minimum=20, maximum=60)
     self.gauss_prior["sigpp"] = Uniform(minimum=0, maximum=10)
     self.n_test = 10
Ejemplo n.º 5
0
 def test_2d_gaussian_normalized(self):
     model = spin.GaussianChiEffChiP()
     chi_eff, chi_p = xp.meshgrid(xp.linspace(-1, 1, 501), xp.linspace(0, 1, 300))
     parameters = dict(
         mu_chi_eff=0.1,
         mu_chi_p=0.3,
         sigma_chi_eff=0.6,
         sigma_chi_p=0.5,
         spin_covariance=0.9,
     )
     prob = model(dict(chi_eff=chi_eff, chi_p=chi_p), **parameters)
     self.assertAlmostEqual(
         xp.trapz(xp.trapz(prob, xp.linspace(-1, 1, 501)), xp.linspace(0, 1, 300)),
         1,
         5,
     )
Ejemplo n.º 6
0
 def __init__(self):
     self.retention_file = self.__retention_file__()
     branching_dataset = np.load(
         self.retention_file,
         allow_pickle=True,
         encoding="latin1",
     )
     self.a_1_array = xp.asarray(branching_dataset["a1"])
     self.a_2_array = xp.asarray(branching_dataset["a2"])
     self.mass_ratio_array = xp.asarray(branching_dataset["q"])
     self.retention_fraction = xp.asarray(
         branching_dataset["interpolated_retention_fraction"])
     self.mass_1s = xp.linspace(2, 200, 2000)
     self.mass_ratio_grid, self.mass_1_grid = xp.meshgrid(
         self.mass_ratio_array, self.mass_1s)
     self.first_generation_data = dict(mass_1=self.mass_1_grid,
                                       mass_ratio=self.mass_ratio_grid)
Ejemplo n.º 7
0
 def test_2d_gaussian_no_covariance_matches_independent(self):
     model = spin.GaussianChiEffChiP()
     chi_eff, chi_p = xp.meshgrid(xp.linspace(-1, 1, 501), xp.linspace(0, 1, 300))
     data = dict(chi_eff=chi_eff, chi_p=chi_p)
     self.assertTrue(
         xp.all(
             spin.gaussian_chi_eff(data, mu_chi_eff=0.6, sigma_chi_eff=0.2)
             * spin.gaussian_chi_p(data, mu_chi_p=0.4, sigma_chi_p=0.1)
             == model(
                 data,
                 mu_chi_eff=0.6,
                 mu_chi_p=0.4,
                 sigma_chi_eff=0.2,
                 sigma_chi_p=0.1,
                 spin_covariance=0.0,
             )
         )
     )
Ejemplo n.º 8
0
 def setUp(self):
     self.m1s = np.linspace(3, 100, 1000)
     self.qs = np.linspace(0.01, 1, 500)
     self.dm = self.m1s[1] - self.m1s[0]
     self.dq = self.qs[1] - self.qs[0]
     m1s_grid, qs_grid = xp.meshgrid(self.m1s, self.qs)
     self.dataset = dict(mass_1=m1s_grid, mass_ratio=qs_grid)
     self.power_prior = PriorDict()
     self.power_prior['alpha'] = Uniform(minimum=-4, maximum=12)
     self.power_prior['beta'] = Uniform(minimum=-4, maximum=12)
     self.power_prior['mmin'] = Uniform(minimum=3, maximum=10)
     self.power_prior['mmax'] = Uniform(minimum=30, maximum=100)
     self.gauss_prior = PriorDict()
     self.gauss_prior['lam'] = Uniform(minimum=0, maximum=1)
     self.gauss_prior['mpp'] = Uniform(minimum=20, maximum=60)
     self.gauss_prior['sigpp'] = Uniform(minimum=0, maximum=10)
     self.smooth_prior = PriorDict()
     self.smooth_prior['delta_m'] = Uniform(minimum=0, maximum=10)
     self.n_test = 10