def generate_model_data_vector(self, times, parameters): # parameters = get_parameter_set() cosmo = LambdaCDM(H0=parameters[0], Om0=parameters[1], Ode0=parameters[2], Ob0=parameters[3], Tcmb0=2.725) model_data_vector = cosmo.age(times).value #not keeping units here return model_data_vector
cat_ID = cat['BESTOBJID'] EpA = fits.getdata('~/EpA_Results.fits') cosmo = LambdaCDM(H0=70, Om0=0.3, Ode0=0.7) """ two sections below for converting the age data to Z values and GYrs so that they could be plotted """ sb_age_list_gyr=[] sb_age_list_z = [] zrange = np.arange(0,1396) for i in zrange: age = cosmo.age(cat_z[i]) age_diff = age.value - (EpA['AGE'][i] / 1000) sb_age_list_gyr.append(age_diff * age.unit) if age_diff >= 0: sb_age_list_z.append(astropy.cosmology.z_at_value(cosmo.age, sb_age_list_gyr[i])) sb_age_list_z_2 = [] sb_age_list_gyr_2 = [] zrange2 = np.arange(0,26) for i in zrange2: age = cosmo.age(cat_z[high_index[0]][i]) age_diff = age.value - (EpA['AGE'][high_index[0]][i] / 1000) sb_age_list_gyr_2.append(age_diff * age.unit) if age_diff >= 0: sb_age_list_z_2.append(astropy.cosmology.z_at_value(cosmo.age, sb_age_list_gyr_2[i]))
snap_redshifts = np.empty(0) redshift_start = 5. redshift_end = 1.e-7 snip_time_delta = 5.0e-3 # Time difference between snipshots in Gyr (Yannick suggests 5 Myr) all_snapshots = True ####################################################################################### Planck18 = LambdaCDM(cosmology['h'] * 100, cosmology['Omega_m'], cosmology['Omega_lambda'], Ob0=cosmology['Omega_b']) time_start = Planck18.age(redshift_start) time_end = Planck18.age(redshift_end) snip_time_delta *= Gyr number_of_snips = int((time_end - time_start) / snip_time_delta) snip_times = np.linspace(time_start, time_end, number_of_snips, dtype=np.float) snip_redshifts = np.zeros(len(snip_times), dtype=np.float64) for i in range(len(snip_times)): snip_redshifts[i] = z_at_value(Planck18.age, snip_times[i]) if len(snap_redshifts) > 0: # Delete duplicate redshifts for z_snap in snap_redshifts: idx_close = np.where( np.abs(snip_redshifts - z_snap) <= snip_time_delta.value / 2)[0]
18.08, 15.28, 13.06, 11.26, 9.79, 8.57, 7.54, 6.67, 5.92, 5.28, 4.72, 4.24, 3.81, 3.43, 3.09, 2.79, 2.52, 2.28, 2.06, 1.86, 1.68, 1.51, 1.36, 1.21, 1.08, 0.96, 0.85, 0.74, 0.64, 0.55, 0.46, 0.37, 0.29, 0.21, 0.14, 0.07, 1.e-7 ]) snip_time_delta = 5.0e-3 # Time interval between snipshots in Gyr (Yannick suggests 5 Myr) ####################################################################################### Planck18 = LambdaCDM(cosmology['h'] * 100, cosmology['Omega_m'], cosmology['Omega_lambda'], Ob0=cosmology['Omega_b']) time_start = Planck18.age(snap_redshifts[0]) time_end = Planck18.age(snap_redshifts[-1]) snip_time_delta *= Gyr number_of_snips = int((time_end - time_start) / snip_time_delta) snip_times = np.linspace(time_start, time_end, number_of_snips, dtype=np.float) snip_redshifts = np.zeros(len(snip_times), dtype=np.float64) for i in range(len(snip_times)): snip_redshifts[i] = z_at_value(Planck18.age, snip_times[i]) # Delete duplicate redshifts for z_snap in snap_redshifts: idx_close = np.where(np.abs(snip_redshifts - z_snap) <= 5.0e-6)[0] snip_redshifts = np.delete(snip_redshifts, idx_close) # Collect all outputs