Skip to main content

A fast, differentiable, and extensible CMB code

Project description

ABCMB

License: MIT 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!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abcmb-0.2.1.tar.gz (31.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

abcmb-0.2.1-py3-none-any.whl (32.9 MB view details)

Uploaded Python 3

File details

Details for the file abcmb-0.2.1.tar.gz.

File metadata

  • Download URL: abcmb-0.2.1.tar.gz
  • Upload date:
  • Size: 31.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for abcmb-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e7724e6be67dd7f4f43eb244b58c3aba62add3f549ee45a9f715b17afe6a4c4c
MD5 848acd2b5b5544d29fd38011d708d03b
BLAKE2b-256 c4ba5ada68112ea756b8cfb15e8d977e793d4e91f6565d68f024bf4c662bf3ff

See more details on using hashes here.

File details

Details for the file abcmb-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: abcmb-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 32.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for abcmb-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 830dcaf6c7ac0490d77b64efb2fb17233e71081a9931ab9227bed6e9e8491ef9
MD5 7cd70e9c976247f4d0f877d9ed09bd81
BLAKE2b-256 251d49bc7536357db951f53ea77acc819caf79176def246a124d5b1d7f642707

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page