Skip to main content

Add your description here

Project description

BEoRN: Bubbles during the Epoch Of Reionization Numerical-simulator

License GitHub Repository CI status Documentation

BEoRN is a simulation tool designed to model the state of the intergalactic medium (IGM) during cosmic dawn and reionization (Schaeffer, Giri & Schneider 2023). It leverages one-dimensional radiative transfer calculations to efficiently model the temperature evolution of intergalactic gas and growth of ionized regions (bubbles) around early galaxies embedded in dark matter halos (e.g., Schneider, Giri & Mirocha 2021; Schneider, Schaeffer & Giri 2023).

BEoRN is designed to be flexible, user-friendly, and fast, allowing researchers to efficiently explore various astrophysical scenarios and their impact on the 21-cm signal from neutral hydrogen.

BEoRN is actively developed. We welcome feedback and contributions. If you encounter any issues, please inform the developers by opening a GitHub issue.

Key Features

  • 📦 Lightweight & Modular: A Python package suitable for simulation modules and analysis tools.
  • 📊 Data Visualization: Utilities for assembling time/coeval cube data for easy visualization.
  • 🔄 Reproducible: Testing and CI-ready structure to support reproducible development.
  • 🌌 Flexible Inputs: Natively reads halo catalogs from simulations such as Thesan and PkdGrav, or generates synthetic catalogs on the fly relying on 21cmFAST.

Documentation

Full documentation is available at: https://cosmic-reionization.github.io/BEoRN

Installation

Standard Installation

You can install BEoRN directly from GitHub using pip:

pip install git+https://github.com/cosmic-reionization/beorn.git

With Optional Dependencies

The extra option installs additional packages needed for generating synthetic halo catalogs with 21cmFAST and for comparing halo mass functions against analytical models (hmf):

pip install "git+https://github.com/cosmic-reionization/beorn.git[extra]"

Note: If 21cmFAST installation fails, please refer to the 21cmFAST repository and install it manually first, then install BEoRN without the extra option.

Development Installation

For a local, editable installation (useful if you want to modify the code):

  1. Clone the repository:
git clone https://github.com/cosmic-reionization/beorn.git
cd beorn
  1. Install in editable mode:
pip install -e .

To also install the optional dependencies:

pip install -e ".[extra]"

Dependencies

The dependencies are listed in pyproject.toml. The core dependencies include numpy, scipy, h5py, mpi4py, astropy, matplotlib, pylians, and tools21cm.

⚠️ Note on pylians: This package may sometimes fail during automatic installation of dependencies. If you encounter issues, we recommend installing pylians separately before installing BEoRN.

Project Layout

  • src/beorn/: Package source code.
  • docs/: Documentation source.
  • examples/: Runnable examples and Jupyter notebooks to get started quickly.

Note: This repository focuses on code and workflows. Heavy simulation outputs (coeval/temporal cubes, large data products) are expected to be stored externally due to size.

📖 Citation

If you use this package in your research, please consider citing the following paper:

@article{Schaeffer_2023,
    title={beorn: a fast and flexible framework to simulate the epoch of reionization and cosmic dawn},
    volume={526},
    ISSN={1365-2966},
    url={[http://dx.doi.org/10.1093/mnras/stad2937](http://dx.doi.org/10.1093/mnras/stad2937)},
    DOI={10.1093/mnras/stad2937},
    number={2},
    journal={Monthly Notices of the Royal Astronomical Society},
    publisher={Oxford University Press (OUP)},
    author={Schaeffer, Timothée and Giri, Sambit K and Schneider, Aurel},
    year={2023},
    month=sep,
    pages={2942–2959}
}

👨‍💻 Authors

Contributing

Contributions are welcome! If you find bugs or unexpected behavior, please open a Github issue. For detailed guidelines on contributing code or setting up a development environment, please see CONTRIBUTING.rst.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

beorn-1.1.0.tar.gz (114.5 kB view details)

Uploaded Source

Built Distribution

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

beorn-1.1.0-py3-none-any.whl (133.2 kB view details)

Uploaded Python 3

File details

Details for the file beorn-1.1.0.tar.gz.

File metadata

  • Download URL: beorn-1.1.0.tar.gz
  • Upload date:
  • Size: 114.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for beorn-1.1.0.tar.gz
Algorithm Hash digest
SHA256 2ad6df7640dcea8bd59cc8f26b8d2ecef3405b9949a9f822a5bc73592e13640d
MD5 244c8ddd76b93fb2751e788f926f6aad
BLAKE2b-256 93c3cd62428b87d747db94a721b69e871a76dd15a2bea5678dca8dc0cb5a0ce2

See more details on using hashes here.

File details

Details for the file beorn-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: beorn-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 133.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for beorn-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa0dd11088777e9eaf0c97d165f9a341490f091dd8e5f86bedb8acdf49b6b094
MD5 04185a2cb4cf242df7122565db62e861
BLAKE2b-256 ba85ce3db5e8a0395c89760f7d8f2f9776724b611ae9f0f95551f714c95062fa

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