# Command Line Interface

If you don't need the extra features of using Wflow as a library, but just want to run simulations, the command line interface makes it easier to do so. It consists of a single executable, wflow_cli that accepts a single argument, the path to a TOML configuration file.

Binaries of wflow_cli can be downloaded from our website download.deltares.nl, and are currently available for Windows and Linux.

After installing you can see three folders in the installation directory. It is only the bin/wflow_cli that is directly used. All three folders need to stay together however. The share folder contains TOML files with more information about the build.

bin\wflow_cli
lib
share

Simply running wflow_cli with no arguments will give the following message:

Usage: wflow_cli 'path/to/config.toml'

When starting a run, you will see basic run information on the screen, as well as a progress bar, that gives an estimate of how much time is needed to finish the simulaion:

┌ Info: Run information
│   model_type = "sbm"
│   starttime = CFTime.DateTimeStandard(2000-01-01T00:00:00)
│   Δt = 86400 seconds
│   endtime = CFTime.DateTimeStandard(2000-12-31T00:00:00)
└   nthreads() = 4

Progress: 100%|██████████████████████████████████████████████████| Time: 0:00:27

To try out a simple test model, you can download sbm_moselle_config_data.zip, which includes both a TOML configuration file as well as the NetCDF input data, for a one year simulation of the Moselle catchment.

As explained in the quick start section on multi-threading, we need to start julia with multiple threads to make use of this speedup. For wflow_cli, the only way to do this is by setting the JULIA_NUM_THREADS environment variable, as explained in these julia docs.

When a model run starts, among the run information the number of threads that are used is printed, so nthreads() = 4 means 4 threads are used, because JULIA_NUM_THREADS has been set to 4.