21cmFAST v3
21cmFAST v3: A Python-integrated C code for generating 3D realizations of the cosmic 21cm signal. - Published in JOSS (2020)
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 15 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
✓Committers with academic emails
3 of 28 committers (10.7%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords from Contributors
Scientific Fields
Repository
Official repository for 21cmFAST: a code for generating fast simulations of the cosmological 21cm signal
Basic Info
- Host: GitHub
- Owner: 21cmfast
- License: mit
- Language: C
- Default Branch: main
- Size: 103 MB
Statistics
- Stars: 66
- Watchers: 7
- Forks: 43
- Open Issues: 74
- Releases: 1
Metadata Files
README.rst
========
21cmFAST
========
.. start-badges
.. image:: https://travis-ci.org/21cmFAST/21cmFAST.svg
:target: https://travis-ci.org/21cmFAST/21cmFAST
.. image:: https://coveralls.io/repos/github/21cmFAST/21cmFAST/badge.svg
:target: https://coveralls.io/github/21cmFAST/21cmFAST
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/ambv/black
.. image:: https://readthedocs.org/projects/21cmfast/badge/?version=latest
:target: https://21cmfast.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. image:: https://img.shields.io/conda/dn/conda-forge/21cmFAST
:target: https://github.com/conda-forge/21cmfast-feedstock
:alt: Conda
.. image:: https://joss.theoj.org/papers/10.21105/joss.02582/status.svg
:target: https://doi.org/10.21105/joss.02582
.. end-badges
**A semi-numerical cosmological simulation code for the radio 21-cm signal.**
.. image:: joss-paper/yuxiangs-plot-small.png
:target: http://homepage.sns.it/mesinger/Media/lightcones_minihalo.png
This is the official repository for ``21cmFAST``: a semi-numerical code that is able to
produce 3D cosmological realisations of many physical fields in the early Universe.
It is super-fast, combining the excursion set formalism with perturbation theory to
efficiently generate density, velocity, halo, ionization, spin temperature, 21-cm, and
even ionizing flux fields (see the above lightcones!).
It has been tested extensively against numerical simulations, with excellent agreement
at the relevant scales.
``21cmFAST`` has been widely used, for example, by the Murchison Widefield Array (MWA),
LOw-Frequency ARray (LOFAR) and Hydrogen Epoch of Reionization Array (HERA), to model the
large-scale cosmological 21-cm signal. In particular, the speed of ``21cmFAST`` is important
to produce simulations that are large enough (several Gpc across) to represent modern
low-frequency observations.
Documentation
=============
Full documentation (with examples, installation instructions and full API reference)
found at https://21cmfast.readthedocs.org.
New Features in 4.0.0
=====================
* A discrete halo sampler allowing for the creation of lightcones of galaxy properties and the
inclusion of stochasticity. These discrete sources are self-consistently used in the IGM calculations
* The Inclusion of the Sheth-Tormen conditional halo mass function.
* Re-designed input/output structures which prioritise transparency.
* Refactoring of several of the C backend files for much easier development.
* A lower-level testing framework for calculations done in the backend.
As of ``v3.0.0``, ``21cmFAST`` is conveniently wrapped in Python to enable more dynamic code.
New Features in 3.0.0+
======================
* Robust on-disk caching/writing both for efficiency and simplified reading of
previously processed data (using HDF5).
* Convenient data objects which simplify access to and processing of the various density
and ionization fields.
* De-coupled functions mean that arbitrary functionality can be injected into the process.
* Improved exception handling and debugging
* Comprehensive documentation
* Comprehensive test suite.
* Strict `semantic versioning `_.
Installation
============
We support Linux and MacOS (please let us know if you are successful in installing on
Windows!). On these systems, the simplest way to get ``21cmFAST`` is by using
`conda `_::
conda install -c conda-forge 21cmFAST
``21cmFAST`` is also available on PyPI, so that ``pip install 21cmFAST`` also works. However,
it depends on some external (non-python) libraries that may not be present, and so this
method is discouraged unless absolutely necessary. If using ``pip`` to install ``21cmFAST``
(especially on MacOS), we thoroughly recommend reading the detailed
`installation instructions `_.
Acknowledging
=============
If you use ``21cmFAST v3+`` in your research please cite both of:
Murray et al., (2020). 21cmFAST v3: A Python-integrated C code for generating 3D
realizations of the cosmic 21cm signal. Journal of Open Source Software, 5(54),
2582, https://doi.org/10.21105/joss.02582
Andrei Mesinger, Steven Furlanetto and Renyue Cen, "21CMFAST: a fast, seminumerical
simulation of the high-redshift 21-cm signal", Monthly Notices of the Royal
Astronomical Society, Volume 411, Issue 2, pp. 955-972 (2011),
https://ui.adsabs.harvard.edu/link_gateway/2011MNRAS.411..955M/doi:10.1111/j.1365-2966.2010.17731.x
In addition, the following papers introduce various features into ``21cmFAST``. If you use
these features, please cite the relevant papers.
Discrete Halo Sampler / version 4:
Davies, J. E., Mesinger, A., Murray, S. G.,
"Efficient simulation of discrete galaxy populations and associated radiation fields during the first billion years",
eprint arXiv:2504.17254, 2025. https://doi.org/10.48550/arXiv.2504.17254
Mini-halos:
Muñoz, J.B., Qin, Y., Mesinger, A., Murray, S., Greig, B., and Mason, C.,
"The Impact of the First Galaxies on Cosmic Dawn and Reionization",
Monthly Notices of the Royal Astronomical Society, vol. 511, no. 3,
pp 3657-3681, 2022 https://doi.org/10.1093/mnras/stac185
(for DM-baryon relative velocities)
Qin, Y., Mesinger, A., Park, J., Greig, B., and Muñoz, J. B.,
“A tale of two sites - I. Inferring the properties of minihalo-hosted galaxies from
current observations”, Monthly Notices of the Royal Astronomical Society, vol. 495,
no. 1, pp. 123–140, 2020. https://doi.org/10.1093/mnras/staa1131.
(for Lyman-Werner and first implementation)
Mass-dependent ionizing efficiency:
Park, J., Mesinger, A., Greig, B., and Gillet, N.,
“Inferring the astrophysics of reionization and cosmic dawn from galaxy luminosity
functions and the 21-cm signal”, Monthly Notices of the Royal Astronomical Society,
vol. 484, no. 1, pp. 933–949, 2019. https://doi.org/10.1093/mnras/stz032.
If you are unsure which modules are used within your simulations, we provide a handy function
to print out which works to refer ``py21cmfast.utils.show_references``, which accepts a single instance of
the ``InputParameters`` class and shows which papers are relevant for your simulation.
Owner
- Name: 21cmFAST Collaboration
- Login: 21cmfast
- Kind: organization
- Email: 21cmfast.coredev@gmail.com
- Repositories: 3
- Profile: https://github.com/21cmfast
Core team that develops 21cmFAST and associated packages
JOSS Publication
21cmFAST v3: A Python-integrated C code for generating 3D realizations of the cosmic 21cm signal.
Authors
ARC Centre of Excellence for All-Sky Astrophysics in 3 Dimensions (ASTRO 3D), School of Physics, University of Melbourne, Parkville, VIC 3010, Australia
Tags
astronomy cosmology simulationGitHub Events
Total
- Issues event: 39
- Watch event: 7
- Delete event: 72
- Issue comment event: 183
- Push event: 466
- Pull request event: 154
- Pull request review event: 300
- Pull request review comment event: 256
- Fork event: 4
- Create event: 90
Last Year
- Issues event: 41
- Watch event: 7
- Delete event: 72
- Issue comment event: 186
- Push event: 469
- Pull request event: 156
- Pull request review event: 302
- Pull request review comment event: 257
- Fork event: 4
- Create event: 91
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Steven Murray | s****y@c****u | 947 |
| James Davies | j****s@s****t | 648 |
| BradGreig | b****g@s****u | 343 |
| Yuxiang Qin | Y****n@g****m | 106 |
| pre-commit-ci[bot] | 6****] | 99 |
| Jordan Flitter | j****r@J****l | 63 |
| Yuxiang Qin | y****n@s****t | 60 |
| JulianBMunoz | j****r@g****m | 55 |
| debanjan-cosmo | 8****o | 23 |
| DanielaBreitman | d****n@m****a | 13 |
| Jaehong Park | j****k@J****l | 8 |
| Jordan Flitter | y****r@g****m | 6 |
| James Davies | j****s@t****t | 5 |
| Charlotte Mason | c****m@g****m | 4 |
| dependabot[bot] | 4****] | 4 |
| David Prelogovic | d****c@g****m | 4 |
| James Edward Davies | j****0@l****l | 3 |
| Dan Foreman-Mackey | f****y@g****m | 3 |
| Remy Moll | me@m****e | 3 |
| raxquax123 | 1****3 | 2 |
| Catherine Watkinson | c****n@g****m | 2 |
| Jordan Flitter | j****r@J****n | 2 |
| catherinewatkinson | c****n@g****m | 1 |
| James Davies | d****e@z****t | 1 |
| James Edward Davies | j****0@l****l | 1 |
| yuxiang qin | y****n@t****t | 1 |
| andreimesinger | a****r@s****t | 1 |
| Samuel Gagnon-Hartman | s****n@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 134
- Total pull requests: 315
- Average time to close issues: about 1 year
- Average time to close pull requests: about 1 month
- Total issue authors: 35
- Total pull request authors: 17
- Average comments per issue: 2.07
- Average comments per pull request: 1.71
- Merged pull requests: 232
- Bot issues: 0
- Bot pull requests: 68
Past Year
- Issues: 29
- Pull requests: 177
- Average time to close issues: about 2 months
- Average time to close pull requests: 7 days
- Issue authors: 10
- Pull request authors: 11
- Average comments per issue: 0.24
- Average comments per pull request: 1.31
- Merged pull requests: 130
- Bot issues: 0
- Bot pull requests: 32
Top Authors
Issue Authors
- steven-murray (35)
- daviesje (32)
- jordanflitter (9)
- qyx268 (7)
- JasperSolt (6)
- BradGreig (5)
- andreimesinger (4)
- Andresfgomez970 (3)
- zhaotingchen (2)
- dprelogo (2)
- oscarhdz7 (2)
- samgagnon (2)
- bohuarolandli (2)
- SuvedhaNaik (2)
- flomertens (1)
Pull Request Authors
- daviesje (118)
- steven-murray (76)
- pre-commit-ci[bot] (58)
- jordanflitter (25)
- dependabot[bot] (10)
- BradGreig (5)
- moll-re (4)
- DanielaBreitman (3)
- raxquax123 (3)
- andreimesinger (2)
- qyx268 (2)
- debanjan-cosmo (2)
- samgagnon (2)
- JulianBMunoz (2)
- charlottenosam (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 1,103 last-month
-
Total dependent packages: 4
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 32
- Total maintainers: 3
pypi.org: 21cmfast
A semi-numerical cosmological simulation code for the 21cm signal
- Homepage: https://github.com/21cmFAST/21cmFAST
- Documentation: https://21cmfast.readthedocs.io/
- License: MIT license
-
Latest release: 3.4.0
published over 1 year ago
Rankings
Maintainers (3)
conda-forge.org: 21cmfast
21cmFAST provides a simple and fast simulation package for the cosmological 21cm signal as either coeval cubes or full lightcones.
- Homepage: https://github.com/21cmFAST/21cmFAST
- License: MIT
-
Latest release: 3.2.0
published over 3 years ago
Rankings
Dependencies
- ridedott/merge-me-action v1 composite
- actions/checkout v2 composite
- repo-sync/pull-request v2 composite
- actions/checkout master composite
- actions/setup-python v1 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/checkout v2 composite
- tvdias/github-tagger v0.0.2 composite
- actions/checkout master composite
- codecov/codecov-action v2 composite
- conda-incubator/setup-miniconda v2.1.1 composite
- astropy >=2.0
- bidict *
- cached_property *
- cffi >=1.0
- click *
- h5py >=2.8.0
- matplotlib *
- numpy *
- pyyaml *
- scipy *
- bidict *
- nbconvert >=6.4.5
- nbsphinx *
- setuptools_scm *
- sphinx-rtd-theme *