示例#1
0
def galaxy_bias(model, f_NL, **cosmo):
    #------ cosmo parameters ----------------------
    omega_M_0 = cosmo['omega_M_0']; omega_b_0 = cosmo['omega_b_0']; omega_lambda_0 = cosmo['omega_lambda_0']
    #----: redshift !!
    z = model_check(model)[0]; b_g = cc.b_0 * sqrt(1 + z)

    TT =  3/5 * cc.zk**2 * pini.transfer_func("BBKS") * grwoth_factor(model, **cosmo)[0] 
    bias = b_g + 3 * (b_g - 1) * f_NL * cc.delta_c * omega_M_0/TT
    delta_bias = 3 * (b_g - 1) * f_NL * cc.delta_c * omega_M_0/TT
    return bias, delta_bias
示例#2
0
文件: plot.py 项目: mwhashim/CDEPNGpy
def Delta_m(model):
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    label1 = model_name + 'z = %s,' %z + ' $w_x$ = %s,' %w_x + ' $c^2_x$ = %s,' %c2_x  + ' $\Gamma$ =  %s' %gamma

    Delta_m = var.perturb_vars(model)[0]
    semilogx(cc.k, Delta_m, next(linecycler), linewidth = 2, label = label1)
    legend(loc = 'best', prop = {'size':9})
    xlim((cc.k_min, cc.k_max))
    xlabel('k')
    ylabel('$\Delta_m$(k, a = 1)')
示例#3
0
文件: plot.py 项目: mwhashim/CDEPNGpy
def h(model):
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    label1 = model_name + 'z = %s,' %z + ' $w_x$ = %s,' %w_x + ' $c^2_x$ = %s,' %c2_x  + ' $\Gamma$ =  %s' %gamma

    h = var.back_vars(model)[2]
    loglog(cc.a, h, next(linecycler), linewidth = 2, label = label1)
    legend(loc = 'best', prop = {'size':9})
    xlim((10**-1, 1.0))
    ylim(( 1.0, 0.2 * 10**2))
    xlabel('a')
    ylabel('h(a)')
示例#4
0
文件: plot.py 项目: mwhashim/CDEPNGpy
def Phi_ini(model, **cosmo):
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    label1 = model_name + 'z = %s,' %z + ' $w_x$ = %s,' %w_x + ' $c^2_x$ = %s,' %c2_x  + ' $\Gamma$ =  %s' %gamma

    Phi_ini = var.perturb_vars_ini(model, **cosmo)[4]
    conv = 1/(cc.CH_0**(3/2))
    semilogx(cc.k, Phi_ini, next(linecycler), linewidth = 2, label = label1)
    legend(loc = 'best', prop = {'size':9})
    xlim((cc.k_min, cc.k_max))
    xlabel('k')
    ylabel('$\Phi$(k, a = 1)')
示例#5
0
文件: plot.py 项目: mwhashim/CDEPNGpy
def omega_m(model):
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    label1 = model_name + 'z = %s,' %z + ' $w_x$ = %s,' %w_x + ' $c^2_x$ = %s,' %c2_x  + ' $\Gamma$ =  %s' %gamma
    
    omega_m = var.back_vars(model)[0]; omega_x = var.back_vars(model)[1]
    semilogx(cc.a, omega_m, next(linecycler), linewidth = 2, label = label1 + ' :: $\Omega_m$' )
    semilogx(cc.a, omega_x, next(linecycler),linewidth = 2, label =  label1 + ' :: $\Omega_x$')
    
    legend(loc = 'best', prop = {'size':9}) #, ncol = 3
    xlabel('a')
    xlim((4 * 10**-2, 1.0))
    ylim((-0.05 , 1.05))
示例#6
0
文件: plot.py 项目: mwhashim/CDEPNGpy
def P_Delta_m(model, lcdm_model, **cosmo):
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    label1 = model_name + 'z = %s,' %z + ' $w_x$ = %s,' %w_x + ' $c^2_x$ = %s,' %c2_x  + ' $\Gamma$ =  %s' %gamma

    P_Delta_m = var.power_spectra_linear(model, lcdm_model, **cosmo)
    loglog(cc.k, P_Delta_m, next(linecycler), linewidth = 2, label = label1)
    legend(loc = 'best', prop = {'size':9})
    axvline(x = 0.17 * 10**-2, color='r', ls = '--') # vertical line at k_eq
    axvline(x = 0.14 * 10**-1, color='b', ls = '-.') # vertical line at k_eq
    xlim((cc.k_min, cc.k_max))
    xlabel('k')
    ylabel('$P_m$(k, a = 1)')
示例#7
0
def vars_ini(model, BP, i, **cosmo):
    
    #---: file name !!
    name_of_file_pert_ini = model + "_PERT_ini"
    completeName_pert_ini = os.path.join(save_path_ini, name_of_file_pert_ini + ".npy")
    
    #------ cosmo parameters ----------------------
    omega_M_0 = cosmo['omega_M_0']; omega_b_0 = cosmo['omega_b_0']; omega_lambda_0 = cosmo['omega_lambda_0']
    
    #------ Primordial Conditions ------------------
    AA = 50/9 * pi**2 * cc.delta_H**2 * cc.A**2 # scaling constant & A is added
    Phi_p = sqrt(AA) * (cc.k)**(-3/2) * (cc.zk)**((cc.n-1)/2) * omega_M_0 # change the sign of the init with respect to the convension (v), it could take +/- since sqrt(P^inf_phi).

    #--: Background Initial conditions
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    
    #--: Setteing Initial Conditions !!
    if BP == 0:
        h_ini = 1; omega_m_ini = omega_M_0; omega_x_ini = 1 - omega_M_0; ww_x_ini = -1.0
        phi_ini = 10**-2; phi_dash_ini = 10**-2
    elif BP == 1:
        h_ini = var.back_vars_ini(model)[2]; omega_m_ini = var.back_vars_ini(model)[0]
        omega_x_ini = var.back_vars_ini(model)[1]; ww_x_ini = 0.0
        phi_ini = 10**-2; phi_dash_ini = 10**-2
    elif BP == 2:
        h_ini = var.back_vars_ini(model)[2]; omega_m_ini = var.back_vars_ini(model)[0]
        omega_x_ini = var.back_vars_ini(model)[1]; ww_x_ini = 0.0
        phi_ini = 10**-2; phi_dash_ini = 10**-2
    else:
        print "Invalid Input !!"

    #--: Interaction model !! # change sign + --> -
    if cc.Inrct == "DMT":
        Q_m_ini = gamma * omega_m_ini; Q_x_ini = - Q_m_ini
    elif cc.Inrct == "DXT":
        Q_m_ini = - gamma * omega_x_ini; Q_x_ini = - Q_m_ini # change sign here
    elif cc.Inrct == "VARSPHI":
        Q_m_ini = cc.beta0 * exp(cc.beta11 * phi_ini); Q_x_ini = - Q_m_ini
    else:
        print "Enter Valid Interaction Term"

    #--: Perturb Initial conditions
    w_m_eff_ini = - Q_m_ini/(3 * h_ini * omega_m_ini)
    w_x_eff_ini = w_x - Q_x_ini/(3 * h_ini * omega_x_ini)
    
    rhodash_mx_ini = (omega_x_ini/omega_m_ini) * (1 + w_x_eff_ini)/(1 + w_m_eff_ini) # check(v)
    mu_delta = rhodash_mx_ini/(1 - rhodash_mx_ini) # check(v)

    Phi_ini = 9/10 * Phi_p * transfer_func("BBKS")
    # change sign for metric convention !!
    Delta_m_ini = 2/3 * (cc.zk/(cc.a_init * h_ini))**2 * Phi_ini/omega_m_ini * (1 + mu_delta)
    Delta_x_ini = 2/3 * (cc.zk/(cc.a_init * h_ini))**2 * Phi_ini/omega_x_ini * mu_delta * PP

    #u_m_ini = cc.a_init * h_ini * omega_m_ini/(cc.zk**2) * (1 + rhodash_mx_ini)/(1 + w_x * omega_x_ini) * Delta_m_ini
    u_m_ini = 2/3 * 1/((1 + w_x * omega_x_ini) * h_ini) * Phi_ini
    u_x_ini = PP * u_m_ini
    
    perturb_vars_ini = Delta_m_ini, Delta_x_ini, u_m_ini, u_x_ini, Phi_ini
    
    #--: Saving initial conditions !!
    save(completeName_pert_ini, perturb_vars_ini)

    return array([ omega_m_ini, omega_x_ini, h_ini, ww_x_ini,
                  Delta_m_ini[i] * BP, Delta_x_ini[i] * BP, u_m_ini[i] * BP, u_x_ini[i] * BP, Phi_ini[i] * BP,
                  phi_ini, phi_dash_ini ])
示例#8
0
def modulle_sol(model, BP, **cosmo):
    """
    """
    #---: file name !!
    name_of_file_back = model + "_BACK"
    name_of_file_back_ini = model + "_BACK_ini"
    name_of_file_pert = model + "_PERT"
    
    completeName_back_ini = os.path.join(save_path_ini, name_of_file_back_ini + ".npy")
    completeName_back = os.path.join(save_path, name_of_file_back + ".npy")
    completeName_pert = os.path.join(save_path, name_of_file_pert + ".npy")

    #--: Model Parameters defs
    z, w_x, c2_x, PP, gamma, model_name = model_check(model)
    
    #--: Model def printing !!
    print "Model:", model
    print "Background:", cosmo

    #____ Timing: Start ________
    t_init = time()
    
    #------- Redshift -----------------------------
    a_q = 1.0/(1.0 + z)
    aa_q = linspace(cc.a_init, a_q, cc.nn)
    print 'Redshift:', z, '-', 'Scalar Factor:', a_q
    
    #------ Solving diff_sys ----------------------
    if BP == 0:
        vars = odeint(module, vars_ini(model, BP, 0, **cosmo), cc.a_revs, args = (cc.zk[0], BP, model), mxstep = cc.n_step)
        #------ Variable definitions ------------------
        Omega_m = vars[:,0]; Omega_x = vars[:,1]; h = vars[:,2]; ww_x = vars[:,3]
        back_vars_ini = Omega_m[-1], Omega_x[-1], h[-1], ww_x[-1]
        #------ Variable Save ------------------
        save(completeName_back_ini, back_vars_ini)
    
    elif BP == 1:
        vars = odeint(module, vars_ini(model, BP, 0, **cosmo), cc.a, args = (cc.zk[0], BP, model), mxstep = cc.n_step)
        #------ Variable definitions ------------------
        Omega_m = vars[:,0]; Omega_x = vars[:,1]; h = vars[:,2]; ww_x = vars[:,3]
        phi = vars[:,9]; Lambda = vars[:,10]
        back_vars = Omega_m, Omega_x, h, ww_x
        #------ Variable Save ------------------
        save(completeName_back, back_vars)
    
    elif BP == 2:
        vars = [odeint(module, vars_ini(model, BP, i, **cosmo),  aa_q, args = (cc.zk[i], BP, model), mxstep = cc.n_step) for i in range(cc.nn)] # i for k
        #------ Variable definitions ------------------
        Delta_m = array([vars[j][:,4][-1] for j  in range(cc.nn)])
        Delta_x = array([vars[j][:,5][-1] for j  in range(cc.nn)])
        u_m = array([vars[j][:,6][-1] for j  in range(cc.nn)])
        u_x = array([vars[j][:,7][-1] for j  in range(cc.nn)])
        Phi = array([vars[j][:,8][-1] for j  in range(cc.nn)])

        perturb_vars = Delta_m, Delta_x, u_m, u_x, Phi
        #------ Variable Save ------------------
        save(completeName_pert, perturb_vars)

    else:
        print "Invalid Input !!"

    #_______ Timing: Final _________
    print 'Time Elapsed: ', (time() - t_init)/60.0, 'Mins'
    return