Metadata-Version: 2.4
Name: 21cmPSDenoiser
Version: 1.0.2
Summary: Tools for post-processing and computing summaries of 21cmFAST simulations
Author-email: Daniela Breitman <daniela.breitman@sns.it>
License: MIT
Project-URL: Repository, https://github.com/DanielaBreitman/21cmPSDenoiser
Project-URL: Issues, https://github.com/DanielaBreitman/21cmPSDenoiser/issues
Project-URL: Changelog, https://github.com/DanielaBreitman/21cmPSDenoiser/releases
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: torch>=2.0.1
Requires-Dist: tuesday-eor>=2.3.0
Requires-Dist: astropy>=7.0.1
Requires-Dist: attrs>=25.3.0
Requires-Dist: numpy>=2
Requires-Dist: powerbox>=0.8.2
Requires-Dist: scipy>=1.15.2
Provides-Extra: tests
Requires-Dist: coverage; extra == "tests"
Requires-Dist: pytest-cov; extra == "tests"
Requires-Dist: pre-commit; extra == "tests"
Requires-Dist: pytest; extra == "tests"
Requires-Dist: sphinx; extra == "tests"
Provides-Extra: dev
Requires-Dist: 21cmPSDenoiser[21cmfast,tests]; extra == "dev"
Dynamic: license-file

================================================================================
21cmPSDenoiser - A score-based diffusion model that denoises 21-cm power spectra
================================================================================

``21cmPSDenoiser`` is a package that provides a score-based diffusion model trained on 21cmFAST simulations that is capabale of significantly reducing the effect of sample variance on individual 21-cm power spectrum (PS) realisations.
In Breitman+25, we find that it's better to reproduce the 21-cm PS calculation as closely as possible to the training set for optimal performance. This is especially true when applying ``21cmPSDenoiser`` on 21-cm PS from different simulators and / or physical models.
The 21-cm power spectra in the training set have been computed with `tuesday <https://github.com/21cmfast/tuesday>`_, a wrapper around `powerbox <https://github.com/steven-murray/powerbox>`_.
In the near future, we will provide a script to calculate the 21-cm PS from a lightcone in the exact same way as was done in the training set.

The package can be installed with pip via ``pip install 21cmPSDenoiser`` and tutorials are in ``docs/tutorials``.

If you use this code in your research, please cite Breitman+25.
