Cosmotile

PyPI Status Python Version License

Read the documentation at https://cosmotile.readthedocs.io/ Tests Codecov

pre-commit Black

Create cosmological lightcones from coeval simulations.

This algorithm is taken from the code in https://github.com/piyanatk/cosmotile, but is repackaged and re-tooled.

Features

  • Fast tiling of finite, periodic cosmic simulations onto arbitrary angular coordinates.

  • Generate different realizations by translation and rotation.

  • Optional JAX backend: autodiff through the tiling, and GPU acceleration.

Installation

You can install Cosmotile via pip from PyPI:

$ pip install cosmotile

For the optional JAX backend — differentiable tiling, and GPU acceleration — install the extra:

$ pip install cosmotile[jax]

Usage

Please see the Usage Guide for details, and Accuracy and Limitations for what the output window actually is. If you want gradients through the tiling, or want it to run on a GPU, see Differentiable and GPU tiling.

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, Cosmotile is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.

The algorithm used in this repository is derived from the cosmotile module in https://github.com/nithyanandan/AstruUtils, which was later modularised in https://github.com/piyanatk/cosmotile.

Acknowledgments

If you find cosmotile useful in your project, please star this repository and, if applicable, cite https://arxiv.org/abs/1708.00036.