GaugeInterface Module Source file:equations

Classes

Dependencies

Subroutines
  • CopyScalarVariableArray(EV, y, yout)
    • EvolutionVars   :: EV
    • real(dl) intent(in) :: y(EV%nvar)
    • real(dl) intent(out) :: yout(EVout%nvar)
  • CopyTensorVariableArray(EV, y, yout)
    • EvolutionVars   :: EV
    • real(dl) intent(in) :: y(EV%nvart)
    • real(dl) intent(out) :: yout(EVout%nvart)
  • derivs(EV, n, ay, ayprime, tau)
    Evaluate the time derivatives of the scalar perturbations
    • EvolutionVars   :: EV
    • integer  :: n
    • real(dl)  :: ay(n)
    • real(dl)  :: ayprime(n)
    • real(dl)  :: tau
  • derivst(EV, n, ayt, aytprime, tau)
    Evaluate the time derivatives of the tensor perturbations.
    • EvolutionVars   :: EV
    • integer  :: n
    • real(dl) target :: ayt(n)
    • real(dl) target :: aytprime(n)
    • real(dl)  :: tau
  • derivsv(EV, n, yv, yvprime, tau)
    Evaluate the time derivatives of the vector perturbations, flat case
    • EvolutionVars   :: EV
    • integer  :: n
    • real(dl) target :: yv(n)
    • real(dl) target :: yvprime(n)
    • real(dl)  :: tau
  • GaugeInterface_EvolveScal(EV, c, w, y, tol1, tau, tauend, ind)
    • EvolutionVars   :: EV
    • real(dl)  :: c(24)
    • real(dl)  :: w(EV%nvar,9)
    • real(dl)  :: y(EV%nvar)
    • real(dl)  :: tol1
    • real(dl)  :: tau
    • real(dl)  :: tauend
    • integer  :: ind
  • GaugeInterface_EvolveTens(EV, c, w, y, tol1, tau, tauend, ind)
    • EvolutionVars   :: EV
    • real(dl)  :: c(24)
    • real(dl)  :: w(EV%nvart,9)
    • real(dl)  :: y(EV%nvart)
    • real(dl)  :: tol1
    • real(dl)  :: tau
    • real(dl)  :: tauend
    • integer  :: ind
  • GaugeInterface_ScalEv(EV, c, w, y, tol1, tau, tauend, ind)
    • EvolutionVars   :: EV
    • real(dl)  :: c(24)
    • real(dl)  :: w(EV%nvar,9)
    • real(dl)  :: y(EV%nvar)
    • real(dl)  :: tol1
    • real(dl)  :: tau
    • real(dl)  :: tauend
    • integer  :: ind
  • GetNumEqns(EV)
  • initial(EV, y, tau)
    Scalar initial conditions.
  • initialt(tau, EV, yt)
    Initial conditions for tensors
  • initialv(tau, EV, yv)
    Initial conditions for vectors
  • MassiveNuVars(EV, y, a, grho, gpres, dgrho, dgq, wnu_arr)
    • EvolutionVars   :: EV
    • real(dl)  :: y(EV%nvar)
    • real(dl)  :: a
    • real(dl)  :: grho
    • real(dl)  :: gpres
    • real(dl)  :: dgrho
    • real(dl)  :: dgq
    • real(dl) intent(out), optional :: wnu_arr(max_nu)
  • MassiveNuVarsOut(EV, y, yprime, a, adotoa, grho, gpres, dgrho, dgq, dgpi, dgpi_diff, pidot_sum, clxnu_all)
    • EvolutionVars   :: EV
    • real(dl)  :: y(EV%nvar)
    • real(dl)  :: yprime(EV%nvar)
    • real(dl)  :: a
    • real(dl)  :: adotoa
    • real(dl) optional :: grho
    • real(dl) optional :: gpres
    • real(dl) optional :: dgrho
    • real(dl) optional :: dgq
    • real(dl) optional :: dgpi
    • real(dl) optional :: dgpi_diff
    • real(dl) optional :: pidot_sum
    • real(dl) optional :: clxnu_all
  • Nu_Integrate_L012(EV, nu_i, a, y, drhonu, fnu, dpnu, pinu)
    • EvolutionVars   :: EV
    • integer intent(in) :: nu_i
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: y(EV%nvar)
    • real(dl) intent(OUT) :: drhonu
    • real(dl) intent(OUT) :: fnu
    • real(dl) optional, intent(OUT) :: dpnu
    • real(dl) optional, intent(OUT) :: pinu
  • Nu_Intvsq(EV, nu_i, a, y, G11, G30)
    • EvolutionVars   :: EV
    • integer intent(in) :: nu_i
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: y(EV%nvar)
    • real(dl) intent(OUT) :: G11
    • real(dl) intent(OUT) :: G30
  • Nu_pinudot(EV, nu_i, a, adotoa, y, ydot, pinudot)
    • EvolutionVars   :: EV
    • integer intent(in) :: nu_i
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: adotoa
    • real(dl) intent(in) :: y(EV%nvar)
    • real(dl) intent(in) :: ydot(EV%nvar)
    • real(dl)  :: pinudot
  • output(EV, y, j, tau, sources, num_custom_sources)
    • EvolutionVars   :: EV
    • real(dl)  :: y(EV%nvar)
    • integer intent(in) :: j
    • real(dl)  :: tau
    • real(dl) target :: sources(:)
    • integer intent(in) :: num_custom_sources
  • output_window_sources(EV, y, yprime, sources, tau, a, adotoa, grho, gpres, k, etak, z, etakdot, phi, phidot, sigma, sigmadot, dgrho, clxg, clxb, clxc, clxnu, dgq, qg, vb, qgdot, vbdot, dgpi, pig, pigdot, diff_rhopi, polter, polterdot, polterddot, octg, octgdot, E, Edot, Delta_TM, Delta_xe)
    Line of sight sources for number counts, lensing and 21cm redshift windows
    • EvolutionVars   :: EV
    • real(dl)  :: y(EV%nvar)
    • real(dl)  :: yprime(EV%nvar)
    • real(dL) intent(out) :: sources(:)
    • real(dL) intent(in) :: tau
    • real(dL) intent(in) :: a
    • real(dL) intent(in) :: adotoa
    • real(dL) intent(in) :: grho
    • real(dL) intent(in) :: gpres
    • real(dL) intent(in) :: k
    • real(dL) intent(in) :: etak
    • real(dL) intent(in) :: z
    • real(dL) intent(in) :: etakdot
    • real(dL) intent(in) :: phi
    • real(dL) intent(in) :: phidot
    • real(dL) intent(in) :: sigma
    • real(dL) intent(in) :: sigmadot
    • real(dL) intent(in) :: dgrho
    • real(dL) intent(in) :: clxg
    • real(dL) intent(in) :: clxb
    • real(dL) intent(in) :: clxc
    • real(dL) intent(in) :: clxnu
    • real(dL) intent(in) :: dgq
    • real(dL) intent(in) :: qg
    • real(dL) intent(in) :: vb
    • real(dL) intent(in) :: qgdot
    • real(dL) intent(in) :: vbdot
    • real(dL) intent(in) :: dgpi
    • real(dL) intent(in) :: pig
    • real(dL) intent(in) :: pigdot
    • real(dL) intent(in) :: diff_rhopi
    • real(dL) intent(in) :: polter
    • real(dL) intent(in) :: polterdot
    • real(dL) intent(in) :: polterddot
    • real(dL) intent(in) :: octg
    • real(dL) intent(in) :: octgdot
    • real(dL) intent(in) :: E(2:3)
    • real(dL) intent(in) :: Edot(2:3)
    • real(dl) intent(in) :: Delta_TM
    • real(dl) intent(in) :: Delta_xe
  • outputt(n, EV, yt, tau, dt, dte, dtb)
    calculate the tensor sources for open and closed case
    • integer  :: n
    • EvolutionVars   :: EV
    • real(dl) target :: yt(n)
    • real(dl)  :: tau
    • real(dl)  :: dt
    • real(dl)  :: dte
    • real(dl)  :: dtb
  • outputv(n, EV, yv, tau, dt, dte, dtb)
    calculate the vector sources
    • integer  :: n
    • EvolutionVars   :: EV
    • real(dl) target :: yv(n)
    • real(dl)  :: tau
    • real(dl)  :: dt
    • real(dl)  :: dte
    • real(dl)  :: dtb
  • outtransf(EV, tau, Arr, y)
    write out clxc, clxb, clxg, clxn
    • EvolutionVars   :: EV
    • real(dl) intent(in) :: tau
    • real target :: Arr(:)
    • real(dl)  :: y(EV%nvar)
  • SetActiveState(P)
  • SetupScalarArrayIndices(EV, max_num_eqns)
    Set up array indices after the lmax have been decided
  • SetupTensorArrayIndices(EV, maxeq)
  • SwitchToMassiveNuApprox(EV, nu_i, a, y)
    When the neutrinos are no longer highly relativistic we use a truncated energy-integrated hierarchy going up to third order in velocity dispersion
    • EvolutionVars   :: EV
    • integer intent(in) :: nu_i
    • real(dl)  :: a
    • real(dl)  :: y(EV%nvar)
  • TSource_func(sources, tau, a, adotoa, grho, gpres, w_lam, cs2_lam, grhob_t, grhor_t, grhoc_t, grhog_t, grhov_t, grhonu_t, k, etak, etakdot, phi, phidot, sigma, sigmadot, dgrho, clxg, clxb, clxc, clxr, clxnu, clxde, delta_p_b, dgq, qg, qr, qde, vb, qgdot, qrdot, vbdot, dgpi, pig, pir, pigdot, pirdot, diff_rhopi, polter, polterdot, polterddot, octg, octgdot, E, Edot, opacity, dopacity, ddopacity, visibility, dvisibility, ddvisibility, exptau, Kf, f_K)
    • real(dl) intent(out) :: sources(:)
    • real(dl) intent(in) :: tau
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: adotoa
    • real(dl) intent(in) :: grho
    • real(dl) intent(in) :: gpres
    • real(dl) intent(in) :: w_lam
    • real(dl) intent(in) :: cs2_lam
    • real(dl) intent(in) :: grhob_t
    • real(dl) intent(in) :: grhor_t
    • real(dl) intent(in) :: grhoc_t
    • real(dl) intent(in) :: grhog_t
    • real(dl) intent(in) :: grhov_t
    • real(dl) intent(in) :: grhonu_t
    • real(dl) intent(in) :: k
    • real(dl) intent(in) :: etak
    • real(dl) intent(in) :: etakdot
    • real(dl) intent(in) :: phi
    • real(dl) intent(in) :: phidot
    • real(dl) intent(in) :: sigma
    • real(dl) intent(in) :: sigmadot
    • real(dl) intent(in) :: dgrho
    • real(dl) intent(in) :: clxg
    • real(dl) intent(in) :: clxb
    • real(dl) intent(in) :: clxc
    • real(dl) intent(in) :: clxr
    • real(dl) intent(in) :: clxnu
    • real(dl) intent(in) :: clxde
    • real(dl) intent(in) :: delta_p_b
    • real(dl) intent(in) :: dgq
    • real(dl) intent(in) :: qg
    • real(dl) intent(in) :: qr
    • real(dl) intent(in) :: qde
    • real(dl) intent(in) :: vb
    • real(dl) intent(in) :: qgdot
    • real(dl) intent(in) :: qrdot
    • real(dl) intent(in) :: vbdot
    • real(dl) intent(in) :: dgpi
    • real(dl) intent(in) :: pig
    • real(dl) intent(in) :: pir
    • real(dl) intent(in) :: pigdot
    • real(dl) intent(in) :: pirdot
    • real(dl) intent(in) :: diff_rhopi
    • real(dl) intent(in) :: polter
    • real(dl) intent(in) :: polterdot
    • real(dl) intent(in) :: polterddot
    • real(dl) intent(in) :: octg
    • real(dl) intent(in) :: octgdot
    • real(dl) intent(in) :: E(2:3)
    • real(dl) intent(in) :: Edot(2:3)
    • real(dl) intent(in) :: opacity
    • real(dl) intent(in) :: dopacity
    • real(dl) intent(in) :: ddopacity
    • real(dl) intent(in) :: visibility
    • real(dl) intent(in) :: dvisibility
    • real(dl) intent(in) :: ddvisibility
    • real(dl) intent(in) :: exptau
    • REAL(dl) intent(in) :: Kf(*)
    • real(dl) external :: f_K
Functions
  • real(dl)
    DeltaTimeMaxed(a1, a2, tol)
    • real(dl)  :: a1
    • real(dl)  :: a2
    • real(dl) optional :: tol
  • real(dl)
    f_K(x)
    • real(dl) intent(in) :: x
  • real(dl)
    Get21cm_dTs(a, Delta_n, Delta_Ts, Delta_TCMB, Delta_Tm, Tmat, Trad)
    d Delta T_s / d eta dropping small \Delta_xe terms
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: Delta_n
    • real(dl) intent(in) :: Delta_Ts
    • real(dl) intent(in) :: Delta_TCMB
    • real(dl) intent(in) :: Delta_Tm
    • real(dl) intent(in) :: Tmat
    • real(dl) intent(in) :: Trad
  • real(dl)
    Get21cm_source2(a, Delta_source, Delta_TCMB, Delta_Tm, Tmat, Trad, xe, Delta_xe)
    Delta_Tspin - Delta_TCMB
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: Delta_source
    • real(dl) intent(in) :: Delta_TCMB
    • real(dl) intent(in) :: Delta_Tm
    • real(dl) intent(in) :: Tmat
    • real(dl) intent(in) :: Trad
    • real(dl) intent(in) :: xe
    • real(dl) intent(in) :: Delta_xe
  • integer
    next_nu_nq(nq)
    • integer intent(in) :: nq
  • real(dl)
    Nu_pi(EV, nu_i, a, y)
    • EvolutionVars   :: EV
    • integer intent(in) :: nu_i
    • real(dl) intent(in) :: a
    • real(dl) intent(in) :: y(EV%nvart)