There's been various concerns about the SHAMs I've made being done correctly. I'm going to take a look at the clustering of them all in the same notebook for easy comparison.
In [1]:
import numpy as np
import astropy
from halotools.mock_observables import tpcf
In [2]:
from matplotlib import pyplot as plt
%matplotlib inline
import seaborn as sns
sns.set()
In [3]:
%%bash
ls ../../bin/shams/*.npy
In [4]:
import h5py
f = h5py.File('/home/users/swmclau2/scratch/catalog_ab_halo_mpeak_shuffled.hdf5', 'r')
print f.keys()
f.close()
In [5]:
simname = 'darksky'
if simname == 'darksky':
vpeak_cat = astropy.table.Table.read('/home/users/swmclau2/scratch/catalog_ab_halo_vmax@mpeak.hdf5', format = 'hdf5',\
path = 'halo_vmax@mpeak_catalog')
mpeak_cat = astropy.table.Table.read('/home/users/swmclau2/scratch/catalog_ab_halo_mpeak.hdf5', format = 'hdf5',\
path = 'halo_mpeak_catalog')
shuffled_cat = astropy.table.Table.read('/home/users/swmclau2/scratch/catalog_ab_halo_mpeak_shuffled.hdf5', format = 'hdf5',\
path = 'halo_mpeak_shuffled')
In [6]:
plt.hist(shuffled_cat['gal_smass'])
Out[6]:
In [7]:
plt.hist(vpeak_cat['gal_smass'])
Out[7]:
In [8]:
rbins = np.logspace(-1, 1.5, 15)
rpoints = (rbins[1:]+rbins[:-1])/2
In [9]:
pos = np.c_[vpeak_cat['halo_x'], vpeak_cat['halo_y'],vpeak_cat['halo_z']]
vpeak_xi = tpcf(pos, rbins, period=1000.0)
In [10]:
pos = np.c_[mpeak_cat['halo_x'], mpeak_cat['halo_y'],mpeak_cat['halo_z']]
mpeak_xi = tpcf(pos, rbins, period=1000.0)
In [11]:
pos = np.c_[shuffled_cat['halo_x'], shuffled_cat['halo_y'],shuffled_cat['halo_z']]
shuffled_xi = tpcf(pos, rbins, period=1000.0)
In [12]:
plt.plot(rpoints, vpeak_xi, label = 'Vpeak')
plt.plot(rpoints, mpeak_xi, label = 'Mpeak')
plt.plot(rpoints, shuffled_xi, label = 'Shuffled')
plt.loglog();
plt.legend(loc='best')
plt.xlabel('r [Mpc]')
plt.ylabel('xi')
Out[12]:
In [13]:
plt.plot(rpoints, vpeak_xi/shuffled_xi, label = 'Vpeak/Shuffled')
plt.plot(rpoints, mpeak_xi/shuffled_xi, label = 'Mpeak/Shuffled')
plt.xscale('log');
plt.legend(loc='best')
plt.xlabel('r [Mpc]')
plt.ylabel('xi')
Out[13]:
In [14]:
%%bash
ls /home/users/swmclau2/Git/pearce/bin/shams/catalog*.npy -ltr
In [15]:
#scratch_path = '/home/users/swmclau2/scratch/'
#halo_catalog = astropy.table.Table.read(scratch_path+'catalog_ab_%s_large.hdf5'%('halo_mpeak'), format = 'hdf5')
#mass_bins = compute_mass_bins(halo_catalog['halo_mvir'], 0.2)
mass_bins = np.loadtxt('ds_mass_bins.npy')
mass_bin_centers = (mass_bins[1:]+mass_bins[:-1])/2.0
In [16]:
hod_dict = {}
for catname in ['mpeak_catalog', 'vmax@mpeak_catalog', 'mpeak_shuffled']:
hod_dict[catname] = {}
for hodname in ['cen', 'sat']:
hod_dict[catname][hodname] = np.loadtxt('/home/users/swmclau2/Git/pearce/bin/shams/catalog_ab_halo_%s_%s_hod.npy'%(catname, hodname))
In [17]:
type = 'cen'
for name, type_dict in hod_dict.iteritems():
plt.plot(mass_bin_centers, type_dict[type], label = name)
plt.legend(loc = 'best')
plt.xscale('log')
plt.show()
In [18]:
hod_dict['mpeak_shuffled']['cen']
Out[18]:
In [19]:
type = 'sat'
for name, type_dict in hod_dict.iteritems():
plt.plot(mass_bin_centers, type_dict[type], label = name)
plt.legend(loc = 'best')
plt.loglog()
plt.show()
In [20]:
for name, type_dict in hod_dict.iteritems():
plt.plot(mass_bin_centers, type_dict['cen']+type_dict['sat'], label = name)
plt.legend(loc = 'best')
plt.loglog()
#plt.xscale('log')
plt.show()
In [ ]: