Subroutines
  • AngularDiameterDistance2Arr(this, n, arr, z1, z2)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z1(n)
    • real(dl) intent(in) :: z2(n)
  • AngularDiameterDistanceArr(this, n, arr, z)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z(n)
  • ComovingRadialDistanceArr(this, n, arr, z, tol)
    z array must be monotonically increasing
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z(n)
    • real(dl) intent(in) :: tol
  • DarkEnergyStressEnergy(this, n, a, grhov_t, w)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(in) :: a(n)
    • real(dl) intent(out) :: grhov_t(n)
    • real(dl) intent(out) :: w(n)
  • DeltaPhysicalTimeGyrArr(this, n, arr, a1, a2, tol)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: a1(n)
    • real(dl) intent(in) :: a2(n)
    • real(dl) intent(in), optional :: tol
  • DeltaTimeArr(this, n, arr, a1, a2, tol)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: a1(n)
    • real(dl) intent(in) :: a2(n)
    • real(dl) intent(in), optional :: tol
  • Free(this)
  • GetBackgroundDensities(this, n, a_arr, densities)
    return array of 8*pi*G*rho*a**4 for each species
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(in) :: a_arr(n)
    • real(dl) intent(out) :: densities(8,n)
  • GetComputedPKRedshifts(this, Params, eta_k_max)
    • CAMBdata   :: this
    • CAMBParams  :: Params
    • real(dl) intent(in), optional :: eta_k_max
  • HofzArr(this, n, arr, z)
    non-comoving Hubble in MPC units, divide by MPC_in_sec to get in SI units multiply by c/1e3 to get in km/s/Mpc units
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z(n)
  • RedshiftAtTimeArr(this, n, arr, tau)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: tau(n)
  • SelfPointer(cptr, P)
  • SetParams(this, P, error, DoReion, call_again, background_only)
    Initialize background variables; does not yet calculate thermal history
    • CAMBdata target  :: this
    • CAMBparams intent(in)  :: P
    • integer optional :: error Zero if OK
    • logical optional :: DoReion
    • logical optional :: call_again
    • logical optional :: background_only
  • sound_horizon_zArr(this, n, arr, z)
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z(n)
  • TimeOfzArr(this, n, arr, z, tol)
    z array must be monotonically *decreasing* so times increasing
    • CAMBdata   :: this
    • integer intent(in) :: n
    • real(dl) intent(out) :: arr(n)
    • real(dl) intent(in) :: z(n)
    • real(dl) intent(in), optional :: tol
Functions
  • real(dl)
    AngularDiameterDistance(this, z)
  • real(dl)
    AngularDiameterDistance2(this, z1, z2)
    z1 < z2, otherwise returns zero From http://www.slac.stanford.edu/~amantz/work/fgas14/#cosmomc
    • CAMBdata   :: this
    • real(dl) intent(in) :: z1
    • real(dl) intent(in) :: z2
  • real(dl)
    BAO_D_v(this, z)
  • real(dl)
    binary_search(this, func, goal, x1, x2, tol, widex1, widex2)
    This is about twice as inefficient as Brent
    • CAMBdata   :: this
    • procedure(state_function)  :: func
    • real(dl) intent(in) :: goal
    • real(dl) intent(in) :: x1
    • real(dl) intent(in) :: x2
    • real(dl) intent(in) :: tol
    • real(dl) intent(in), optional :: widex1 Wider range in case of failure
    • real(dl) intent(in), optional :: widex2 Wider range in case of failure
  • real(dl)
    ComovingRadialDistance(this, z)
  • real(dl)
    cosfunc(this, Chi)
  • real(dl)
    CosmomcTheta(this)
  • real(dl)
    DeltaPhysicalTimeGyr(this, a1, a2, in_tol)
    • CAMBdata   :: this
    • real(dl) intent(in) :: a1
    • real(dl) intent(in) :: a2
    • real(dl) optional, intent(in) :: in_tol
  • real(dl)
    DeltaTime(this, a1, a2, in_tol)
    • CAMBdata   :: this
    • real(dl) intent(IN) :: a1
    • real(dl) intent(IN) :: a2
    • real(dl) optional, intent(in) :: in_tol
  • integer
    get_lmax_lensed(this)
  • real(dl)
    get_zstar(this)
  • real(dl)
    GetReionizationOptDepth(this)
  • real(dl)
    grho_no_de(this, a)
    Return 8*pi*G*rho_no_de*a**4 where rho_no_de includes everything except dark energy.
  • real(dl)
    Hofz(this, z)
    non-comoving Hubble in MPC units, divide by MPC_in_sec to get in SI units multiply by c/1e3 to get in km/s/Mpc units
  • real(dl)
    invsinfunc(this, x)
  • real(dl)
    LuminosityDistance(this, z)
  • character(LEN=:) allocatable
    PythonClass()
  • real(dl)
    rofChi(this, Chi)
    sinh(chi) for open, sin(chi) for closed.
  • real(dl)
    sound_horizon(this, z)
  • real(dl)
    tanfunc(this, Chi)
  • real(dl)
    TimeOfz(this, tol, z)
    • CAMBdata   :: this
    • real(dl) intent(in), optional :: tol
    • real(dl) intent(IN) :: z
