OSVAS

🚀 OSVAS — Offline Surfex Validation System

OSVAS is a workflow developed within the ACCORD community to automate the full SURFEX offline validation chain:

OSVAS automates the entire cycle: Forcing → Simulation → Extraction → Validation → Visualization


📚 Documentation

All documentation is available inside the docs folder and in https://accord-nwp.github.io/OSVAS/ , organized as follows:

🔧 [**Setup & Configuration: Install requirements conda & R environments **](/OSVAS/installation.html)

🧪 [**OSVAS central control script**](/OSVAS/OSVAS_workflow.html)

🧪 **Detailed description of steps in the OSVAS Workflow:**

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

🧪 [**ICOS data**](/OSVAS/ICOS_data.html)


⚡ Quick Start guide

1️⃣ Clone the repository

git clone https://github.com/ACCORD-NWP/OSVAS.git
cd OSVAS

2️⃣ Download & patch oper-harp-verif scripts, create the conda environment

cd scripts/bash_scripts
./setup_osvas_installation.sh
./create_conda_and_R_envs.sh
conda activate OSVASENV

3️⃣ Choose your entrypoint and set paths

Set 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/operharpverif

4️⃣ Run OSVAS

For local Linux:

python3 scripts/python_scripts/surfex_OSVAS_run_linux.py

For ATOS:

python3 scripts/python_scripts/surfex_OSVAS_run_atos.py

These 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.

Command Line Options

Both launcher scripts support the following command line arguments:

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