This repository contains code associated with the PAINT database. The PAINT database
makes operational data of concentrating solar power plants available in accordance with the FAIR data principles, i.e.,
making them findable, accessible, interoperable, and reusable. Currently, the data encompasses calibration images,
deflectometry measurements, kinematic settings, and weather information of the concentrating solar power plant in
JΓΌlich, Germany, with the global power plant id (GPPD) WRI1030197. Metadata for all database entries follows the
spatio-temporal asset catalog (STAC) standard.
π₯ To learn more, check out our publication in Nature Energy - https://doi.org/10.1038/s41560-026-02070-1 π₯
This repository contains two main types of code:
- Preprocessing: This code was used to preprocess the data and extract all metadata into the STAC format. This
preprocessing included moving and renaming files to be in the correct structure, converting coordinates to the WGS84
format, and generating all STAC files (items, collections, and catalogs). This code is found in the subpackage
paint.preprocessingand executed in the scripts located inpreprocessing-scripts. This code could be useful if you have similar data that you would also like to process and include in thePAINTdatabase! - Data Access and Usage: This code enables data from the
PAINTdatabase to be easily accessed from a code-base and applied for a specific use case. Specifically, we provide aStacClientfor browsing the STAC metadata files in thePAINTdatabase and downloading specific files. Furthermore, we provide utilities to generate custom benchmarks for evaluating various calibration algorithms and also atorch.Datasetfor efficiently loading and using calibration data. This code is found in the subpackagepaint.dataand examples of possible execution are found in thescriptsfolder.
In the following, we will highlight how to use the code in more detail!
We heavily recommend installing the PAINT package in a dedicated Python3.10+ virtual environment. You can install the
latest stable version of PAINT directly from PyPI using:
pip install paint-cspAlternatively, You can install the latest developmental version of PAINT directly from the GitHub repository via:
pip install git+https://github.com/ARTIST-Association/PAINTYou can also install PAINT locally. To achieve this, there are two steps you need to follow:
- Clone the
PAINTrepository:git clone https://github.com/ARTIST-Association/PAINT.git
- Install the package from the main branch:
- Install basic dependencies:
pip install . - If you want to develop paint, install an editable version with developer dependencies:
pip install -e ".[dev]"
- Install basic dependencies:
The PAINT repository is structured as shown below:
.
βββ html # Code for the paint-database.org website
βββ markers # Saved markers for the WRI1030197 power plant in JΓΌlich
βββ paint # Python package/
β βββ data
β βββ preprocessing
β βββ util
βββ plots # Scripts used to generate plots found in our paper
βββ preprocessing-scripts # Scripts used for preprocessing and STAC generation
βββ scripts # Scripts highlighting example usage of the data
βββ test # Tests for the python package/
β βββ data
β βββ preprocessing
β βββ util
βββ tutorials # Interactive notebooks showcasing how to get started with PAINT
In the scripts folder there are multiple scripts highlighting how PAINT can be used. Detailed
descriptions of these scripts are available via our Documentation.
Furthermore, an interactive notebook is available in the tutorials folder - this is the perfect starting point to
dive into PAINT!
If you use the PAINT database in your research, please cite our paper:
Phipps, K., Kuhl, M., Weiel, M. et al. The PAINT database for operational concentrating solar power plant data following FAIR data principles. Nature Energy (2026). https://doi.org/10.1038/s41560-026-02070-1
BibTeX:
@article{Phipps2026PAINT,
author = {Phipps, Kaleb and Kuhl, Mathias and Weiel, Marie and Busch, Marlene and Lewen, Jan and Blumenr{\"o}hr, Nicolas and Maldonado Quinto, Daniel and Debus, Charlotte and G{\"o}hring, Felix and Kaufhold, Oliver and Streit, Achim and Pitz-Paal, Robert and G{\"o}tz, Markus and Pargmann, Max},
title = {The PAINT database for operational concentrating solar power plant data following FAIR data principles},
journal = {Nature Energy},
year = {2026},
doi = {10.1038/s41560-026-02070-1},
url = {https://doi.org/10.1038/s41560-026-02070-1},
issn = {2058-7546}
}Check out our contribution guidelines if you are interested in contributing to the PAINT project π₯.
Please also carefully check our code of conduct π.
This work is supported by the Helmholtz AI platform grant.