Commit 2b7eb5ca authored by Julia Stadler's avatar Julia Stadler
Browse files

cleaned ini file for nuDM

parent 7366543d
......@@ -7,8 +7,10 @@ with several major inputs from other people, especially Benjamin
Audren, Simon Prunet, Jesus Torrado, Miguel Zumalacarregui, Francesco
Montanari, etc.
For download and information, see http://class-code.net
with modifications to account for dark matter-neutrino scattering by Julia Stadler.
For download and information on the original code, see http://class-code.net
For all changes made to the code to account for DM-neutrino interactions consider changelog.log
Compiling CLASS and getting started
-----------------------------------
......@@ -108,6 +110,8 @@ Using the code
You can use CLASS freely, provided that in your publications, you cite
at least the paper `CLASS II: Approximation schemes <http://arxiv.org/abs/1104.2933>`. Feel free to cite more CLASS papers!
For this modified version of CLASS please also cite <>
Support
-------
......
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
* CLASS input parameter file *
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
> This example of input file does not include all CLASS possibilities, but only the most useful ones for running in the basic LambdaCDM framework. For all possibilities, look at the longer 'explanatory.ini' file.
> You can use an even more concise version, in which only the arguments in which you are interested would appear.
> Only lines containing an equal sign not preceded by a sharp sign "#" are considered by the code. Hence, do not write an equal sign within a comment, the whole line would be interpreted as relevant input.
> Input files must have an extension ".ini".
----------------------------
----> background parameters:
----------------------------
1) Hubble parameter : either 'H0' in km/s/Mpc or 'h' (default: 'h' set to 0.704)
#H0 = 72.
h =0.7
2) photon density: either 'T_cmb' in K or 'Omega_g' or 'omega_g' (default: 'T_cmb' set to 2.726)
T_cmb = 2.726
#Omega_g = 5.050601e-05
#omega_g = 2.47479449e-5
3) baryon density: either 'Omega_b' or 'omega_b' (default: 'omega_b' set to 0.02253)
Omega_b = 0.05
#omega_b = 0.0266691
4) ultra-relativistic species / massless neutrino density: either 'N_eff' or 'Omega_ur' or 'omega_ur' (default: 'N_eff' set to 3.04)
N_eff = 3.04
#Omega_ur = 3.4869665e-05
#omega_ur = 1.70861334e-5
5) density of cdm (cold dark matter): 'Omega_cdm' or 'omega_cdm' (default: 'omega_cdm' set to 0.1122)
Omega_cdm = 0.25
#omega_cdm = 0.110616
6) cosmological constant / fluid with constant w and sound speed (can be used to model simple dark energy models): enter one parameter out of 'Omega_Lambda' or 'Omega_fld', the other one is inferred by the code in such way that (sum_i Omega_i) equals (1 + Omega_k) (default: 'Omega_fld' set to 0 and 'Omega_Lambda' to (1+Omega_k-Omega_tot))
# Omega_Lambda = 0.7
Omega_fld = 0
7) equation of state parameter (p/rho equal to w0+wa(1-a0/a) ) and sound speed of the fluid (this is the sound speed defined in the frame comoving with the fluid, i.e. obeying to the most sensible physical definition)
w0_fld = -0.9
wa_fld = 0.
cs2_fld = 1
--------------------------------
----> thermodynamics parameters:
--------------------------------
1) primordial Helium fraction 'YHe' (default: set to 0.25)
YHe = 0.25
2) enter one of 'z_reio' or 'tau_reio' (default: 'z_reio' set to 10.3)
z_reio = 10.
#tau_reio = 0.084522
----------------------------------------------------
----> define which perturbations should be computed:
----------------------------------------------------
1) list of output spectra requested ('tCl' for temperature Cls, 'pCl' for polarization CLs, 'lCl' for lensing potential Cls, , 'dCl' for matter density Cls, 'mPk' for total matter power spectrum P(k) infered from gravitational potential, 'mTk' for matter transfer functions for of each species). Can be attached or separated by arbitrary characters. Given this list, all non-zero auto-correlation and cross-correlation spectra will be automatically computed. Can be left blank if you do not want to evolve cosmological perturbations at all. (default: set to blanck, no perturbation calculation)
output = tCl,pCl,lCl
#output = tCl,pCl,lCl,mPk
#output = mPk,mTk
2) relevant only if you ask for scalars, temperature or polarisation Cls, and 'lCl': if you want the spectrum of lensed Cls, enter a word containing the letter 'y' or 'Y' (default: no lensed Cls)
lensing = yes
---------------------------------------------
----> define primordial perturbation spectra:
---------------------------------------------
1) pivot scale in Mpc-1 (default: set to 0.002)
k_pivot = 0.05
2) scalar adiabatic perturbations: curvature power spectrum value at pivot scale, tilt at the same scale, and tilt running (default: set 'A_s' to 2.42e-9, 'n_s' to 0.967, 'alpha_s' to 0)
A_s = 2.3e-9
n_s = 1.
alpha_s = 0.
-------------------------------------
----> define format of final spectra:
-------------------------------------
1) maximum l 'l_max_scalars', 'l_max_tensors' in Cls for scalars/tensors (default: set 'l_max_scalars' to 2500, 'l_max_tensors' to 500)
l_max_scalars = 3000
l_max_tensors = 500
2) maximum k in P(k), 'P_k_max_h/Mpc' in units of h/Mpc or 'P_k_max_1/Mpc' in units of 1/Mpc. If scalar Cls are also requested, a minimum value is automatically imposed (the same as in scalar Cls computation) (default: set to 0.1h/Mpc)
P_k_max_h/Mpc = 1.
#P_k_max_1/Mpc = 0.7
3) value(s) 'z_pk' of redshift(s) for P(k,z) output file(s); can be ordered arbitrarily, but must be separated by comas (default: set 'z_pk' to 0)
z_pk = 0
#z_pk = 0., 1.2, 3.5
4) if you need Cls for the matter density autocorrelation or cross density-temperature correlation (option 'dCl'), enter here a description of the selection functions W(z) of each redshift bin; selection can be set to 'gaussian', then pass a list of N mean redshifts in growing order separated by comas, and finally 1 or N widths separated by comas (default: set to 'gaussian',1,0.1)
selection=gaussian
selection_mean = 1.
selection_width = 0.5
5) file name root 'root' for all output files (default: set 'root' to 'output/') (if Cl requested, written to '<root>cl.dat'; if P(k) requested, written to '<root>pk.dat'; plus similar files for scalars, tensors, pairs of initial conditions, etc.; if file with input parameters requested, written to '<root>parameters.ini')
root = output/test_
6) do you want headers at the beginning of each output file (giving precisions on the output units/ format) ? If 'headers' set to something containing the letter 'y' or 'Y', headers written, otherwise not written (default: written)
headers = yes
7) in all output files, do you want columns to be normalized and ordered with the default CLASS definitions or with the CAMB definitions (often idential to the CMBFAST one) ? Set 'format' to either 'class', 'CLASS', 'camb' or 'CAMB' (default: 'class')
format = class
8) if 'bessel file' set to something containing the letters 'y' or 'Y', the code tries to read bessel functions in a file; if the file is absent or not adequate, bessel functions are computed and written in a file. The file name is set by defaut to 'bessels.dat' but can be changed together with precision parameters: just set 'bessel_file_name' to '<name>' either here or in the precision parameter file. (defaut: 'bessel file' set to 'no' and bessel functions are always recomputed)
bessel file = yes
9) Do you want to have all input/precision parameters which have been read written in file '<root>parameters.ini', and those not written in file '<root>unused_parameters' ? If 'write parameters' set to something containing the letter 'y' or 'Y', file written, otherwise not written (default: not written)
write parameters = yeap
----------------------------------------------------
----> amount of information sent to standard output:
----------------------------------------------------
Increase integer values to make each module more talkative (default: all set to 0)
background_verbose = 1
thermodynamics_verbose = 1
perturbations_verbose = 1
bessels_verbose = 1
transfer_verbose = 1
primordial_verbose = 1
spectra_verbose = 1
nonlinear_verbose = 1
lensing_verbose = 1
output_verbose = 1
......@@ -9,25 +9,27 @@ tau_reio = 0.066
n_s = 0.9677
A_s = 2.139e-9
---------------------------------------------------
------------------------------------------------------
---> NEUTRINOS
---> two massless and one massiv neutrino of 0.06eV
---> N_eff is 3.046
----------------------------------------------------
---> Interactions only apply to massless neutrinos (ur)
-------------------------------------------------------
N_ur = 3.046
#N_ur = 2.0328
#N_ncdm = 1
#m_ncdm = 0.06
#T_ncdm = 0.71611
-------------------
---> g-cdm coupling
-------------------
--> u_nuDM(T) is given by u_nuDM_0 * a^n_nuDM
u_nuDM_0 = 0.
n_nuDM = 0.
alpha_nuDM = 0., 1.0, 1.5 # the firsts to values are for detla and theta and not used!
# the final value defines all alpha_l for all higher values of l
--> for alpha_nuDM give a list of values which apply to increasing moltipoles
--> the first to entries would correspond to delta and theta and are NOT used
--> the last entry is copied for all higher multipoles up to l_max_ur
--> the default value for alpha_nuDM is 1.
alpha_nuDM = 0., 1.0, 1.5
--> neutrino-DM scattering is only implemented for Newtonian gauge
gauge = newtonian
k_pivot = 0.05
sBBN file = ./bbn/sBBN.dat
......@@ -35,34 +37,24 @@ sBBN file = ./bbn/sBBN.dat
-----------
---> OUTPUT
-----------
output = mPk
root = output/2018-12-19_presentation-plots/lcdm_
#format = class
output = tCl, pCl, mPk
k_per_decade_for_pk = 100
P_k_max_h/Mpc = 100
write parameters = yes
write background = no
write thermodynamics = yes
k_output_values = 60, 50, 40, 30, 20, 10, 1.
-----------------------
---> precision settings
-----------------------
#ur_fluid_trigger_tau_over_tau_k = 200
#l_max_ur = 200
#radiation_streaming_trigger_tau_over_tau_k = 100.
#radiation_streaming_trigger_tau_c_over_tau = 100.
tol_perturb_integration = 1.e-7 # default: 1.e-5
#tol_background_integration = 1.e-4 # default: 1.e-2
#tol_tau_approx=1.e-11 # default: 1.e-10
#perturb_sampling_stepsize=0.01 # default: 0.1
#tol_thermo_integration=1.e-5 # default: 1.e-2
#recfast_Nz0=100000 # default: 20,000
#start_small_k_at_tau_c_over_tau_h = 0.0004 # default: 0.0015
#start_large_k_at_tau_h_over_tau_k = 0.05 # default: 0.07
#tight_coupling_trigger_tau_c_over_tau_h=0.005
#tight_coupling_trigger_tau_c_over_tau_k=0.008
#start_sources_at_tau_c_over_tau_h = 0.006
---------------------------
---> some precision settings
----------------------------
ur_fluid_trigger_tau_over_tau_k = 200
l_max_ur = 200
tol_perturb_integration = 1.e-9 # default: 1.e-5
tol_background_integration = 1.e-4 # default: 1.e-2
tol_tau_approx=1.e-11 # default: 1.e-10
perturb_sampling_stepsize=0.01 # default: 0.1
tol_thermo_integration=1.e-5 # default: 1.e-2
recfast_Nz0=100000 # default: 20,000
-----------------------
---> breake the silence
-----------------------
......
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
* CLASS input parameter file *
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*
> This example of input file, intended for CLASS beginners, lists all possibilities with detailed comments.
> You can use a more concise version, in which only the arguments in which you are interested would appear.
> Only lines containing an equal sign not preceded by a sharp sign "#" are considered by the code. Hence, do not write an equal sign within a comment, the whole line would be interpreted as relevant input.
> Input files must have an extension ".ini".
----------------------------
----> background parameters:
----------------------------
1) Hubble parameter : either 'H0' in km/s/Mpc or 'h' (default: 'h' set to 0.704)
#H0 = 72.
h =0.72
2) photon density: either 'T_cmb' in K or 'Omega_g' or 'omega_g' (default: 'T_cmb' set to 2.726)
T_cmb = 2.726
#Omega_g = 5.050601e-05
#omega_g = 2.47479449e-5
3) baryon density: either 'Omega_b' or 'omega_b' (default: 'omega_b' set to 0.02253)
Omega_b = 0.046
#omega_b = 0.0266691
4) ultra-relativistic species / massless neutrino density: either 'N_eff' or 'Omega_ur' or 'omega_ur' (default: 'N_eff' set to 3.04)
N_eff = 3.04
#Omega_ur = 3.4869665e-05
#omega_ur = 1.70861334e-5
5) density of cdm (cold dark matter): 'Omega_cdm' or 'omega_cdm' (default: 'omega_cdm' set to 0.1122)
Omega_cdm = 0.224
#omega_cdm = 0.110616
6) all parameters describing the ncdm sector (i.e. any non-cold dark matter relics,
including massive neutrinos, warm dark matter, etc.):
-> 'N_ncdm' is the number of distinct species (default: set to 0)
N_ncdm = 0
-> 'use_ncdm_psd_files' is the list of N_ncdm numbers: 0 means 'phase-space distribution (psd) passed analytically inside the code, in the mnodule background.c, inside the function background_ncdm_distribution()'; 1 means 'psd passed as a file with at list two columns: first for q, second for f_0(q)', where q is p/T_ncdm (default: only zeros)
use_ncdm_psd_files = 0
-> if some of the previous values are equal to one, 'ncdm_psd_filenames' is the list of names of psd files (as many as number of ones in previous entry)
ncdm_psd_filenames = psd_FD_single.dat
The remaining parameters should be entered as a list of N_ncdm numbers separated by commas:
-> 'Omega_ncdm' or 'omega_ncdm' or 'm_ncdm' in eV (default: all set to zero);
with only one of these inputs, CLASS computes the correct value of the mass;
if both (Omega_ncdm, m_ncdm) or (omega_ncdm, m_ncdm) are passed,
CLASS will renormalise the psd in order to fulfill both conditions.
m_ncdm = 0.1
#Omega_ncdm = 0.24
-> 'T_ncdm' is the ncdm temperature in units of photon temperature (default: set to (4/11)^(1/3))
Note that active massive neutrinos, the recommended default value is 0.715985
(this value is fudged to account for realistic neutrino decoupling:
gives m/omega equal to 93.14 eV, as in hep-ph/0506164)
#T_ncdm = 0.715985
-> 'ksi_ncdm' is the ncdm chemical potential in units of its own temperature (default: set to 0)
ksi_ncdm =
-> 'deg_ncdm' is the degeneracy parameter multiplying the psd:
one stands for 'one family', i.e. one particle + anti-particle (default: set to 1.0)
deg_ncdm =
7) curvature: 'Omega_k' (default: 'Omega_k' set to 0)
Omega_k = 0.
8) cosmological constant / dark energy fluid : enter one parameter out of 'Omega_Lambda' or 'Omega_de', and infer the other one so that (sum_i Omega_i) equals (1 + Omega_k) (default: 'Omega_de' set to 0 and 'Omega_Lambda' to (1+Omega_k-Omega_tot))
# Omega_Lambda = 0.7
Omega_de = 0
9) scale factor today 'a_today' (arbitrary and irrelevant for most purposes) (default: set to 1)
# a_today = 1.
--------------------------------
----> thermodynamics parameters:
--------------------------------
1) primordial Helium fraction 'YHe' (default: set to 0.25)
YHe = 0.25
2) parametrization of reionization: 'reio_parametrization' must be one of 'reio_none', 'reio_camb', ... (default: set to 'reio_camb')
reio_parametrization = reio_camb
3) if 'reio_parametrization' set to 'reio_camb': enter one of 'z_reio' or 'tau_reio' (default: 'z_reio' set to 10.3)
z_reio = 10.3
#tau_reio = 0.084522
----------------------------------------------------
----> define which perturbations should be computed:
----------------------------------------------------
1) list of output spectra requested ('tCl' for temperature Cls, 'pCl' for polarization CLs, 'lCl' for lensing potential Cls, 'mPk' for total matter power spectrum P(k) infered from gravitational potential, 'mTk' for matter transfer functions for of each species). More than one letter allowed, can be attached or separated by arbitrary characters. Given this list, all non-zero auto-correlation and cross-correlation spectra will be automatically computed. Can be left blank if you do not want to evolve cosmological perturbations at all. (default: set to blanck, no perturbation calculation)
output = tCl,mPk,mTk
#output = tCl,pCl,lCl,mPk
#output = mPk,mTk
2) if you want an estimate of the non-linear P(k), enter 'trg' for the Time Renormalization Group method; or 'one-loop' for the one-loop method as implemented in the TRG module; otherwise leave blank (default: blank, no non-linear P(k))
#non linear = test-linear
#non linear = trg
non linear = one-loop
3) if you want the spectrum of lensed Cls, enter a word containing the letter 'y' or 'Y' (default: no lensed Cls)
lensing = no
4) list of modes ('s' for scalars, 'v' for vectors, 't' for tensors). More than one letter allowed, can be attached or separated by arbitrary characters; letters can be small or capital. (default: set to 's')
modes = s
#modes = s,t
5) list of initial conditions for scalars ('ad' for adiabatic, 'bi' for baryon isocurvature, 'cdi' for CDM isocurvature, 'nid' for neutrino density isocurvature, 'niv' for neutrino velocity isocurvature). More than one of these allowed, can be attached or separated by arbitrary characters; letters can be small or capital. (defaut: set to 'ad')
ic = ad
#ic = ad&bi&nid
---------------------------------------------
----> define primordial perturbation spectra:
---------------------------------------------
1) primordial spectrum type ('analytic_Pk' for an analytic smooth function with amplitude, tilt, running, etc.; later, inflationary calculation will be added; analytic spectra with feature can also be added as a new type) (default: set to 'analytic_Pk')
P_k_ini type = analytic_Pk
2) parameters related to one of the primordial spectrum types (will only be read if they correspond to the type selected above)
2.a) for type 'analytic_Pk':
2.a.1) pivot scale in Mpc-1 (default: set to 0.002)
k_pivot = 0.002
2.a.2) scalar adiabatic perturbations: curvature power spectrum value at pivot scale, tilt at the same scale, and tilt running (default: set 'A_s' to 2.42e-9, 'n_s' to 0.967, 'alpha_s' to 0)
A_s = 2.8453e-9
n_s = 1.
alpha_s = 0.
2.a.3) isocurvature/entropy perturbations: for each mode xx ('xx' being one of 'bi', 'cdi', 'nid', 'niv', corresponding to baryon, cdm, neutrino density and neutrino velocity entropy perturbations), enter the entropy-to-curvature ratio f_xx, tilt n_xx and running alpha_xx, all defined at the pivot scale; e.g. f_cdi of 0.5 means S_cdi/R equal to one half and (S_cdi/R)^2 to 0.25 (default: set each 'f_xx' to 1, 'n_xx' to 1, 'alpha_xx' to 0)
f_bi = 1.
n_bi = 1.5
f_cdi=1.
f_nid=1.
n_nid=2.
alpha_nid= 0.01
etc.
2.a.4) cross-correlation between different adiabatic/entropy mode: for each pair (xx, yy) where 'xx' and 'yy' are one of 'ad', 'bi', 'cdi', 'nid', 'niv', enter the correlation c_xx_yy (parameter between -1 and 1, standing for cosDelta, the cosine of the cross-correlation angle), the tilt n_xx_yy of the function cosDelta(k), and its running alpha_xx_yy, all defined at the pivot scale. So, for a pair of fully correlated (resp. anti-correlated) modes, one should set (c_xx_yy, n_xx_yy, alpha_xx_yy) to (1,0,0) (resp. (-1,0,0) (default: set each 'c_xx_yy' to 0, 'n_xx_yy' to 0, 'alpha_xx_yy' to 0)
c_ad_bi = 0.5
#n_ad_bi = 0.1
c_ad_cdi = -1.
c_bi_nid = 1.
#n_bi_nid = -0.2
#alpha_bi_nid = 0.002
etc.
2.a.5) tensor mode (if any): tensor-to-scalar power spectrum ratio, tilt, running at the pivot scale (default: set 'r' to 1, 'n_t' to 0, 'alpha_t' to 0)
r = 1.
n_t = 0.
alpha_t = 0.
-------------------------------------
----> define format of final spectra:
-------------------------------------
1) maximum l 'l_max_scalars', 'l_max_tensors' in Cls for scalars/tensors (default: set 'l_max_scalars' to 2500, 'l_max_tensors' to 500)
l_max_scalars = 2500
l_max_tensors = 500
2) maximum k in P(k). If scalar Cls are also requested, a minimum value is automatically imposed (the same as in scalar Cls computation) (default: set to 0.1)
P_k_max = 1000.
3) value(s) 'z_pk' of redshift(s) for P(k,z) output file(s); can be ordered arbitrarily, but must be separated by comas (default: set 'z_pk' to 0)
z_pk = 0,0.5,1
4) if the code is interfaced with routines that need to interpolate P(k,z) at various values of (k,z), enter 'z_max_pk', the maximum value of z at which such interpolations are needed. (default: set to maximum value in above 'z_pk' input)
z_max_pk = 50.
5) file name root 'root' for all output files (default: set 'root' to 'output/') (if Cl requested, written to '<root>cl.dat'; if P(k) requested, written to '<root>pk.dat'; plus similar files for scalars, tensors, pairs of initial conditions, etc.; if file with input parameters requested, written to '<root>parameters.ini')
root = output/one-loop_
5) if 'bessel file' set to something containing the letters 'y' or 'Y', the code tries to read bessel functions in a file; if the file is absent or not adequate, bessel functions are computed and written in a file. The file name is set by defaut to 'bessels.dat' but can be changed together with precision parameters: just set 'bessel_file_name' to '<name>' either here or in the precision parameter file. (defaut: 'bessel file' set to 'no' and bessel functions are always recomputed)
bessel file = yes
6) Do you want to have all input/precision parameters which have been read written in file '<root>parameters.ini' ? If 'write parameters' set to something containing the letter 'y' or 'Y', file written, otherwise not written (default: not written)
write parameters = yeap
--------------------------------------------------------------
----> precision parameters for non-linear spectra computation:
--------------------------------------------------------------
1) Select starting redshift for computing the non-linear evolution (default: '35')
z_ini = 35
2) define the number of steps in the time-variable eta (default: '100')
eta_size = 101
3) select the escape mechanisme to avoid numerical divergences. Set to '2', the code drops the two last points every half-step of the computation (default: '2')
double escape = 2
4) lower bound for computing matter power spectrum (higher one is set with 'P_k_max'). (default: '1.e-4')
k_min = 1.e-4
5) Scale above which we consider linear theory to be true at any time of the computation. To be more explicit, for k's smaller than this one, the A's function are forced to 0. (default: '1.e-3')
k_L = 1.e-3
6) Precision parameter that controls how much time one wants to spend computing the As functions. (Order of magnitudes for several values, and 'eta_size' set to default : 1.07 -> 10 min | 1.04 -> 20 min | 1.02 -> 60 min | 1.008 -> 4h | (default : '1.02')
logstepx_min = 1.04
7) Select the approximation. If set to 1 (_TRUE_), it computes the correct matter b+cdm spectrum by running the exact (at linear order) evolution equations. If set to 0 (_FALSE_), it computes the total power spectrum by running approximated evolution equations.
b+c spectrum = 1
8) increase precision parameter controlling when free-streaming approx is switched off
rad_pert_trigger_k_over_aH = 4000
logstepk1 =
logstepk2 =
logstepk3 =
logstepk4 =
logstepk5 =
logstepk6 =
logstepk7 =
logstepk8 =
pk_definition = 2
k_growth_factor = .1
----------------------------------------------------
----> amount of information sent to standard output:
----------------------------------------------------
Increase integer values to make each module more talkative (default: all set to 0)
background_verbose = 1
thermodynamics_verbose = 1
perturbations_verbose = 1
bessels_verbose = 1
transfer_verbose = 1
primordial_verbose = 1
spectra_verbose = 1
nonlinear_verbose = 1
lensing_verbose = 1
output_verbose = 2
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment