.. ABCMB documentation master file, created by
sphinx-quickstart on Mon Oct 6 16:03:40 2025.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
ABCMB documentation
===================
ABCMB is a fully differentiable Boltzmann solver for the CMB. 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.
`HyRex Documentation `_ and `LINX documentation `_ are maintained separately.
Installation
------------
To download and install ABCMB, please visit our `GitHub `_. There you will find detailed instructions for installing ABCMB and its dependencies.
Module Structure
----------------
The high-level organization of ABCMB is as follows:
.. image:: _static/ABCMB_code_block.png
:alt: ABCMB Code Block Diagram
:align: center
:width: 700px
In most cases, the user will only need to initialize **abcmb.main.Model** and call **Model.run_cosmology** explicitly; the other modules will be called by this top-level function.
Examples
--------
Three pedagogical example notebooks demonstrating how to use ABCMB are available at our `GitHub `_. These include Jupyter notebooks demonstrating
- `The basics of using ABCMB `_
- `How to add new physics to ABCMB `_
- `How to combine ABCMB with the BBN code LINX (included) to perform joint CMB+BBN analyses `_
.. toctree::
:maxdepth: 1
:caption: Contents:
modules
FAQ