Skip to content
KIPACPublic

About

dark energy plane for 3x2pt analysis

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

de_plane

A model-agnostic way to look at dark energy (DE) with 3×2pt surveys: project the constraints onto the plane

$$\big(\delta\ln\chi(z),\ \delta\ln\sigma_{12}(z)\big),$$

the comoving distance (Mpc) and the linear amplitude in 12 Mpc spheres, relative to a Planck 2018 ΛCDM fiducial, at a set of redshifts. Different DE model classes populate different regions and trajectories of this plane, so surveys analysed on a common basis can be compared, and models overlaid, without choosing a parametric DE model first.

The package provides:

  • de_plane.lib (pure Python, CAMB): DE histories (LCDM, W0WA, the non-parametric Nodes model), backgrounds, plane coordinates, θ*-anchored model tracks, growth-index and growth-split helpers.
  • CosmoSIS modules that put these into a likelihood pipeline:
module role
de_nodes DE history → tabulated w(a) for CAMB (PPF). Modes: nodes (sample de_nodes/ln_f_1..4, ln ρ_DE at z = 0.3, 0.6, 1.0, 1.5), w0wa, lcdm. Solves h from θ_MC when it is sampled. Writes the CPL fit (w0_eff, wa_eff) for HMcode.
growth_split growth–geometry split: P_lin → A(z)² P_lin with A(z) a spline through growth_split/A_1..4; A = 1 recovers GR growth.
plane_coords writes δlnχ, δlnχ_h, δlnσ12 at the plane redshifts (section de_plane) so every chain row carries them.
hmcode_de HMcode2016 (pyhmcode) nonlinear P(k), one-parameter baryons (A_bary), with the DE background passed to HMcode.
eu_prior correlated Planck 2018 early-universe prior on (ω_b, ω_c, 100θ_MC, n_s); A_s left free.
theta_h 100θ_MC → h for parametric w0–wa runs.
w0wa_prior hard w0 + wa < 0 prior.
sigma8_rescale DE-aware σ8 → A_s for pipelines that sample S8 (KiDS-1000).
meascorr_general HSC Y3 measurement corrections (wp, r_p, ΔΣ) with distances from the block (needs the HSC Y3 likelihood code).
  • de_plane.run_nautilus: runs a CosmoSIS pipeline with the nautilus sampler (v1 API, MPI) and writes a CosmoSIS-format chain; de_plane.nautilus_snapshot writes provisional chains from running checkpoints.

Install

git clone git@github.com:KIPAC/de_plane.git
cd de_plane
pip install -e ".[examples]"        # numpy, scipy, camb + matplotlib, jupyter

For the CosmoSIS modules you also need a CosmoSIS installation with the CosmoSIS standard library, and pip install -e ".[cosmosis]" (pyhmcode, nautilus-sampler, mpi4py).

Examples

  • examples/plane_predictions.ipynb: build DE histories with the node model and growth deviations with the growth split, and predict their tracks on the plane. Runs with the base install (no CosmoSIS).
  • examples/cosmosis_desy3: DES Y3 MagLim 3×2pt CosmoSIS configurations for the smooth (nodes) and split models, with flat and Planck-θ* priors, including the public DES Y3 data vector. Needs a CosmoSIS setup; see its README.

Quick start

from de_plane.lib.background import W0WA, Nodes, NODE_Z
from de_plane.lib.models import track

de = Nodes([0.10, 0.12, 0.05, 0.02])     # ln rho_DE(z_k)/rho_DE(0) at z_k = 0.3, 0.6, 1.0, 1.5
t = track(de, zs=[0.3, 0.6, 1.0])          # Planck18 early universe, theta_MC fixed, h solved
print(t["h"], t["dlnchi"], t["dlnsig12"])
print("CPL fit (w0, wa):", de.cpl_fit())

License

BSD 3-Clause, see LICENSE.

About

dark energy plane for 3x2pt analysis

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages