Skip to content


Repository files navigation

EasyVVUQ analysis scripts for the DALES model

This repository contains scripts and settings for using EasyVVUQ for uncertainty quantification of the atmospheric model DALES. The case setup is from the RICO study by van Zanten et al (see below).


  • matplotlib
  • numpy
  • EasyVVUQ from the dev branch or the M24 release (August 2020)
  • FabSim3 (optional)
  • DALES, we used branch "to4.3", the pre-release of version 4.3


Running locally

A DALES UQ experiment is done in three stages:

python <other options> --prepare
# creates run directories for the model, one for each sample point in parameter space.

python <other options> --run
# runs the DALES model for each directory created above

python <other options> --analyze
# collects the results and preforms a UQ analysis,
# output is given with tables and plots.

The are used to define the experiment:

  • --workdir base directory for EasyVVUQ to use for the model run directories. It creates a subdirectory here for each experiment.
  • --template a template for the model parameter file, use one of the included files namoptions*.template.
  • --campaign a json file name where EasyVVUQ stores the state of the campaign between the different steps.
  • --experiment one of [physics_z0, poisson, test, choices, subgrid], used to select a set of parameters to vary (defined in the script). Should match the template.
  • --model path of the DALES executable

Adding the option --parallel to the --run step, will use GNU parallel to run N model evaluations in parallel on the local machine.

Running with FabSim3

See this tutorial for setting up FabSim3. Use the same options as for a local run, with the addition of --fab, and an additional --fetch step before --analyze.

python <other options> --fab --prepare

python <other options> --fab --run
# submits the jobs with FabSim on some remote machine

python <other options> --fab --fetch
# fetches results with FabSim from the remote machine,
# run this after the jobs have completed.

python <other options> --fab --analyze

Access details of the remote computer system, settings for the DALES installation there, and run-time settings for the maximal wallclock time and number of MPI tasks for a job need to be added to the FabSim configuration files, e.g. deploy/machines_user.yml.

Example Runs

The following is three runs with matching templates and experiment definitions, for use with the FabSim3 job system. For a full analysis, each requires a sequence of four invocations, with the last command line option being --prepare, --run, --fetch, and --analyze.

# Physcal parameters, 256 samples 
python --workdir=~/work --fab --template=namoptions-z0.template --campaign=physics_z0.json --experiment=physics_z0 --prepare

# Model choices, 72 samples
python --workdir=~/work --fab --template=namoptions-choices.template --campaign=choices.json --experiment=choices --prepare

# Iterative Poisson-solver tolerance, 35 samples
python --workdir=~/work --fab --template=namoptions-poisson.template --campaign=poissondigits.json --experiment=poisson --prepare


The scripts in this repository are made available under the terms of the GNU GPL version 3, see the file COPYING for details. EasyVVUQ, Fabsim3 and DALES have their own (open source) licenses.


Formulation of the Dutch Atmospheric Large-Eddy Simulation (DALES) and overview of its applications, T. Heus et al, Geosci. Model Dev., 3, 415-444, 2010

Controls on precipitation and cloudiness in simulations of trade-wind cumulus as observed during RICO, van Zanten et al, Journal of Advances in Modeling Earth Systems 3. (2011)


EasyVVUQ uncertainty quantification of DALES







No releases published


No packages published