def test_spin_magnitude_normalised(self): norms = list() for ii in range(self.n_test): parameters = self.prior.sample() temp = spin.iid_spin_magnitude_beta(self.test_data, **parameters) norms.append(trapz(trapz(temp, self.a_array), self.a_array)) self.assertAlmostEqual(float(xp.max(xp.abs(1 - xp.asarray(norms)))), 0, 1)
def test_fhf_normalised(self): norms = list() for _ in range(self.n_test): lamb = np.random.uniform(-15, 15) p_z = redshift.power_law_redshift(self.test_data, lamb) norms.append(trapz(p_z, self.zs)) self.assertAlmostEqual(xp.max(xp.abs(xp.asarray(norms) - 1)), 0.0)
def test_spin_orientation_normalised(self): norms = list() for ii in range(self.n_test): parameters = self.prior.sample() temp = spin.iid_spin_orientation_gaussian_isotropic( self.test_data, **parameters) norms.append(trapz(trapz(temp, self.costilts), self.costilts)) self.assertAlmostEqual(float(xp.max(xp.abs(1 - xp.asarray(norms)))), 0, 5)
def _run_model_normalisation(self, model, priors): norms = list() for _ in range(self.n_test): p_z = model(self.test_data, **priors.sample()) norms.append(trapz(p_z, self.zs)) self.assertAlmostEqual(xp.max(xp.abs(xp.asarray(norms) - 1)), 0.0)
def _max_abs_difference(array, comparison): return float(xp.max(xp.abs(comparison - xp.asarray(array))))