#%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.4 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(20, 3) MCMC_sampler(log_probability, pos, filename="sample_LCDM_CC+SN+BAO+AGN_3params.h5", witness_file='witness_15.txt', witness_freq=5, max_samples=100000)
#%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 0 < b < 5 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(12, 4) MCMC_sampler(log_probability, pos, filename="sample_EXP_CC+SN+AGN_4params_v2.h5", witness_file='witness_332.txt', witness_freq=5, max_samples=2000000)
#%% # Definimos la distribucion del prior def log_prior(theta): omega_m, b = theta if (0.2 < omega_m < 0.6 and 0 < b < 3): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-2 * np.random.randn(12, 2) MCMC_sampler(log_probability, pos, filename="sample_EXP_AGN_2params.h5", witness_file='witness_31.txt', witness_freq=20, max_samples=40000)
log_likelihood = lambda theta: -0.5 * params_to_chi2_AGN_nuisance(theta,H0_true, data_agn, model='LCDM',less_z=True) #%% Definimos la distribucion del prior def log_prior(theta): omega_m, beta, gamma, delta = theta if not (5 < beta < 15 and 0.1 < gamma < 0.8 and 0 < delta < 0.5): return -np.inf #gaussian prior on a mu = 0.298 sigma = 0.022 return np.log(1.0/(np.sqrt(2*np.pi)*sigma))-0.5*(omega_m-mu)**2/sigma**2 # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-2 * np.random.randn(12, 4) MCMC_sampler(log_probability,pos, filename = "sample_LCDM_AGN_4params_nuisance_3.h5", witness_file = 'witness_123.txt', witness_freq = 5, max_samples = 1000000)
model='HS') #%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 0 < b < 3 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol * (1 + 0.01 * np.random.randn(20, 4)) MCMC_sampler(log_probability, pos, filename="sample_HS_CC+SN_4params_augusto.h5", witness_file='witness_26_augusto.txt', witness_freq=100, max_samples=2000000)
integrador=1) #%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 0 < b < 3 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol * (1 + 0.01 * np.random.randn(12, 4)) MCMC_sampler(log_probability, pos, filename="sample_HS_CC+SN_4params_int1.h5", witness_file='witness_261.txt', witness_freq=5, max_samples=2000000)
#%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 0 < b < 1 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(20, 4) MCMC_sampler(log_probability, pos, filename="sample_HS_CC+SN+AGN_4params_v2_nuevo.h5", witness_file='witness_232-nuevo.txt', witness_freq=20, max_samples=2000000)
#%% Definimos la distribucion del prior def log_prior(theta): omega_m, b, beta, gamma, delta = theta if (0.1 < omega_m < 0.99 and 0 < b < 0.2 and 5 < beta < 15 and 0.1 < gamma < 0.8 and 0 < delta < 0.5): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-2 * np.random.randn(12, 5) MCMC_sampler(log_probability, pos, filename="sample_HS_AGN_5params_nuisance_less_z.h5", witness_file='witness_22.txt', witness_freq=5, max_samples=1000000)
#%% # Definimos la distribucion del prior def log_prior(theta): omega_m = theta if 0.1 < omega_m < 0.5: return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-2 * np.random.randn(20, 1) MCMC_sampler(log_probability, pos, filename="sample_LCDM_AGN_1params.h5", witness_file='witness_11.txt', witness_freq=5, max_samples=100000)
#%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. #pos = sol + 1e-4 * np.random.randn(12, 3) pos = sol * (1 + 0.01 * np.random.randn(12, 3)) MCMC_sampler(log_probability, pos, filename="sample_LCDM_CC+H0_3params.h5", witness_file='witness_162.txt', witness_freq=5, max_samples=2000000)
#dataset_BAO = ds_BAO, dataset_AGN = ds_AGN, #H0_Riess = True, model = 'HS' ) #%% # Definimos la distribucion del prior def log_prior(theta): omega_m, b = theta if (0.2 < omega_m < 0.6 and 0 < b < 4): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(20, 2) MCMC_sampler(log_probability,pos, filename = "sample_HS_AGN_2params.h5", witness_file = 'witness_21.txt', witness_freq = 5, max_samples = 2000000)
dataset_BAO = ds_BAO, #dataset_AGN = ds_AGN, #H0_Riess = True, model = 'EXP' ) #%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.5 and 0 < b < 3 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(12, 4) MCMC_sampler(log_probability,pos, filename = "sample_EXP_CC+SN+BAO_4params_odintsov.h5", witness_file = 'witness_34_odintsov.txt', witness_freq = 5, max_samples = 2000000)
#%% # Definimos la distribucion del prior def log_prior(theta): M, omega_m, b, H0 = theta if (-22 < M < -18 and 0.01 < omega_m < 0.4 and 0 < b < 4 and 60 < H0 < 80): return 0.0 return -np.inf # Definimos la distribución del posterior def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): #Este if creo que está de más.. return -np.inf return lp + log_likelihood(theta) #%% #Defino los valores iniciales de cada cadena a partir de los valores #de los parametros que corresponden al minimo del chi2. pos = sol + 1e-4 * np.random.randn(20, 4) MCMC_sampler(log_probability, pos, filename="sample_HS_CC+SN+BAO+AGN_4params.h5", witness_file='witness_25.txt', witness_freq=5, max_samples=2000000)
with np.load('valores_medios_LCDM_AGN_4params_nuisance.npz') as data: sol = data['sol'] sol = 0.6 log_likelihood = lambda theta: -0.5 * params_to_chi2_AGN_nuisance( theta, params_fijos, data_agn, model='LCDM') #%% Definimos las funciones de prior y el posterior def log_prior(theta): omega_m = theta if (0.5 < omega_m < 0.99): return 0.0 return -np.inf def log_probability(theta): lp = log_prior(theta) if not np.isfinite(lp): return -np.inf return lp + log_likelihood(theta) pos = sol * (1 + 0.01 * np.random.randn(20, 1)) MCMC_sampler(log_probability, pos, filename="sample_LCDM_AGN_4params_nuisance_72.h5", witness_file='witness_67.txt', witness_freq=10, max_samples=200000)