file models/CosmoModels.hpp
[No description available] More…
Defines
Name | |
---|---|
MODEL | |
MODEL | |
MODEL | |
MODEL | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
PARENT | |
MODEL | |
MODEL | |
PARENT | |
MODEL | |
MODEL | |
MODEL | |
MODEL | |
MODEL | |
MODEL |
Detailed Description
Author:
- Selim C. Hotinli (selim.hotinli14@imperial.ac.uk)
- Patrick Stoecker (stoecker@physik.rwth-aachen.de)
- Janina Renk (janina.renk@fysik.su.se)
- Sanjay Bloor (sanjay.bloor12@imperial.ac.uk)
- Sebastian Hoof (hoof@uni-goettingen.de)
- Pat Scott (pat.scott@uq.edu.au)
- Tomas Gonzalo (tomas.gonzalo@monash.edu)
Date:
- 2016 Oct
- 2017 Jan
- 2019 Feb, July
- 2021 Jan
- 2018 Oct
- 2019 June
- 2019 Nov
- 2020 Mar
- 2020 Apr
- 2020 Sep
LCDM model and data dependent nuisance parameter declarations.
Authors (add name and date if you modify):
Macros Documentation
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define PARENT
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
define MODEL
#define MODEL LCDM
Source code
// GAMBIT: Global and Modular BSM Inference Tool
// *********************************************
/// \file
///
/// LCDM model and data dependent nuisance parameter declarations.
///
/// *********************************************
///
/// Authors (add name and date if you modify):
///
/// \author Selim C. Hotinli
/// (selim.hotinli14@imperial.ac.uk)
/// \date 2016 Oct
/// \date 2017 Jan
///
/// \author Patrick Stoecker
/// (stoecker@physik.rwth-aachen.de)
/// \date 2019 Feb, July
/// \date 2021 Jan
///
/// \author Janina Renk
/// (janina.renk@fysik.su.se)
/// \date 2018 Oct
/// \date 2019 June
///
/// \author Sanjay Bloor
/// (sanjay.bloor12@imperial.ac.uk)
/// \date 2019 Nov
///
/// \author Sebastian Hoof
/// (hoof@uni-goettingen.de)
/// \date 2020 Mar
///
/// \author Pat Scott
/// (pat.scott@uq.edu.au)
/// \date 2020 Apr
///
/// \author Tomas Gonzalo
/// (tomas.gonzalo@monash.edu)
/// \date 2020 Sep
///
/// *********************************************
#pragma once
// Vanilla ΛCDM.
// This model would usually be scanned alongside an inflationary model and a neutrino model
#define MODEL LCDM
START_MODEL
DEFINEPARS(T_cmb,omega_b,omega_cdm,H0,tau_reio)
MAP_TO_CAPABILITY(T_cmb,T_cmb)
MAP_TO_CAPABILITY(H0, H0)
MAP_TO_CAPABILITY(omega_cdm, omega_cdm)
#undef MODEL
// Vanilla ΛCDM.
// This model would usually be scanned alongside an inflationary model and a neutrino model
// As LCDM but with 100theta_s, acoustic angular scale of first CMB peak x 100, as
// model parameter instead of H0.
#define MODEL LCDM_theta
START_MODEL
DEFINEPARS(T_cmb,omega_b,omega_cdm,100theta_s,tau_reio)
MAP_TO_CAPABILITY(T_cmb,T_cmb)
MAP_TO_CAPABILITY(omega_cdm, omega_cdm)
#undef MODEL
// Vanilla ΛCDM.
// This model would usually be scanned alongside an inflationary model and a neutrino model
// As LCDM but with z_reio, redshift of reonisation, as model parameter instead of tau_reio.
#define MODEL LCDM_zreio
START_MODEL
DEFINEPARS(T_cmb,omega_b,omega_cdm,H0,z_reio)
MAP_TO_CAPABILITY(T_cmb,T_cmb)
MAP_TO_CAPABILITY(H0, H0)
MAP_TO_CAPABILITY(omega_cdm, omega_cdm)
#undef MODEL
/* CMB + BBN */
// η (baryon-to-photon ratio) defined at BBN.
// r_CMB(BBN): Ratio of temperatures in non-cold DM compared to the SM with 3 massive neutrinos:
// r_CMB = T_v(BSM)/T_v(SM) at CMB (BBN)
// dNurCMB(_BBN): ΔN_effective defined at CMB(BBN) from additional radiation.
#define MODEL etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(eta_BBN)
DEFINEPARS(r_BBN,r_CMB)
DEFINEPARS(dNur_BBN,dNur_CMB)
#undef MODEL
// No additional radiation or changes to the neutrino temperature.
// Just the baryon-to-photon ratio η at BBN.
#define MODEL etaBBN
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(eta_BBN)
INTERPRET_AS_PARENT_FUNCTION(etaBBN_to_etaBBN_rBBN_rCMB_dNurBBN_dNurCMB)
#undef PARENT
#undef MODEL
// As etaBBN_rBBN_rCMB_dNurBBN_dNurCMB, but with rCMB and dNurCMB
// being calculated externally through "Neff_evolution"
#define MODEL etaBBN_rBBN_dNurBBN
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(eta_BBN)
DEFINEPARS(r_BBN)
DEFINEPARS(dNur_BBN)
INTERPRET_AS_PARENT_FUNCTION(etaBBN_rBBN_dNurBBN_to_etaBBN_rBBN_rCMB_dNurBBN_dNurCMB)
INTERPRET_AS_PARENT_DEPENDENCY(Neff_evolution, map_str_dbl)
#undef PARENT
#undef MODEL
// As etaBBN_rBBN_dNurBBN, but the baryon-to-photon ratio η at BBN
// is given by η today multiplied with "eta_ratio".
#define MODEL rBBN_dNurBBN
#define PARENT etaBBN_rBBN_dNurBBN
START_MODEL
DEFINEPARS(r_BBN)
DEFINEPARS(dNur_BBN)
INTERPRET_AS_PARENT_FUNCTION(rBBN_dNurBBN_to_etaBBN_rBBN_dNurBBN)
INTERPRET_AS_PARENT_DEPENDENCY(eta_ratio, double)
INTERPRET_AS_PARENT_DEPENDENCY(eta0,double)
#undef PARENT
#undef MODEL
// As etaBBN_rBBN_rCMB_dNurBBN_dNurCMB, but with the
// baryon-to-photon ratio η at BBN set equal to η today.
#define MODEL rBBN_rCMB_dNurBBN_dNurCMB
#define PARENT etaBBN_rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(r_BBN,r_CMB)
DEFINEPARS(dNur_BBN,dNur_CMB)
INTERPRET_AS_PARENT_FUNCTION(rBBN_rCMB_dNurBBN_dNurCMB_to_etaBBN_rBBN_rCMB_dNurBBN_dNurCMB)
INTERPRET_AS_PARENT_DEPENDENCY(eta0, double)
#undef PARENT
#undef MODEL
// As above, but with no additional radiation.
#define MODEL rBBN_rCMB
#define PARENT rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(r_BBN,r_CMB)
INTERPRET_AS_PARENT_FUNCTION(rBBN_rCMB_to_rBBN_rCMB_dNurBBN_dNurCMB)
#undef PARENT
#undef MODEL
// As above, but with neutrino temperature at BBN the same as at recombination.
#define MODEL rCMB
#define PARENT rBBN_rCMB
START_MODEL
DEFINEPARS(r_CMB)
INTERPRET_AS_PARENT_FUNCTION(rCMB_to_rBBN_rCMB)
#undef PARENT
#undef MODEL
// As rBBN_rCMB_dNurBBN_dNurCMB, but with no changes to the neutrino temperature.
#define MODEL dNurBBN_dNurCMB
#define PARENT rBBN_rCMB_dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(dNur_BBN,dNur_CMB)
INTERPRET_AS_PARENT_FUNCTION(dNurBBN_dNurCMB_to_rBBN_rCMB_dNurBBN_dNurCMB)
#undef PARENT
#undef MODEL
// As above, but with additional radiation the same at BBN as at recombination.
#define MODEL dNurCMB
#define PARENT dNurBBN_dNurCMB
START_MODEL
DEFINEPARS(dNur_CMB)
INTERPRET_AS_PARENT_FUNCTION(dNurCMB_to_dNurBBN_dNurCMB)
#undef PARENT
#undef MODEL
/* INFLATION */
// Inflationary models -- if one of these is in use, you would usually need to use a cosmological model
// to scan over the four standard cosmological parameters (H0 or theta, omega_b, omega_cdm, tau_reio).
// The shape of the (either parameterised or full) primordial power spectrum will be determined by
// the inflation model in use.
// Simple, parameterised, purely phenomenological, scale-free power spectrum
#define MODEL PowerLaw_ps
START_MODEL
DEFINEPARS(ln10A_s,n_s,r,N_pivot)
#undef MODEL
// Even simpler, parameterised, purely phenomenological, scale-free power spectrum
#define MODEL Minimal_PowerLaw_ps
#define PARENT PowerLaw_ps
START_MODEL
DEFINEPARS(ln10A_s,n_s)
INTERPRET_AS_PARENT_FUNCTION(Minimal_PowerLaw_ps_to_PowerLaw_ps)
#undef PARENT
#undef MODEL
// Single field, monomial inflation with exponent 2/3 (assuming instant reheating)
// Potential: V(phi) = 1.5 lambda M_P^(10/3) phi^(2/3)
#define MODEL Inflation_InstReh_1mono23
START_MODEL
DEFINEPARS(lambda)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
// Single field, linear inflation (assuming instant reheating)
// Potential: V(phi) = lambda M_P^3 phi
#define MODEL Inflation_InstReh_1linear
START_MODEL
DEFINEPARS(lambda)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
// Single field, quadratic inflation (assuming instant reheating)
// Potential: V(phi) = 0.5 m^2 phi^2 = 0.5 m_phi^2 M_P^2 phi^2
#define MODEL Inflation_InstReh_1quadratic
START_MODEL
DEFINEPARS(m_phi)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
// Single field, quartic inflation (assuming instant reheating)
// Potential: V(phi) = 0.25 lambda phi^4
#define MODEL Inflation_InstReh_1quartic
START_MODEL
DEFINEPARS(lambda)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
// Single field, natural inflation (assuming instant reheating)
// Potential: V(phi) = Lambda^4 [ 1 + cos(phi/f) ] = (lambda M_P)^4 [ 1 + cos(phi/[f_phi M_P]) ]
#define MODEL Inflation_InstReh_1natural
START_MODEL
DEFINEPARS(lambda, f_phi)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
// Single field, Starobinsky - aka R^2 - inflation (assuming instant reheating)
// Potential: V(phi) = Lambda^4 [1-exp(-sqrt(2/3)phi/M_P)]^2 = (lambda M_P)^4 [1-exp(-sqrt(2/3)phi/M_P)]^2
#define MODEL Inflation_InstReh_1Starobinsky
START_MODEL
DEFINEPARS(lambda)
INTERPRET_AS_X_FUNCTION(PowerLaw_ps, as_PowerLaw)
INTERPRET_AS_X_DEPENDENCY(PowerLaw_ps, PowerLaw_ps_parameters, ModelParameters)
#undef MODEL
Updated on 2024-07-18 at 13:53:33 +0000