def param_fit_funct_full(zs, H0, OmM, w, OmL, OmR, Om0): zs = list(zs) w_of_funct = lambda w_zs: fitter_to_plot.w_of_funct(w_zs, [w]) funct_mus = cfc.getMusForCosmology( zs, [H0, OmM, OmL, OmR, Om0], lambda w_zs: fitter_to_plot.w_of_funct(w_zs, [w])) #print ('zs = ' + str(zs)) return funct_mus
int(1000 * mu_offset)) + '_' + toy_sn_data_file_suffix + '.csv' if not (os.path.isfile(surveys_file)): #Need to make a new cosmology file cfc.generateToySNeData(randomize_orig_sn=0, n_sn_per_survey=300, surveys=all_extra_surveys, H0=H0, OmegaM=OmegaM, Omega0=1.0, OmegaR=0.0001, w_params=[w], sn_data_type='pantheon_plus', cepheid_file_name='calibratorset.txt', HF_surveys_to_include='all', z_range=[0.0, 1.0], mu_err='median', colors=[ 'r', 'b', 'g', 'orange', 'cyan', 'magenta', 'purple', 'darkblue', 'darkgreen', 'skyblue', ], art_data_file=surveys_file) print('surveys_file = ' + str(surveys_file)) toy_data = can.readInColumnsToList(surveys_file,
w0_mean_ax = axarr_centr[2] #Om_ax = axarr[1] #w0_ax = axarr[2] #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 0, ax = H0_ax, ref_param_vals_for_other_ax = [67.4, 0.5, r"$H_0$ tension (# of $\sigma$s)"], xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $H_0$' + '\n' + r'posterior $\sigma$ (km/s/Mpc)', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $\Omega_M$' + '\n' + r'posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 2, ax = w0_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $w$' + '\n' + r'posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 0, ax = H0_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$H_0$' + r' posterior $\sigma$ (km/s/Mpc)', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) print ('real_mcmc_data_files_dict = ' + str(real_mcmc_data_files_dict)) #We need to add the pre-inter survey offset uncertainties in quadrature from Planck and SH0ES. #xlabel = 'Inter-survey offset prior, \n width $\sigma_{P,S}$ (mags)' xlabel = 'Cross-survey photometric \n calibration uncertainty, $\sigma_{P, S}$ (mag)' sig_sup_title = 'The Additional Cosmic Parameter Measurement Uncertainty Introduced as the \n Uncertainty in the Pantheon+ Cross-Survey Photometric Zeropoint Increases' centr_sup_title = 'The Shift in the Cosmic Parameter Measurement as the Uncertainty in the Pantheon+ Cross-Survey Photometric Zeropoint Increases' f_sig.suptitle(sig_sup_title, fontsize = sup_title_size) f_centr.suptitle(centr_sup_title, fontsize = sup_title_size) cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 0, ax = H0_sig_ax, ref_param_vals_for_other_ax = [73.2, 67.27, np.sqrt(0.6 ** 2.0 + 1.3 ** 2.0), r"Planck vs SH0ES HT"], xlabel = xlabel, ylabel = r'Additional $H_0$' + '\n' + r'posterior $\sigma$ (km s$^{-1}$ Mpc$^{-1}$)', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains, n_points_to_lin_fit = n_offsets_to_lin_fit, in_plot_lin_text = ['$\\frac{d \sigma_{H_0}}{d \\sigma_{P,S}} =$ ', r' $\frac{\mathrm{km}}{\mathrm{s} \ \mathrm{Mpc}} \frac{1}{\ 25\ \mathrm{mmag}}$'], in_plot_loc = [0.20, 0.25], in_plot_text_size = labelsize + 4) H0_sig_ax.text(0.5, 0.1, "Worse cross-survey calibration", ha="center", va="center", transform = H0_sig_ax.transAxes, fontsize = labelsize, bbox=dict(boxstyle="rarrow,pad=0.3", fc="cyan", ec="b", lw=2)) cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 0, ax = H0_mean_ax, xlabel = xlabel, ylabel = r'Shift in $H_0$ centroid, $<H_0>$ (km s$^{-1}$ Mpc$^{-1}$)', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains, plot_sigmas = 0, n_points_to_lin_fit = n_offsets_to_lin_fit, in_plot_lin_text = ['$\\frac{d <H_0>}{d \\sigma_{P,S}} =$ ', r' $\frac{\mathrm{km}}{\mathrm{s} \ \mathrm{Mpc}} \frac{1}{25 \ \mathrm{ mmag}}$'], in_plot_loc = [0.2, 0.25], in_plot_text_size = labelsize + 4) H0_mean_ax.text(0.5, 0.1, "Worse cross-survey calibration", ha="center", va="center", transform = H0_mean_ax.transAxes, fontsize = labelsize, bbox=dict(boxstyle="rarrow,pad=0.3", fc="cyan", ec="b", lw=2)) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$\Omega_M$' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) #cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $\Omega_M$' + '\n' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains) cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 1, ax = OmM_mean_ax, xlabel = xlabel, ylabel = r'Shift in $\Omega_M$ centroid, $<\Omega_M>$', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains, plot_sigmas = 0, n_points_to_lin_fit = n_offsets_to_lin_fit, in_plot_lin_text = ['$\\frac{d <\\Omega_M>}{d \\sigma_{P,S}} =$ ', r' $\frac{1}{25 \ \mathrm{ mmag}}$'], in_plot_loc = [0.20, 0.25], in_plot_text_size = labelsize + 4) OmM_mean_ax.text(0.5, 0.1, "Worse cross-survey calibration", ha="center", va="center", transform = OmM_mean_ax.transAxes, fontsize = labelsize, bbox=dict(boxstyle="rarrow,pad=0.3", fc="cyan", ec="b", lw=2)) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 2, ax = w0_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$w$' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) #cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 2, ax = w0_sig_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $w$ posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains, n_points_to_lin_fit = n_offsets_to_lin_fit, in_plot_lin_text = ['$\\frac{d \sigma_w}{d \\sigma_{P,S}} = $', r' mmag$^{-1}$']) cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 2, ax = w0_mean_ax, xlabel = xlabel, ylabel = r'Shift in $w$ centroid, $<w>$', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains, plot_sigmas = 0, n_points_to_lin_fit = n_offsets_to_lin_fit, in_plot_lin_text = ['$\\frac{d <w>}{d \\sigma_{P,S}} =$ ', r' $\frac{1}{25 \ \mathrm{mmag}}$'], in_plot_loc = [0.20, 0.75], in_plot_text_size = labelsize + 4) w0_mean_ax.text(0.5, 0.9, "Worse cross-survey calibration", ha="center", va="center", transform = w0_mean_ax.transAxes, fontsize = labelsize, bbox=dict(boxstyle="rarrow,pad=0.3", fc="cyan", ec="b", lw=2)) #plt.subplots_adjust (left = 0.20, right = 0.85) #plt.savefig(save_dir + OneD_posterior_file_name) #plt.close('all') full_mcmc_data_files_list = [real_mcmc_data_files_dict[mu_offset] for mu_offset in mu_offsets]
print('real_mcmc_data_files_dict = ' + str(real_mcmc_data_files_dict)) #We need to add the pre-inter survey offset uncertainties in quadrature from Planck and SH0ES. #cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 0, ax = H0_ax, ref_param_vals_for_other_ax = [73.2, 67.27, np.sqrt(0.6 ** 2.0 + 1.3 ** 2.0), r"Planck vs SH0ES HT"], xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $H_0$' + '\n' + r' posterior $\sigma$ (km/s/Mpc)', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains) cfc.makePlotOfPosteriorWidths( real_mcmc_data_files_dict, 0, ax=H0_ax, xlabel= 'Cross-survey photometric calibration uncertainty, $\sigma_{P, S}$ (mag)', ylabel=r'$H_0$ posterior $\sigma$ (km s$^{-1}$ Mpc$^{-1}$) ' + '\n' + ' increase (CSP SNe only)', title=r'Expansion of H$_0$ posterior uncertainty ' + '\n' + 'with CSP as Only HF SNs Survey', data_load_dir=target_dir, plot_color='k', plot_marker='x', show_fig=0, save_fig=0, zero_uncertainties_at_zero_prior=1, labelsize=labelsize, show_all_chain_posteriors=show_all_chains, n_points_to_lin_fit=len(mu_offsets), in_plot_lin_text=[ '$\\frac{d \sigma_{H_0}}{d \\sigma_{P,S}} =$ ', r' $\frac{\mathrm{km}}{\mathrm{s} \ \mathrm{Mpc}} \frac{1}{25 \ \mathrm{mmag}}$' ], in_plot_loc=[0.35, 0.2], in_plot_text_size=labelsize + 4) H0_ax.axvline(best_fit_mu_offsets[0], c='k', linestyle='--') #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$\Omega_M$' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) #cfc.makePlotOfPosteriorWidths(real_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $\Omega_M$' + '\n' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = 'x', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 1, labelsize = labelsize, show_all_chain_posteriors = show_all_chains)
import CosmicFitterClass as cfc import matplotlib.pyplot as plt import numpy as np if __name__ == "__main__": overplot_steps = 1000 overplot_n_chains = 2 z_lims = [0.005, 2.1] ticklabelsize = 12 labelsize = 18 fitter_to_plot = cfc.CosmicFitter(w_of_funct_str = 'w0', randomize_sn = 1, sn_data_type = 'pantheon_plus', params_to_overplot = ['H0'], overplot_mcmc_steps = overplot_steps, overplot_mcmc_chains = overplot_n_chains) #sorted_zs, sorted_mus, sorted_muErrs, colors = [fitter_to_plot.sorted_zs, fitter_to_plot.sorted_mus, fitter_to_plot.sorted_muErrs, fitter_to_plot.sorted_colors] save_plot_dir = '/Users/sashabrownsberger/Documents/Harvard/physics/stubbs/variableMuFits/plots/' plot_file_name = 'PantheonPlus_randomizeMuVsZ.pdf' #canon_mus = fitter_to_plot.getMusForCosmology(fitter_to_plot.nonCeph_zs, [fitter_to_plot.H0, fitter_to_plot.OmegaM, fitter_to_plot.OmegaLambda, fitter_to_plot.OmegaR , fitter_to_plot.Omega0], wOfFunction = lambda zs: fitter_to_plot.w_of_funct(zs, fitter_to_plot.default_w_params), ) wOfFunction = lambda zs: fitter_to_plot.w_of_funct(zs, fitter_to_plot.default_w_params) canon_mus = cfc.getMusForCosmology(fitter_to_plot.nonCeph_zs, [fitter_to_plot.H0, fitter_to_plot.OmegaM, fitter_to_plot.OmegaLambda, fitter_to_plot.OmegaR , fitter_to_plot.Omega0], wOfFunction ) fill_zs = np.logspace(-3, np.log10(2.5), 221).tolist() #fill_mus = fitter_to_plot.getMusForCosmology(fill_zs, [fitter_to_plot.H0, fitter_to_plot.OmegaM, fitter_to_plot.OmegaLambda, fitter_to_plot.OmegaR , fitter_to_plot.Omega0], wOfFunction = lambda zs: fitter_to_plot.w_of_funct(zs, fitter_to_plot.default_w_params), ) fill_mus = cfc.getMusForCosmology(fill_zs, [fitter_to_plot.H0, fitter_to_plot.OmegaM, fitter_to_plot.OmegaLambda, fitter_to_plot.OmegaR , fitter_to_plot.Omega0], wOfFunction ) print ('[len(fill_zs), len(fill_mus)] = ' + str([len(fill_zs), len(fill_mus)] )) surveys = np.unique(fitter_to_plot.nonCeph_surveys).tolist() print ('surveys = ' +str(surveys) ) f, axarr = plt.subplots(2,1, figsize = [10, 6], sharex = True) scats = [] ref_cosmo_plot = axarr[0].plot([-0.01] + fill_zs, [0.0] + fill_mus.tolist(), c = 'k')[0] for survey in surveys: zs = [fitter_to_plot.nonCeph_zs[i] for i in range(len(fitter_to_plot.nonCeph_zs)) if fitter_to_plot.nonCeph_surveys[i] == survey] mus = [fitter_to_plot.nonCeph_mus[i] for i in range(len(fitter_to_plot.nonCeph_mus)) if fitter_to_plot.nonCeph_surveys[i] == survey] muErrs = [fitter_to_plot.nonCeph_muErrs[i] for i in range(len(fitter_to_plot.nonCeph_muErrs)) if fitter_to_plot.nonCeph_surveys[i] == survey]
axarr[0].set_ylim(H0_ylims) #axarr[1].set_ylim(OmM_ylims) axarr[2].set_ylim(w_ylims) #H0_scat = cfc.makePlotOfPosteriorWidths(save_files_dict, 0, ax = axarr[0], xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$H_0$ MCMC $\sigma$ (km/s/Mpc)', # ref_param_vals_for_other_ax = (None if j < len(extra_surveys_to_include_in_sequence) - 1 else [70.0, 67.4, 0.5, r"$H_0$ tension (# of $\sigma$s)"]), # data_load_dir = results_dir, plot_save_dir = plot_dir, save_fig = 0, save_fig_name = 0, plot_marker = 'x', plot_color = color, show_all_chain_posteriors = 0, # zero_uncertainties_at_zero_prior = 0, labelsize = labelsize, ylims = H0_ylims) H0_scat = cfc.makePlotOfPosteriorWidths( save_files_dict, 0, ax=axarr[0], xlabel='$\Delta \mu_S$ Gaussian prior width (mags)', ylabel=r'$H_0$ MCMC $\sigma$ (km/s/Mpc)', data_load_dir=results_dir, plot_save_dir=plot_dir, save_fig=0, save_fig_name=0, plot_marker='x', plot_color=color, show_all_chain_posteriors=0, zero_uncertainties_at_zero_prior=0, labelsize=labelsize, ylims=H0_ylims) H0_scats = H0_scats + [H0_scat] OmM_scat = cfc.makePlotOfPosteriorWidths( save_files_dict, 1, ax=axarr[1], xlabel='$\Delta \mu_S$ Gaussian prior width (mags)', ylabel=r'$\Omega_M$ MCMC $\sigma$',
#w0_ax = axarr[2] #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 0, ax = H0_ax, ref_param_vals_for_other_ax = [67.4, 0.5, r"$H_0$ tension (# of $\sigma$s)"], xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $H_0$' + '\n' + r'posterior $\sigma$ (km/s/Mpc)', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $\Omega_M$' + '\n' + r'posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 2, ax = w0_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'Increase in $w$' + '\n' + r'posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 0, ax = H0_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$H_0$' + r' posterior $\sigma$ (km/s/Mpc)', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) print('real_mcmc_data_files_dict = ' + str(real_mcmc_data_files_dict)) #We need to add the pre-inter survey offset uncertainties in quadrature from Planck and SH0ES. cfc.makePlotOfPosteriorWidths( real_mcmc_data_files_dict, 0, ax=H0_ax, ref_param_vals_for_other_ax=[ 73.2, 67.27, np.sqrt(0.6**2.0 + 1.3**2.0), r"Planck vs SH0ES HT" ], xlabel='$\Delta \mu_S$ Gaussian prior width (mags)', ylabel=r'Increase in $H_0$' + '\n' + r' posterior $\sigma$ (km/s/Mpc)', data_load_dir=target_dir, plot_color='k', plot_marker='x', show_fig=0, save_fig=0, zero_uncertainties_at_zero_prior=1, labelsize=labelsize, show_all_chain_posteriors=show_all_chains) #cfc.makePlotOfPosteriorWidths(rand_mcmc_data_files_dict, 1, ax = Om_ax, xlabel = '$\Delta \mu_S$ Gaussian prior width (mags)', ylabel = r'$\Omega_M$' + r' posterior $\sigma$', data_load_dir = target_dir, plot_color = 'k', plot_marker = '.', show_fig = 0, save_fig = 0, zero_uncertainties_at_zero_prior = 0, labelsize = labelsize) cfc.makePlotOfPosteriorWidths( real_mcmc_data_files_dict, 1, ax=Om_ax, xlabel='$\Delta \mu_S$ Gaussian prior width (mags)', ylabel=r'Increase in $\Omega_M$' + '\n' + r' posterior $\sigma$',
fig_name = 'TwoSurveySampleOfLuminosityOffsetEffect.pdf' #surveys = ['CFA1', 'CFA2', 'CFA3S', 'CSP', 'KAIT', 'LOWZ', 'PS1MD', 'SWIFT'] mu_prior_type = 'gauss' base_H0 = 70.0 base_OmM = 0.3 base_w0 = -1.0 ticklabelsize = 13 labelsize = 15 fancy_plot = 1 if fancy_plot: # use LaTeX fonts in the plot plt.rc('text', usetex=True) plt.rc('font', family='serif') rand_fitter = cfc.CosmicFitter(w_of_funct_str = 'w0', randomize_sn = 1, sn_data_type = 'pantheon_plus', params_to_overplot = ['H0', 'OmM'], overplot_mcmc_steps = overplot_steps, overplot_mcmc_chains = overplot_n_chains, mu_prior_type = mu_prior_type, canonical_cosmic_vals = {'H0':base_H0, 'L':1.0, 'OmM':base_OmM, 'OmL':1.0 - base_OmM, 'OmR': 0.0001, 'Om0': 1.0, 'w0':base_w0,'wa':0}, force_rand_fit_to_background_cosmology = 0) rand_fitter.updateUsedSN(z_lims = z_lims, surveys_to_include = surveys ) scalar_params, wOfFunctionParams, muOffsets = rand_fitter.getAllFitParametersFromListOfParamsToVary([base_H0, base_OmM], ['H0','OmM']) H0, OmegaM, OmegaLambda, OmegaR, Omega0 = scalar_params print ('[H0, OmegaM, OmegaLambda, OmegaR, Omega0] = ' + str([H0, OmegaM, OmegaLambda, OmegaR, Omega0])) print ('[rand_fitter.H0, rand_fitter.OmegaM, rand_fitter.OmegaLambda, rand_fitter.OmegaR , rand_fitter.Omega0] = ' + str([rand_fitter.H0, rand_fitter.OmegaM, rand_fitter.OmegaLambda, rand_fitter.OmegaR , rand_fitter.Omega0])) print ('[wOfFunctionParams, rand_fitter.default_w_params] = ' + str([wOfFunctionParams, rand_fitter.default_w_params] )) loadedWOfFunction = lambda zs: rand_fitter.w_of_funct(zs, wOfFunctionParams[:]) mu_offsets_by_survey_dict = rand_fitter.getMuOffsetsBySurvey(muOffsets) print ('mu_offsets_by_survey_dict = ' + str(mu_offsets_by_survey_dict )) #base_calc_mus_nonCeph = rand_fitter.getMusForCosmology(rand_fitter.nonCeph_zs, [rand_fitter.H0, rand_fitter.OmegaM, rand_fitter.OmegaLambda, rand_fitter.OmegaR , rand_fitter.Omega0], wOfFunction = lambda zs: rand_fitter.w_of_funct(zs, rand_fitter.default_w_params) ) #base_calc_mus_Ceph = rand_fitter.getMusForCosmology([rand_fitter.sorted_zs[index] for index in rand_fitter.cepheid_indeces], [rand_fitter.H0, rand_fitter.OmegaM, rand_fitter.OmegaLambda, rand_fitter.OmegaR , rand_fitter.Omega0], wOfFunction = lambda zs: rand_fitter.w_of_funct(zs, rand_fitter.default_w_params)) #base_calc_mus_all = rand_fitter.getMusForCosmology(rand_fitter.sorted_zs, [rand_fitter.H0, rand_fitter.OmegaM, rand_fitter.OmegaLambda, rand_fitter.OmegaR , rand_fitter.Omega0], wOfFunction = lambda zs: rand_fitter.w_of_funct(zs, rand_fitter.default_w_params) ) f, axarr = plt.subplots(4,1, squeeze = False, figsize = [14, 8]) ylims = [-1.5, 1.5]
for k in range(len(x_vals)): x_val = x_vals[k] mcmc_output_files = save_files_dict [x_val] read_in_H0_vals = [[] for i in range(len(mcmc_output_files))] read_in_OmM_vals = [[] for i in range(len(mcmc_output_files))] read_in_OmM_times_w_vals = [[] for i in range(len(mcmc_output_files))] read_in_w_vals = [[] for i in range(len(mcmc_output_files))] for i in range(len(mcmc_output_files)): mcmc_output_file = mcmc_output_files[i] print ('mcmc_output_file = ' + str(mcmc_output_file)) mcmc_data = can.readInColumnsToList(results_dir + mcmc_output_file, delimiter = ', ', n_ignore = 1, convert_to_float = 1) loaded_H0_data = [elem - mcmc_data[0][-1] for elem in mcmc_data[0][:-1]] loaded_OmM_data = [elem - mcmc_data[1][-1] for elem in mcmc_data[1][:-1]] loaded_w_data = [elem - mcmc_data[2][-1] for elem in mcmc_data[2][:-1]] OmM_mesh, w_mesh, mcmc_mesh = cfc.getContourMeshFromMCMCChainComponents([loaded_OmM_data, loaded_w_data], OmM_lims, w0_lims, bins ) sorted_full_mcmc_mesh = np.flip(np.sort(mcmc_mesh.flatten())) full_levels = cfc.determineContourLevelsFromMCMCPosterior(sorted_full_mcmc_mesh, fitter_levels, samples_already_sorted = 1) contours = axarr[k].contour(OmM_mesh, w_mesh, mcmc_mesh, levels = full_levels) contour_vertices = [contours.allsegs[-1 - i][0] for i in range(1, len(full_levels) )] #nth outer contour is -1 - n contour_areas = [np.abs(can.measureAreaOfContour(contour)) for contour in contour_vertices] H0_std, H0_mean = [np.std(loaded_H0_data), np.mean(loaded_H0_data)] OmM_std, OmM_mean = [np.std(loaded_OmM_data), np.mean(loaded_OmM_data)] w_std, w_mean = [np.std(loaded_w_data), np.mean(loaded_w_data)] read_in_H0_vals[i] = [H0_std, H0_mean] read_in_OmM_vals[i] = [OmM_std, OmM_mean] read_in_OmM_times_w_vals[i] = [contour_areas[1], 0.0 ] read_in_w_vals[i] = [w_std, w_mean]