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 
dn_n_sn_L40 = lambda sigma : ( lib.shot_noise(sigma, 4000.**3.)  )**0.5 

# off diagonal error 
# (lib.nbar(s1) * lib.nbar(s2) )**0.5 *
dn_cov_L04 = lambda s1, s2 : (dn_L04(s1)*dn_L04(s2))**0.5 # (  (bias(s1)*bias(s2) * lib.hmf.growth_factor**2.  * (lib.covariance_factor[0]) )**2.+ lib.shot_noise(n.min([s1,s2]), 400.**3.)  )**0.5   
dn_cov_L10 = lambda s1, s2 : (dn_L10(s1)*dn_L10(s2) )**0.5#(  (bias(s1)*bias(s2) * lib.hmf.growth_factor**2.  * (lib.covariance_factor[1]) )**2.+ lib.shot_noise(n.min([s1,s2]), 1000.**3.)  )**0.5   
dn_cov_L25 = lambda s1, s2 : (dn_L25(s1)*dn_L25(s2) )**0.5#(  (bias(s1)*bias(s2) * lib.hmf.growth_factor**2.  * (lib.covariance_factor[2]) )**2.+ lib.shot_noise(n.min([s1,s2]), 2500.**3.)  )**0.5   
dn_cov_L40 = lambda s1, s2 : (dn_L40(s1)*dn_L40(s2) )**0.5#(  (bias(s1)*bias(s2) * lib.hmf.growth_factor**2.  * (lib.covariance_factor[3]) )**2.+ lib.shot_noise(n.min([s1,s2]), 4000.**3.)  )**0.5   
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 

#Quantity studied
qty = "mvir"
# working directory
Exemple #3
0
                      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