CLASSpp Manual
Cosmology reference and developer manual
Loading...
Searching...
No Matches
background.h
Go to the documentation of this file.
1
3#ifndef __BACKGROUND__
4#define __BACKGROUND__
5
6#include <memory>
7#include <vector>
8
9#include "arrays.h"
10#include "common.h"
11#include "dei_rkck.h"
12#include "parser.h"
13#include "quadrature.h"
14
15class NonColdDarkMatter;
16class DarkRadiation;
17
20enum equation_of_state { CLP, EDE, PhenoAxion };
21
37enum class ClosureSpecies { None, Lambda, Fluid, ScalarField };
38
39struct background {
52
53 double T_cmb = 2.7255;
55 double h = 0.67556;
57 double H0 =
58 h * 1.e5 /
59 _c_;
61 double Omega0_g =
62 Omega0gFromTcmb(T_cmb,
63 h);
65 double Omega0_b = 0.022032 /
66 (h * h);
68 // Per-species Omega0_* fields removed: each species owns its density
69 // through its constructor (queryable via species->GetOmega0()). Only
70 // photons (Omega0_g), baryons (Omega0_b), and curvature (Omega0_k) live
71 // on pba.
72
73 // Fluid physics params (fluid_equation_of_state, w0_fld, wa_fld, cs2_fld,
74 // Omega_EDE) live on FluidSpecies; PPF-only params (use_ppf, c_gamma_over_c_fld)
75 // live on PpfFluid — see FluidSpecies::CreateAll for the parser and
76 // species/fluid.h / species/ppf_fluid.h for the accessors.
77
78 // DCDM physics params (Gamma_dcdm, Omega_ini_dcdm) live on DCDMSpecies — see
79 // DCDM_DR_Species::CreateAll for the parser and species/dcdm.h for the
80 // accessors used by cross-module readers.
81 // IDR physics params (T_idr, l_max_idr) live on IDRSpecies — see
82 // IDM_DR_IDR_Species::CreateAll for the parser and species/idr.h for the
83 // accessors used by cross-module readers.
84
85 double Omega0_k = 0.;
90
91 double K = 0.;
92 int sgnK = 0;
95
96 ClosureSpecies closure_species = ClosureSpecies::None;
97
103
104 short short_info;
105 short normal_info;
106 short long_info;
108 short
109 inter_normal;
110 short
111 inter_closeby;
114
118
119 unsigned int number_of_threads;
120
121 short background_verbose =
122 0;
125};
126
132
133#define _h_BIG_ 1.5
134#define _h_SMALL_ 0.3
135#define _omegab_BIG_ 0.039
136#define _omegab_SMALL_ 0.005
139
145
146#define _SCALE_BACK_ \
147 0.1
152
153#endif
equation_of_state
Definition background.h:20
ClosureSpecies
Definition background.h:37
#define _c_
Definition constants.h:34
double Omega0gFromTcmb(double T_cmb, double h)
Definition constants.h:52