OSVAS is a workflow developed within the ACCORD community to automate the full SURFEX offline validation chain:
- Generate SURFEX forcing data from ICOS atmospheric datasets
- Download & process ICOS flux data for validation
- Run SURFEX OFFLINE simulations (PGD, PREP, OFFLINE)
- Convert SURFEX outputs to SQLite FCTABLES (via
nc2sqlite) - Validate model outputs using HARP
- Visualize results with interactive Shiny apps
OSVAS automates the entire cycle: Forcing → Simulation → Extraction → Validation → Visualization
All documentation is available inside the docs/ folder and in https://accord-nwp.github.io/OSVAS/ , organized as follows:
Step 0: Paths & Global Configuration
Step 1: Forcing Data Generation
Step 2: Validation Data Download
Step 2b: Albedo_estimation from site data
Step 2c: LAI estimation from satellite data
Step 3: SURFEX Simulation Runs
Step 4: Extraction of Model Outputs (nc2sqlite)
Step 5: HARP Verification
Step 6: Visualization Apps
git clone https://github.com/ACCORD-NWP/OSVAS.git
cd OSVAScd scripts/bash_scripts
./setup_osvas_installation.sh
./create_conda_and_R_envs.sh
conda activate OSVASENVSet the station name and paths in your shell (or override via command line arguments):
export STATION_NAME=Majadas_del_tietar
export OSVAS=$HOME/OSVASgh
export HARPSCRIPTS=$HOME/operharpverifFor local Linux:
python3 scripts/python_scripts/surfex_OSVAS_run_linux.pyFor ATOS:
python3 scripts/python_scripts/surfex_OSVAS_run_atos.pyThese Python launcher scripts read the station YAML under config_files/Stations/${STATION_NAME}/${STATION_NAME}.yml, execute the selected workflow steps, and apply station-specific initialization and forcing configuration.
Both launcher scripts support the following command line arguments:
--stations STATION1 STATION2 ...: List of station names to process serially (overridesSTATION_NAMEenvironment variable)--condaenv CONDAENV: Conda environment name (overridesCONDAENVenvironment variable)--osvas OSVAS_PATH: OSVAS root directory (overridesOSVASenvironment variable)--harpscripts HARPSCRIPTS_PATH: HARP scripts directory (overridesHARPSCRIPTSenvironment variable)
Example usage:
# Run multiple stations serially
python3 scripts/python_scripts/surfex_OSVAS_run_linux.py --stations Majadas_del_tietar Meteopole Loobos
# Override environment variables
python3 scripts/python_scripts/surfex_OSVAS_run_linux.py --osvas /path/to/osvas --harpscripts /path/to/harp