Module 1. Observational Climate Pipeline for Ethiopia and VECTRI Baseline Setup¶
Purpose¶
Build a clean observational baseline using gridded rainfall and temperature datasets, preprocess them consistently, define the Ethiopia target grid, and prepare climate inputs for VECTRI.
Recommended data sources¶
| Variable | Source | Notes |
|---|---|---|
| Rainfall | CHIRPS daily rainfall | Native high-resolution grid; use as the reference for spatial alignment downstream. |
| Temperature | ERA5-Land daily statistics or CHIRTS-daily | Choose one coherent observational temperature product for the baseline; document the choice for reproducibility. |
Sessions¶
1.0 Environment setup and project folder structure¶
Full step-by-step guide: Environment setup and folder structure.
- Install VS Code and the Python / Jupyter extensions.
- Create and activate the Python virtual environment (
.venv). - Install all core packages:
numpy,pandas,matplotlib,cftime,cf_xarray,openpyxl,shapely,scipy,requests,cartopy,geopandas,rioxarray,rasterio,regionmask,salem,netCDF4. - Create the canonical folder structure for data, processed outputs, ancillary files, QC reports, and logs.
data/
raw/chirps/ ← raw yearly CHIRPS NetCDF downloads
processed/chirps/ ← QC-passed, clipped, merged files
ancillary/grid_mask/ ← Ethiopia land mask and target-grid definition
reports/
qc_chirps/ ← diagnostic plots and QC reports
logs/ ← download and processing logs
1.1 Observational data access and downloading¶
- Download CHIRPS rainfall for Ethiopia — step-by-step lesson: Download CHIRPS rainfall for Ethiopia.
- Download observational temperature from ERA5-Land or CHIRTS-daily.
- Organize file structure for historical and operational use.
1.2 Daily ingestion, preprocessing, and quality control¶
-
Detailed guide: CHIRPS ingestion, preprocessing, and QC.
-
Standardize file naming and metadata.
- Check missing files, duplicate days, invalid values, and time continuity.
- Harmonize units and calendars.
Produce diagnostic plots:
- Daily time-series checks
- Annual cycle plots
- Rainfall distribution plots
- Missing-data summaries
- Domain maps for quick inspection
1.3 Ethiopia target domain and target grid definition¶
-
Detailed guide: Ethiopia target grid and land mask.
-
Define the Ethiopia analysis domain.
- Define the CHIRPS target grid for all downstream processing.
- Build an Ethiopia land mask on the CHIRPS grid.
- Apply the same target grid and mask consistently across all datasets.
1.4 Historical split design¶
- Period splits in practice: Observational standardization and VECTRI prep.
| Period | Years | Role |
|---|---|---|
| Calibration | 1993–2016 | Model fitting / calibration |
| Validation | 2017–2025 | Independent verification |
| Operational | 2026 | Live or near-real-time outlooks |
Explain why these periods are used and how they map to model fitting, verification, and live operations.
1.5 Preparing climate inputs for VECTRI¶
-
Structure, masking, and versioning: Observational standardization and VECTRI prep and Documentation and reproducibility.
-
Convert rainfall and temperature into VECTRI-ready format.
- Align spatial grid, time step, units, and file structure.
- Run VECTRI using the preprocessed observational inputs.
- Check VECTRI output consistency before moving to forecast-driven runs.
Expected outputs¶
- Clean Ethiopia rainfall and temperature baseline dataset
- Ethiopia CHIRPS target grid and land mask
- QC and diagnostic plots
- Historical split ready for calibration, validation, and operations
- Baseline VECTRI simulation driven by observed climate