1#ifndef BACKGROUND_MODULE_H
2#define BACKGROUND_MODULE_H
4#include "base_module.h"
7class BackgroundModule :
public BaseModule {
13 double GetOmega0Species(
const std::string& key)
const;
14 BackgroundModule(InputModulePtr input_module);
16 void background_output_titles(std::string& titles)
const;
17 void background_output_data(
int number_of_titles,
double* data)
const;
18 void background_at_tau(
19 double tau,
short return_format,
short inter_mode,
int* last_index,
double* pvecback)
const;
20 void background_tau_of_z(
double z,
double* tau)
const;
21 void background_w_fld(
double a,
23 double* dw_over_da_fld,
24 double* integral_fld)
const;
25 void background_idm_drmd(
26 double a,
double rho_idm_over_rho_idr,
double* Rint,
double* csp2,
double* Gint)
const;
30 double GetOmega0NcdmTot()
const;
34 int GetNDecayDr()
const;
40 double GetSpeciesParam(
const std::string& key,
const std::string& param)
const;
48 int index_bg_H_prime_;
52 int index_bg_rho_tot_;
54 int index_bg_p_tot_prime_;
56 int index_bg_Omega_r_;
60 int index_bg_rho_crit_;
61 int index_bg_Omega_m_;
62 int index_bg_conf_distance_;
63 int index_bg_ang_distance_;
64 int index_bg_lum_distance_;
82 double conformal_age_;
98 double Omega0_idr_drmd_;
99 double Omega0_idm_drmd_;
105 double f_idr_drmd()
const;
106 double z_dec_drmd()
const;
109 void background_functions(
double* pvecback_B,
short return_format,
double* pvecback);
110 void background_init();
111 void background_indices();
112 void background_solve_evolver();
113 void background_initial_conditions(
double* pvecback,
double* pvecback_integration);
114 void background_find_equality();
115 void background_derivs_member(
double z,
double* y,
double* dy,
void* parameters_and_workspace);
116 void background_derivs_loga_member(
double loga,
119 void* parameters_and_workspace);
120 static void background_derivs_loga(
double loga,
123 void* parameters_and_workspace);
124 static void background_timescale(
double loga,
void* parameters_and_workspace,
double* timescale);
125 void background_add_line_to_bg_table_member(
126 double loga,
double* y,
double* dy,
int index_loga,
void* parameters_and_workspace);
127 static void background_add_line_to_bg_table(
128 double loga,
double* y,
double* dy,
int index_loga,
void* parameters_and_workspace);
129 void background_output_budget();
130 static void background_print_variables(
double loga,
133 void* parameters_and_workspace);
154 int index_bi_D_prime_;
177 d2background_dtau2_table_;
188 BackgroundModule*
const background_module;
Definition background_module.h:186