Skip to main content
COOLEST logo

Standard for Strong Gravitational Lensing Analyses

PyPi python support Tests Coverage Status Documentation Status License DOI

What is COOLEST?

The COde-independent Organized LEns STandard (COOLEST) defines a set of conventions to be shared across the strong lensing community, in order to consistently store, share and improve lens modeling analyses. In short, this project provides tools to manipulate lens models as a single, human-readable JSON template file alongside Python routines for visualizing and comparing lens models possibly obtained from different modeling codes.

For more information and the full list of COOLEST features, refer to the online documentation.

Components of the standard

COOLEST is composed of three distinct building blocks:

  • A set of conventions: reference point for all modelling assumptions and codes, which includes coordinate systems, units and profile definitions used when manipulating the lens models stored in the template file;

  • Template file system (coolest.template): a Python interface to create, store and manipulate COOLEST template files (JSON format) and linked external files (such as FITS files for data and pixelated model components);

  • Analysis & plotting (coolest.api): a Python interface to compute key lensing quantities and generate publication-ready lens model plots.

Examples

See the example notebooks directory to generate and manipulate typical JSON template files describing lens models. Below is an example of plot generated using the coolest.api submodule.

Example lens model comparison using the COOLEST plotting and analysis capabilities

Installation of the Python package

Latest released version

The easiest way to install the latest version of the coolest Python package is via PyPi:

# Activate your virtual environment before if needed

pip install coolest

Latest development version

You can also install it from the GitHub repository directly to get access to the latest changes:

# Clone the latest version
git clone https://github.com/aymgal/COOLEST.git

# Move to the repo directly
cd COOLEST

# Now is a good idea to activate your virtual environment if needed

Then you can install the coolest package. If you wish to modify or contribute to the source code, do not forget to use the -e option in the commands below to install it in development mode. For installing the package without optional dependencies, use the following command:

# install coolest and required dependencies
pip install [-e] .

For installing the package with all optional dependencies, use the following command:

# also install optional dependencies
pip install [-e] ".[opt]"

You can test the installation by running python -c "import coolest" in the terminal, or by running some of the example notebooks from the documentation directory. Moreover, you can run all unit tests (having pytest installed in your environment), with the command pytest test.

Contributing to the COOLEST standard

We encourage and highly value All types of feedback, feature proposals and contributions from the whole lensing community. Please have a look at CONTRIBUTING.md for more information about contributing to the project.

Citing the COOLEST standard

If you make use of COOLEST for your research, please cite our JOSS publication. Here is the corresponding BibTeX entry:

@article{Galan2023,
    author = {Galan, Aymeric and de Vyvere, Lyne Van and Gomer, Matthew R. and Vernardos, Georgios and Sluse, Dominique},
    doi = {10.21105/joss.05567},
    journal = {Journal of Open Source Software},
    month = aug,
    number = {88},
    pages = {5567},
    title = {{COOLEST: COde-independent Organized LEns STandard}},
    url = {https://joss.theoj.org/papers/10.21105/joss.05567},
    volume = {8},
    year = {2023}
}

Original contributors

The full list of contributors is given in AUTHORS.md.

As this is an open source project, we very much appreciate any feedback and new contributions from the community. The goal is really to improve the standard so that most of the research using strong lens modeling can benefit from it.

Metadata

Release files for coolest 0.1.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for coolest 0.1.11
File Size Uploaded Provenance Actions
coolest-0.1.11.tar.gz 80.7 kB With provenance Details for coolest-0.1.11.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for coolest 0.1.11
File Interpreter ABI Platform Actions
coolest-0.1.11-py3-none-any.whl Python 3 none any Details for coolest-0.1.11-py3-none-any.whl

Total release size: 175.9 kB

Release files / coolest-0.1.11.tar.gz

Download URL coolest-0.1.11.tar.gz
Size 80.7 kB
Tags Source
SHA-256 checksum
How to use checksums
afd634b6e2bb4e21e23764c9c5c1e1b152739c06521b4bb13a7264c06558371d
BLAKE2b-256 checksum
How to use checksums
213c857dc831bff0d64290dd24597530f4b3cac5b2d6b87afad5299c38706b49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2025.

Transparency log

Release files / coolest-0.1.11-py3-none-any.whl

Download URL coolest-0.1.11-py3-none-any.whl
Size 95.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
46224590478d53edb9a6dae043ae62ef3e84bcd71f264f2e376bea577a3186e5
BLAKE2b-256 checksum
How to use checksums
3a574ee648fadb3c3f4b88199a78d099f163623462d4238604edb82dd351b519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2025.

Transparency log

Security for coolest 0.1.11

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for coolest-0.1.11.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page