Recolour is the REprocess Package for Soil Moisture Products, designed to process and analyze soil moisture datasets to support hydrogeological risk prevention and reduction within the Flood‑PROOFS modelling system.
- Features
- Prerequisites
- Installation
- Directory Structure
- Usage
- Examples
- Contributing
- Authors
- License
- Changelog
- References
- Ingest and process multiple soil moisture data products
- Reprocessing routines for calibration and quality control
- Integration with Python workflows
- Visualization tools via Jupyter notebooks
- Modular design for extension and research use
Before using Recolour, ensure you have:
- Operating System: Linux (Debian/Ubuntu 64-bit recommended)
- Python: Version 3.7 or higher
- QGIS: Version 2.18 or higher (for spatial data management)
- Additional Tools: Jupyter Notebook, Panoply, CDO, Ncview
- Clone the repository:
git clone https://github.com/c-hydro/recolour.git cd recolour
- Set up the Python environment:
bash setup_recolour_system_conda_python_notebook.sh
- Activate the environment:
source activate fp_env_python
After activation, your prompt should display
(fp_env_python)
.
Core Recolour applications organized by processing domain. Each folder contains Python scripts (.py
) for specific workflows along with their configuration files (.json
).
recolour/
├── app_cell
│ ├── compute_cell_metrics
│ │ ├── app_cell_metrics.py
│ │ └── *.json
│ ├── compute_cell_rzsm
│ │ ├── app_cell_rzsm.py
│ │ └── *.json
│ ├── compute_cell_scaling
│ │ ├── app_cell_scaling.py
│ │ └── *.json
│ ├── compute_cell_swi
│ │ ├── app_cell_swi.py
│ │ └── *.json
│ └── convert_swath2cell
│ ├── app_swath2cell_ascat.py
│ └── *.json
└── app_map
├── compute_cell2grid_ascat
│ └── *.json
├── compute_cell2grid_ecmwf
│ └── *.json
├── compute_cell2grid_gldas
│ └── *.json
├── compute_cell2grid_metrics
│ ├── app_map_cell2grid_metrics.py
│ └── *.json
├── compute_cell2grid_smap
│ ├── app_map_cell2grid_smap.py
│ └── *.json
├── create_grid_ecmwf
│ ├── app_map_grid_ecmwf_nrt.py
│ └── *.json
├── create_grid_hmc
│ ├── app_map_grid_hmc_nrt.py
│ └── *.json
├── create_grid_reference
│ ├── app_map_grid_reference.py
│ └── *.json
└── resample_grid_src2ref
├── app_map_grid_src2ref.py
└── *.json
Utility modules and algorithms supporting Recolour workflows. These tools provide functionality for data handling, format conversion, validation, and automated workflows.
tools/
├── algorithm_assimilation
├── algorithm_converter
├── algorithm_downloader
├── algorithm_organizer
├── algorithm_plot_timeseries
├── algorithm_plot_validation
├── algorithm_system
├── algorithm_transfer
├── algorithm_validation_hsaf
├── algorithm_validation_tc
└── algorithm_xml
Recolour applications are executed via their scripts in app_cell
, app_map
, app_points
, or app_ts
folders. Use the following pattern:
python <app_folder>/<workflow_folder>/<script_name>.py <config.json> -time "YYYY-MM-DD HH:MM"
<app_folder>
: one ofapp_cell
,app_map
,app_points
, orapp_ts
<workflow_folder>
: subdirectory under the chosenapp_*
folder<script_name>.py
: the application script to run<config.json>
: the configuration file in the same folder as the script-time
: processing date and time inYYYY-MM-DD HH:MM
format
For example, to compute root-zone soil moisture on June 1, 2025 at 06:00 using the ECMWF DR configuration:
python app_cell/compute_cell_rzsm/app_cell_rzsm_ecmwf_dr_local.json -time "2025-06-01 06:00"
The detailed settings for each application workflow can be found in separate markdown files under the docs/
directory. This keeps the main README concise and allows direct linking.
(Add other application settings files here as needed.)
- Scripts: Check each
app_*
folder for workflow scripts and JSON configs. - Notebooks: Explore the
notebook/
directory for interactive demonstrations.
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch:
git checkout -b my-feature
- Add changes and tests (if applicable)
- Submit a pull request against
main
See AUTHORS.md for a complete list of contributors.
This project is licensed under the EUPL-1.2 License.
All notable changes are documented in CHANGELOG.md.
- CIMA Hydrology and Hydraulics GitHub Repository
- Python programming language
- QGIS project
- Conda environment manager
- Hydrological Model Continuum codes