from simulation_grid import Simulation_Grid from simulation_parameters import * from mcmc_functions import * from mcmc_data_functions import * from data_thermal_history import * from mcmc_plotting_functions import * from plot_UVB_Rates import Plot_Grid_UVB_Rates field = 'T0+tau' output_dir = root_dir + f'fit_results_{field}/' create_directory( output_dir ) SG = Simulation_Grid( parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir ) SG.Load_Grid_Analysis_Data() sim_ids = SG.sim_ids comparable_data = Get_Comparable_Composite_T0_tau( factor_sigma_tau_becker=6.0, factor_sigma_tau_keating=4.0, ) comparable_grid = Get_Comparable_Composite_T0_tau_from_Grid( comparable_data, SG ) fields = [ 'T0', 'tau' ] data_grid = Get_Data_Grid( fields, SG ) params = SG.parameters deltaZ_H_vals = [ -0.45, -0.15, 0.15, 0.45 ] ids_closest = [] for deltaZ_H in deltaZ_H_vals: params_search = np.array([ 0.41, 0.82, 0.13, deltaZ_H ])
import os, sys import numpy as np sys.path.append('tools') from tools import * #Append analysis directories to path extend_path() from parameters_UVB_rates import param_UVB_Rates from simulation_grid import Simulation_Grid from simulation_parameters import * from load_tabulated_data import * from mcmc_data_functions import Get_Comparable_T0_Gaikwad SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) SG.Load_Grid_Analysis_Data() sim_ids = SG.sim_ids output_dir = SG.root_dir + 'simulation_grid_data/' create_directory(output_dir) grid_param_values = np.array( [SG.Grid[sim_id]['parameter_values'] for sim_id in sim_ids]) header = f'Row_i = Values of [ beta_He, beta_H, delta_z_He, delta_z_H ] for simulation i \nn_rows, n_cols = {grid_param_values.shape[0]}, {grid_param_values.shape[1]} ' file_name = output_dir + f'grid_parameters.txt' np.savetxt( file_name, grid_param_values, header=header, fmt='%.2f', )
import os, sys import numpy as np sys.path.append('tools') from tools import * #Append analysis directories to path extend_path() from parameters_UVB_rates import param_UVB_Rates from simulation_grid import Simulation_Grid from simulation_parameters import * from plot_UVB_Rates import Plot_Grid_UVB_Rates SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) SG.Create_Grid_Directory_Structure() SG.Create_Directories_for_Simulations() # SG.Create_All_Submit_Job_Scripts() SG.Create_All_Parameter_Files() SG.Create_UVB_Rates_Files(max_delta_z=0.1) output_dir = root_dir + 'figures/' create_directory(output_dir) # SG.Load_Grid_UVB_Rates() # Plot_Grid_UVB_Rates( SG, output_dir )
from simulation_grid import Simulation_Grid from simulation_parameters import * from mcmc_functions import * from mcmc_data_functions import * from data_thermal_history import * from mcmc_plotting_functions import * from mcmc_sampling_functions import * ps_data_dir = 'lya_statistics/data/' output_dir = root_dir + 'interpolated_observables/' create_directory( output_dir ) SG = Simulation_Grid( parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir ) SG.Load_Grid_Analysis_Data() ps_range = SG.Get_Power_Spectrum_Range( kmax=1 ) sim_ids = SG.sim_ids z_vals = np.array([ 2.0, 2.2, 2.4, 2.6, 2.8, 3.0, 3.2, 3.4, 3.6, 3.8, 4.0, 4.2, 4.6, 4.4, 5.0, 5.4, ]) data_grid, data_grid_power_spectrum = Get_Data_Grid_Composite( ['P(k)', 'T0', 'tau', 'tau_HeII'], SG, z_vals=z_vals ) params = SG.parameters scale_He_values = params[0]['values'] scale_H_values = params[1]['values'] deltaZ_He_values = params[2]['values'] deltaZ_H_values = params[3]['values'] scale_He_HL = 0.44
guess, args=(F_mean, tau_los)) tau_los_rescaled = alpha * tau_los F_los_rescaled = np.exp(-tau_los_rescaled) F_mean_rescaled = F_los_rescaled.mean() diff = np.abs(F_mean_rescaled - F_mean) / F_mean if diff > 1e-6: print( 'WARNING: Rescaled F_mean mismatch: {F_mean_rescaled} {f_mean}') return tau_los_rescaled sim_id = 0 SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) SG.Load_Grid_Analysis_Data(sim_ids=[sim_id], load_fit=False) ps_out_dir = SG.root_dir + 'flux_power_spectrum_files/' # sim_name = SG.Grid[sim_id]['key'] # output_dir = ps_out_dir + sim_name + '/' output_dir = SG.root_dir + 'figures/rescaled_ps/' create_directory(output_dir) data_sim = SG.Grid[sim_id]['analysis'] data_ps = SG.Grid[sim_id]['analysis']['power_spectrum'] available_indices = data_sim['ps_available_indices'] # available_indices = [30] sim_dir = SG.Get_Simulation_Directory(sim_id)
# data_labels = 'BOSS + Irsic' # data_labels = 'BOSS + Boera' data_labels = 'BOSS + Irsic + Boera' ps_data_dir = 'lya_statistics/data/' mcmc_dir = root_dir + 'fit_mcmc/' input_dir = mcmc_dir + f'{data_name}/' output_dir = input_dir + 'observable_samples/' create_directory(output_dir) kmax = 0.2 # sim_ids = range(10) sim_ids = None SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) SG.Load_Grid_UVB_Rates() SG.Load_Grid_Analysis_Data(sim_ids=sim_ids, mcmc_fit_dir='fit_mcmc_delta_0_1.0') sim_ids = SG.sim_ids ps_range = SG.Get_Power_Spectrum_Range(kmax=kmax) z_vals = [2.2, 2.4, 2.6, 2.8, 3.0, 3.2, 3.4, 3.6, 3.8, 4.0, 4.2, 4.4, 4.6, 5.0] data_grid, data_grid_power_spectrum = Get_Data_Grid_Composite( ['P(k)', 'T0', 'gamma', 'tau', 'tau_HeII'], SG, z_vals=z_vals, sim_ids=sim_ids, load_uvb_rates=True)
from generate_grackle_uvb_file import Load_Grackle_File, Modify_UVB_Rates, Extend_Rates_Redshift, Copy_Grakle_UVB_Rates data_name = 'fit_results_P(k)+tau_HeII_Boss' data_name = 'fit_results_P(k)+tau_HeII_Boss_Irsic_Boera' # data_name = 'fit_results_P(k)+tau_HeII_Walther_kmax0.02_rescaleTauHeII1.0' # data_name = 'fit_results_P(k)+tau_HeII_Walther_kmax0.10_rescaleTauHeII0.8' # data_name = 'fit_results_P(k)+tau_HeII_Boss_Walther_kmax0.10_rescaleTauHeII0.3' ps_data_dir = 'lya_statistics/data/' mcmc_dir = root_dir + 'fit_mcmc/' input_dir = mcmc_dir + f'{data_name}/' output_dir = input_dir + 'observable_samples/' create_directory(output_dir) SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) params = SG.parameters stats_file = input_dir + 'fit_mcmc.pkl' samples_file = input_dir + 'samples_mcmc.pkl' print(f'Loading File: {stats_file}') stats = pickle.load(open(stats_file, 'rb')) for p_id in params.keys(): p_name = params[p_id]['name'] p_stats = stats[p_name] params[p_id]['mean'] = p_stats['mean'] params[p_id]['sigma'] = p_stats['standard deviation'] print(f'Loading File: {samples_file}') param_samples = pickle.load(open(samples_file, 'rb'))
create_directory(mcmc_dir) if fit_normalized_ps: output_dir = mcmc_dir + f'fit_results_{field}_{name}_normalizd_{ps_norm["normalization"]}_{ps_norm["type"]}/' else: output_dir = mcmc_dir + f'fit_results_{field}_{name}/' create_directory(output_dir) load_mcmc_results = False # load_mcmc_results = True rescaled_walther = True rescale_walter_file = ps_data_dir + 'rescale_walther_to_boss.pkl' # sim_ids = range(10) SG = Simulation_Grid(parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir) SG.Load_Grid_Analysis_Data(load_normalized_ps=fit_normalized_ps, ps_norm=ps_norm) ps_range = SG.Get_Power_Spectrum_Range(kmax=kmax) sim_ids = SG.sim_ids z_min = 2.2 z_max = 5.0 ps_extras = { 'range': ps_range, 'data_dir': ps_data_dir, 'data_sets': data_ps_sets, 'rescaled_walther': rescaled_walther, 'rescale_walter_file': rescale_walter_file }
import os, sys import numpy as np sys.path.append('tools') from tools import * #Append analysis directories to path extend_path() from parameters_UVB_rates import param_UVB_Rates from simulation_grid import Simulation_Grid from simulation_parameters import * from plot_UVB_Rates import Plot_Grid_UVB_Rates SG = Simulation_Grid( parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir ) reduced_snaps_dir = SG.root_dir + 'reduced_snapshot_files/' output_root_dir = SG.root_dir + 'selected_snapshot_files_params_H/' create_directory( output_root_dir ) # fields = [ 'temperature' ] fields = [ 'density', 'HI_density' ] # params = { 'scale_He':None, 'deltaZ_He':None, 'scale_H':0.86, 'deltaZ_H':0.0 } params = { 'scale_He':0.3, 'deltaZ_He':0.2, 'scale_H':None, 'deltaZ_H':None } print( f'Selecting: {params} ' ) selected_sims = SG.Select_Simulations( params, tolerance=5e-3 ) n_sims = len( selected_sims ) print( f'N Selected Sims: {n_sims} ' ) sim_id = selected_sims[0] data_sim = SG.Grid[sim_id]
import pickle sys.path.append('tools') from tools import * #Append analysis directories to path extend_path() from parameters_UVB_rates import param_UVB_Rates from simulation_grid import Simulation_Grid from simulation_parameters import * from plot_UVB_Rates import Plot_Grid_UVB_Rates create_directory( root_dir ) create_directory( figures_dir ) SG = Simulation_Grid( parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir ) SG.Get_Grid_Status( check_queue=False ) SG.Load_Grid_Analysis_Data( ) sim_ids = SG.sim_ids data_out = {} for sim_id in sim_ids: data_out[sim_id] = {} data_out[sim_id]['z'] = SG.Grid[sim_id]['analysis']['z'] data_out[sim_id]['T0'] = SG.Grid[sim_id]['analysis']['T0'] data_out[sim_id]['F_mean'] = SG.Grid[sim_id]['analysis']['F_mean'] data_out[sim_id]['parameters'] = SG.Grid[sim_id]['parameters']
#Append analysis directories to path extend_path() from parameters_UVB_rates import param_UVB_Rates from simulation_grid import Simulation_Grid from simulation_parameters import * from plot_flux_power_spectrum import plot_power_spectrum_grid from plot_T0_tau import plot_T0_and_tau, plot_tau_HeII from mcmc_data_functions import Get_Comparable_Composite from grid_ploting_functions import Plot_Grid_TO, Plot_Grid_TO_gamma, Plot_Grid_tau_HeII ps_data_dir = 'lya_statistics/data/' output_dir = root_dir + 'figures/' create_directory( output_dir ) SG = Simulation_Grid( parameters=param_UVB_Rates, sim_params=sim_params, job_params=job_params, dir=root_dir ) sim_ids = list(SG.sim_ids) # sim_ids = range(10) rescaled_ps = True ps_norm = {'normalization':'Becker', 'type':'tau_eff_global'} SG.Load_Grid_Analysis_Data( sim_ids=sim_ids, load_fit=True, load_normalized_ps=rescaled_ps, ps_norm=ps_norm, mcmc_fit_dir='fit_mcmc_delta_0_1.0' ) field = 'T0+tau' z_min = 2.0 z_max = 5.0 tau_extras = {'factor_sigma_becker':6.0, 'factor_sigma_keating':4.0} comparable_data = Get_Comparable_Composite( field, z_min, z_max, tau_extras=tau_extras ) sim_data_sets = [ ]