def Mass_peak(x): r=cosmo.sigma(dc0/x,z=0,inverse=True) M=peaks.lagrangianM(r)#/h return np.log10(M)
0.1, 0.18, 0.195, 0.2, 0.22, 0.23, 0.265, 0.27, 0.3, 0.31, 0.4, 0.52 ] else: print('snapshot not valid\naborting...') sys.exit() sig_intervals = 1 / (10**np.array(log1sig_intervals)) #sig_bins = (sig_intervals[1:] + sig_intervals[:-1])/2 sig_bins = [(sig_intervals[0] + sig_intervals[1]) / 2, (sig_intervals[1] + sig_intervals[2]) / 2, (sig_intervals[3] + sig_intervals[4]) / 2, (sig_intervals[5] + sig_intervals[6]) / 2, (sig_intervals[7] + sig_intervals[8]) / 2, (sig_intervals[9] + sig_intervals[10]) / 2] print(sig_bins) R_intervals = cosmo.sigma(sig_intervals, z=z_snap, inverse=True) M_intervals = peaks.lagrangianM(R_intervals) / h print(log1sig_intervals) interval0 = ((log1_sigf_1 <= log1sig_intervals[1])) interval1 = ((log1_sigf_1 <= log1sig_intervals[2]) & (log1_sigf_1 > log1sig_intervals[1])) interval2 = ((log1_sigf_1 <= log1sig_intervals[4]) & (log1_sigf_1 > log1sig_intervals[3])) interval3 = ((log1_sigf_1 <= log1sig_intervals[6]) & (log1_sigf_1 > log1sig_intervals[5])) interval4 = ((log1_sigf_1 <= log1sig_intervals[8]) & (log1_sigf_1 > log1sig_intervals[7])) interval5 = ((log1_sigf_1 <= log1sig_intervals[10]) & (log1_sigf_1 > log1sig_intervals[9])) low = min(xoff)
def Mass_sigma(x): r=cosmo.sigma(1.68/x,z=0,inverse=True) M=peaks.lagrangianM(r)/h return np.log10(M)
def sigma_mass(x): sig = 1 / 10**x r = cosmo.sigma(sig, z=z_snap, inverse=True) #Mpc/h M = peaks.lagrangianM(r) #Msun/h mas = np.log10(M) return mas
def Mass_sigma(x): r = cosmo.sigma(1 / (10**x), z=0, inverse=True) M = peaks.lagrangianM(r) / cosmo.Hz(z=0) * 100 return np.log10(M)
def Mass_sigma(x): r = cosmo.sigma(1 / 10**x, z=z_snap, inverse=True) M = peaks.lagrangianM(r) #/h return np.log10(M)
path_2_snapshot_data0_4 = os.path.join(dir_0_4, 'distinct_1.0.fits') zpl = np.array([1 / 1.0 - 1, 1 / 0.6565 - 1, 1 / 0.4922 - 1, 1 / 0.353 - 1]) colors = ['b', 'r', 'c', 'm'] print(colors[0]) aexp = float(os.path.basename(path_2_snapshot_data[0][:-8]).split('_')[1]) z_snap = 1 / aexp - 1 print('z=%.3g' % (z_snap)) cosmo = cosmology.setCosmology('multidark-planck') h = cosmo.Hz(0) / 100 E_z = cosmo.Ez(z=z_snap) Vol1 = (4e3 / (1 + z_snap))**3 dc = peaks.collapseOverdensity(z=z_snap) rho_m = cosmo.rho_m(z=z_snap) * 1e9 R = cosmo.sigma(1 / 10**(-0.1), z=0, inverse=True) M = peaks.lagrangianM(R) print(M / h) R = cosmo.sigma(1 / 10**(0.19), z=0, inverse=True) M = peaks.lagrangianM(R) print(M / h) #sys.exit() print('1e15 Msun is log1_sigma = ', np.log10(1 / cosmo.sigma(peaks.lagrangianR(1e15 * h), z=z_snap))) print('1e14 Msun is log1_sigma = ', np.log10(1 / cosmo.sigma(peaks.lagrangianR(1e14 * h), z=z_snap))) print('1e13 Msun is log1_sigma = ', np.log10(1 / cosmo.sigma(peaks.lagrangianR(1e13 * h), z=z_snap))) print('reading data...') hd1 = fits.open(path_2_snapshot_data[0])
R3 = peaks.lagrangianR(mass3_) sigma3 = cosmo.sigma(R3,z=z_snap) log1_sigma3 = np.log10(1/sigma3) logxoff_data3 = np.log10(hd3[1].data['Xoff']/hd3[1].data['Rvir']) log_spin3 = np.log10(hd3[1].data['Spin']) #fsigma1 s_low_HMD = s_low_list_HMD[i] print('s_low_HMD = ',s_low_HMD) s_low_BigMD = s_low_list_BigMD[i] print('s_low_BigMD = ',s_low_BigMD) s_low_MDPL = s_low_list_MDPL[i] print('s_low_MDPL = ',s_low_MDPL) r_low_HMD = cosmo.sigma(1/10**s_low_HMD, z=z_snap, inverse = True) mass_low_HMD = peaks.lagrangianM(r_low_HMD)/h print('mass low HMD = %.3g M sun'%(mass_low_HMD)) r_low_BigMD = cosmo.sigma(1/10**s_low_BigMD, z=z_snap, inverse = True) mass_low_BigMD = peaks.lagrangianM(r_low_BigMD)/h print('mass low BigMD = %.3g M sun'%(mass_low_BigMD)) r_low_MDPL = cosmo.sigma(1/10**s_low_MDPL, z=z_snap, inverse = True) mass_low_MDPL = peaks.lagrangianM(r_low_MDPL)/h print('mass low MDPL = %.3g M sun'%(mass_low_MDPL)) s_edges1 = np.arange(s_low_HMD,0.5,diff_sigma1) mass1 = np.log10(mass1_) counts_f1 = np.histogram(log1_sigma1,bins=s_edges1)[0] print('from 4Gpc = ', np.sum(counts_f1),'halos') s_bins1 = (s_edges1[:-1]+s_edges1[1:])/2 Runo = cosmo.sigma(1/10**s_bins1,inverse=True,z=z_snap) Runo_ = cosmo.sigma(1/10**s_edges1,inverse=True,z=z_snap) M1 = peaks.lagrangianM(Runo)