Catalog PyPI
PACKAGE EXPLORERView in registry

ABCMB

PyPI

A fast, differentiable, and extensible CMB code

cmbcosmologydifferentiablejaxphysics
Versions collected1
Direct dependencies9From release 0.4.0
Last observed20 Oct, 17:15 UTC

README

Version 0.4.0 documentation

ABCMB

License: MIT arXiv Run Tests

Autodifferentiable Boltzmann solver for the CMB (ABCMB) is a Python+JAX package for differentiable computation of the Cosmic Microwave Background. ABCMB is complete to linear order in $\Lambda\rm{CDM}$ cosmology. It computes the matter and CMB power spectra and includes effects like lensing, massive neutrinos, and a state-of-the-art treatment of the physics of recombination through the companion code HyRex.

Installation

ABCMB is pip installable! Just run

pip install ABCMB

We recommend always doing so in a conda environment, preferably even a clean one.

If you'd like to clone the repo instead, after cloning you can run

pip install .

from the code directory.

Note that both methods of installing will automatically attempt to install JAX for CPU; to install for GPU, refer to the JAX documentation for a quick JAX installation guide.

Examples

We have included several pedagogical jupyter notebooks to walk you through how to get started with ABCMB in our example_notebooks folder. We suggest you start with ABCMB_basics to get a sense of how to run the code. If you'd like to add new physics to ABCMB, check out ABCMB_Fluids. If you'd like to run ABCMB with the Big Bang Nucleosynthesis (BBN) code LINX to do BBN+CMB joint analyses, check out ABCMB_with_LINX.

Issues

Please feel free to open an issue if something is amiss in ABCMB!

Third-party code

ABCMB's HALOFIT implementation (abcmb/halofit.py) is adapted from jax-cosmo (MIT License, Copyright (c) 2022 Differentiable Universe Initiative); see LICENSE-jax_cosmo. If you use the non-linear matter power spectrum, we suggest you cite jax-cosmo (Campagne et al. 2023) and the HALOFIT papers, Smith et al. 2003 and Takahashi et al. 2012.

Citation

If you use ABCMB to publish scientific research, we suggest you cite

@article{abcmb,
   title={{ABCMB: A Python+JAX Package for the Cosmic Microwave Background Power Spectrum}},
   volume={2026},
   ISSN={1475-7516},
   url={http://dx.doi.org/10.1088/1475-7516/2026/08/078},
   DOI={10.1088/1475-7516/2026/08/078},
   number={08},
   journal={Journal of Cosmology and Astroparticle Physics},
   publisher={IOP Publishing},
   author={Zhou, Zilu and Giovanetti, Cara and Liu, Hongwan},
   year={2026},
   month=Aug, pages={078} }

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.4.015 Oct 20269

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
tonyzhou729/abcmb

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 17:15 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:72724394cce38254ea47bfecbf5aab81d67a959d570d06dbadd31a9c4f0d9356