Beispiel #1
0
from hmf import MassFunction
from astropy.cosmology import FlatLambdaCDM
import astropy.units as u
cosmo = FlatLambdaCDM(H0=67.77*u.km/u.s/u.Mpc, Om0=0.307115, Ob0=0.048206)


qty = 'mvir'
dir = join(os.environ['MVIR_DIR'])
# loads summary file
dataMF = fits.open( join(dir, qty+"_summary.fits"))[1].data
zzero = (dataMF['redshift']==0) & (dataMF['log_mvir']>3+dataMF['logMpart']) & (dataMF['dN_counts_cen'] > 10 )
dlnSigM = abs(n.log(dataMF['log_mvir_max']-dataMF['log_mvir_min'])*dataMF['dlnsigmaMdlnM'])

#lib.covariance_factor
#lib.f_BH(sigma, 0.333, 0.788, 0.807, 1.795)
bias = lambda sigma : lib.b_BH(sigma, a=0.8915, p=0.5524, q=1.578)

# sample variance equation 16
var_sv_L04 = lambda sa, sb, fc=lib.covariance_factor_jk : bias(sa) * bias(sb) * (lib.hmf.growth_factor)**2. * fc[0]
var_sv_L10 = lambda sa, sb, fc=lib.covariance_factor_jk : bias(sa) * bias(sb) * (lib.hmf.growth_factor)**2. * fc[1]
var_sv_L25 = lambda sa, sb, fc=lib.covariance_factor_jk : bias(sa) * bias(sb) * (lib.hmf.growth_factor)**2. * fc[2]
var_sv_L40 = lambda sa, sb, fc=lib.covariance_factor_jk : bias(sa) * bias(sb) * (lib.hmf.growth_factor)**2. * fc[3]
var_sv_L80 = lambda sa, sb, fc=lib.covariance_factor_jk : bias(sa) * bias(sb) * (lib.hmf.growth_factor)**2. * fc[4]

# shot noise variance 
var_sn_L04 = lambda sigma, lbox=40.   : lib.shot_simple(sigma, lbox**3.)
var_sn_L10 = lambda sigma, lbox=100. : lib.shot_simple(sigma, lbox**3.)
var_sn_L25 = lambda sigma, lbox=250. : lib.shot_simple(sigma, lbox**3.)
var_sn_L40 = lambda sigma, lbox=400. : lib.shot_simple(sigma, lbox**3.)
var_sn_L80 = lambda sigma, lbox=800. : lib.shot_simple(sigma, lbox**3.)
Beispiel #2
0
matplotlib.rcParams['font.size']=12
import matplotlib.pyplot as p

# mass function theory
from hmf import MassFunction
from astropy.cosmology import FlatLambdaCDM
import astropy.units as u
cosmo = FlatLambdaCDM(H0=67.77*u.km/u.s/u.Mpc, Om0=0.307115, Ob0=0.048206)

#lib.covariance_factor
#lib.f_BH(sigma, 0.333, 0.788, 0.807, 1.795)
A0=0.333
a0=0.786
p0=0.807
q0=1.795
bias = lambda sigma, a0, p0, q0 : lib.b_BH(sigma, a0, p0, q0)
fsigma = lambda sigma : lib.f_BH(sigma, A0, a0, p0, q0)

# diagonal error
dn_L04 = lambda sigma, a, p, q :  (((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[0]))**2. + lib.shot_noise(sigma, 400.**3.)  )**0.5
dn_L10 = lambda sigma, a, p, q :  (((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[1]) )**2. + lib.shot_noise(sigma, 1000.**3.) )**0.5  
dn_L25 = lambda sigma, a, p, q : (((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[2]) )**2. + lib.shot_noise(sigma, 2500.**3.) )**0.5  
dn_L40 = lambda sigma, a, p, q :  (((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[3]) )**2. + lib.shot_noise(sigma, 4000.**3.) )**0.5  

# off diagonal error 
dn_cov_L04 = lambda s1, s2, a, p, q : (dn_L04(s1, a, p, q)*dn_L04(s2, a, p, q))**0.5 
dn_cov_L10 = lambda s1, s2, a, p, q : (dn_L10(s1, a, p, q)*dn_L10(s2, a, p, q) )**0.5
dn_cov_L25 = lambda s1, s2, a, p, q : (dn_L25(s1, a, p, q)*dn_L25(s2, a, p, q) )**0.5
dn_cov_L40 = lambda s1, s2, a, p, q : (dn_L40(s1, a, p, q)*dn_L40(s2, a, p, q) )**0.5

# opens the data 
Beispiel #3
0
# mass function theory
from hmf import MassFunction
from astropy.cosmology import FlatLambdaCDM
import astropy.units as u
cosmo = FlatLambdaCDM(H0=67.77 * u.km / u.s / u.Mpc,
                      Om0=0.307115,
                      Ob0=0.048206)

#lib.covariance_factor
#lib.f_BH(sigma, 0.333, 0.788, 0.807, 1.795)
A0 = 0.333
a0 = 0.786
p0 = 0.807
q0 = 1.795
bias = lambda sigma, a0, p0, q0: lib.b_BH(sigma, a0, p0, q0)
fsigma = lambda sigma: lib.f_BH(sigma, A0, a0, p0, q0)

# diagonal error
dn_L04 = lambda sigma, a, p, q: (
    ((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. *
     (lib.covariance_factor[0]))**2. + lib.shot_simple(sigma, 400.**3.))**0.5
dn_L10 = lambda sigma, a, p, q: (
    ((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. *
     (lib.covariance_factor[1]))**2. + lib.shot_simple(sigma, 1000.**3.))**0.5
dn_L25 = lambda sigma, a, p, q: (
    ((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. *
     (lib.covariance_factor[2]))**2. + lib.shot_simple(sigma, 2500.**3.))**0.5
dn_L40 = lambda sigma, a, p, q: (
    ((bias(sigma, a, p, q) * lib.hmf.growth_factor)**2. *
     (lib.covariance_factor[3]))**2. + lib.shot_simple(sigma, 4000.**3.))**0.5
Beispiel #4
0
import matplotlib.pyplot as p

# mass function theory
from hmf import MassFunction
from astropy.cosmology import FlatLambdaCDM
import astropy.units as u
cosmo = FlatLambdaCDM(H0=67.77*u.km/u.s/u.Mpc, Om0=0.307115, Ob0=0.048206)


qty = 'mvir'
dir = join(os.environ['MD_DIR'])
vlow, vhigh, vmean, scale, b, bErr, volume, a = n.loadtxt(join(dir, "clustering", "halo-bias-measurement-summary.data"), unpack=True)
sel0 = (a==1)


bias = lambda sigma : lib.b_BH(sigma, a=0.8915, p=0.5524, q=1.578)

alpha = lambda a : 0.346 - 0.059*a + 0.025*a**2.
logBeta = lambda a : 2.209 + 0.060 * a -0.021*a**2.

mvir_to_vmax = lambda mvir, a : 10**logBeta(a) * (mvir/10**12)**alpha(a)

#vmax_to_mvir = lambda vmax, a : 10**12 * (vmax*10**(-logBeta(a)))**(-alpha(a))
#print vmax_to_mvir(300, 1)
masses = n.logspace(7,16,180)
vmaxs = mvir_to_vmax(masses,1)

vmax_to_mvir = interp1d(vmaxs, masses)

m_low = vmax_to_mvir(vlow)
m_high = vmax_to_mvir(vhigh)
# plotting modules
import matplotlib
#matplotlib.use('pdf')
matplotlib.rcParams['font.size']=12
import matplotlib.pyplot as p

# mass function theory
from hmf import MassFunction
from astropy.cosmology import FlatLambdaCDM
import astropy.units as u
cosmo = FlatLambdaCDM(H0=67.77*u.km/u.s/u.Mpc, Om0=0.307115, Ob0=0.048206)

#lib.covariance_factor
#lib.f_BH(sigma, 0.333, 0.788, 0.807, 1.795)
bias = lambda sigma : lib.b_BH(sigma, a=0.908, p=0.671, q=1.737)

# diagonal error
dn_n_L04 = lambda sigma :  ((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[0]) )
dn_n_L10 = lambda sigma :  ((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[1]) )
dn_n_L25 = lambda sigma : ((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[2]) )
dn_n_L40 = lambda sigma :  ((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[3]) )

dn_L04 = lambda sigma :  (((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[0]))**2. + lib.shot_noise(sigma, 400.**3.)  )**0.5
dn_L10 = lambda sigma :  (((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[1]) )**2. + lib.shot_noise(sigma, 1000.**3.) )**0.5  
dn_L25 = lambda sigma : (((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[2]) )**2. + lib.shot_noise(sigma, 2500.**3.) )**0.5  
dn_L40 = lambda sigma :  (((bias(sigma) * lib.hmf.growth_factor)**2. * (lib.covariance_factor[3]) )**2. + lib.shot_noise(sigma, 4000.**3.) )**0.5  

dn_n_sn_L04 = lambda sigma : ( lib.shot_noise(sigma, 400.**3.)  )**0.5 
dn_n_sn_L10 = lambda sigma : ( lib.shot_noise(sigma, 1000.**3.) )**0.5 
dn_n_sn_L25 = lambda sigma : ( lib.shot_noise(sigma, 2500.**3.)  )**0.5 
Beispiel #6
0
qty = 'mvir'
dir = join(os.environ['MVIR_DIR'])
plotDir = "covariance"
# loads summary file
dataMF = fits.open(join(dir, qty + "_summary.fits"))[1].data
zzero = (dataMF['redshift']
         == 0) & (dataMF['log_mvir'] >
                  3 + dataMF['logMpart']) & (dataMF['dN_counts_cen'] > 10)
dlnSigM = abs(
    n.log(dataMF['log_mvir_max'] - dataMF['log_mvir_min']) *
    dataMF['dlnsigmaMdlnM'])

#lib.covariance_factor
#lib.f_BH(sigma, 0.333, 0.788, 0.807, 1.795)
biasHMF = lambda sigma: lib.b_BH(sigma, a=0.90343, p=0.64031, q=1.69561)
biasB = lambda sigma: lib.b_BH(sigma, a=0.7400, p=0.6140, q=1.6468)

bias = biasB
# sample variance equation 16
var_sv_L04 = lambda sa, sb, fc=lib.covariance_factor_jk: bias(sa) * bias(
    sb) * (lib.hmf.growth_factor)**2. * fc[0]
var_sv_L10 = lambda sa, sb, fc=lib.covariance_factor_jk: bias(sa) * bias(
    sb) * (lib.hmf.growth_factor)**2. * fc[1]
var_sv_L25 = lambda sa, sb, fc=lib.covariance_factor_jk: bias(sa) * bias(
    sb) * (lib.hmf.growth_factor)**2. * fc[2]
var_sv_L40 = lambda sa, sb, fc=lib.covariance_factor_jk: bias(sa) * bias(
    sb) * (lib.hmf.growth_factor)**2. * fc[3]
var_sv_L80 = lambda sa, sb, fc=lib.covariance_factor_jk: bias(sa) * bias(
    sb) * (lib.hmf.growth_factor)**2. * fc[4]