Properties
  • real(dl) :: ThermoDerivedParams(nthermo_derived)
  • logical :: flat
  • logical :: closed
  • real(dl) :: grhocrit
  • real(dl) :: grhog
  • real(dl) :: grhor
  • real(dl) :: grhob
  • real(dl) :: grhoc
  • real(dl) :: grhov
  • real(dl) :: grhornomass
  • real(dl) :: grhok
  • real(dl) :: taurst
  • real(dl) :: dtaurec
  • real(dl) :: taurend
  • real(dl) :: tau_maxvis
  • real(dl) :: adotrad
  • real(dl) :: Omega_de
  • real(dl) :: curv
    curvature_radius = 1/sqrt(|curv|), Ksign = 1,0 or -1
  • real(dl) :: curvature_radius
    curvature_radius = 1/sqrt(|curv|), Ksign = 1,0 or -1
  • real(dl) :: Ksign
    curvature_radius = 1/sqrt(|curv|), Ksign = 1,0 or -1
  • real(dl) :: tau0
    time today and rofChi(tau0/curvature_radius)
  • real(dl) :: chi0
    time today and rofChi(tau0/curvature_radius)
  • real(dl) :: scale
    relative to flat. e.g. for scaling lSamp%l sampling.
  • real(dl) :: akthom
    sigma_T * (number density of protons now)
  • real(dl) :: fHe
    n_He_tot / n_H_tot
  • real(dl) :: Nnow
  • real(dl) :: z_eq
    defined assuming all neutrinos massless
  • real(dl) :: grhormass(max_nu)
  • real(dl) :: nu_masses(max_nu)
  • integer :: num_transfer_redshifts
  • real(dl) :: transfer_redshifts(:) allocatable
  • integer :: PK_redshifts_index(max_transfer_redshifts)
  • logical :: OnlyTransfer
  • logical :: HasScalarTimeSources
  • logical :: get_growth_sigma8
  • logical :: needs_good_pk_sampling
  • logical :: call_again
  • real(dl) :: reion_tau_start
  • real(dl) :: reion_tau_complete
  • integer :: reion_n_steps
  • TNuPerturbations :: NuPerturbations
  • TBackgroundOutputs :: BackgroundOutputs
  • TRanges :: TimeSteps
  • TThermoData :: ThermoData
  • real(dl) :: transfer_times(:) allocatable
  • MatterPowerData :: CAMB_PK allocatable
  • TClData :: CLdata
  • integer :: num_redshiftwindows
  • integer :: num_extra_redshiftwindows
  • TRedWin :: Redshift_W(:) allocatable
  • real(dl) :: optical_depths_for21cm dimension(:), allocatable
  • TTimeSources :: ScalarTimeSources allocatable
  • integer :: Scalar_C_last