Simulation Parameters
This document provides a complete reference for all parameters that can be configured in a SedTRAILS simulation. Parameters are defined in YAML configuration files and control everything from the simulation domain to particle behavior and output settings.
In the current version, not all parameters may be fully implemented. Please refer to the latest release notes for updates on supported features.
Table of Contents
General Settings
Controls basic simulation behavior and model configuration.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Enable preprocessing of input data. Set to |
|
boolean |
Optional |
|
Enable pathway computation. Set to |
|
object |
Optional |
- |
Configuration for the input flow model. See Input Model Configuration. |
|
integer |
Optional |
|
Number of simulation runs to execute. |
|
boolean |
Optional |
|
Display all metadata from input files during loading. |
|
string |
Optional |
|
Numerical integration method. Options: |
Input Model Configuration
Nested under general.input_model:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
|
Input model format. Options: |
|
string |
Optional |
|
Reference date for time series in input data (format: |
|
number |
Optional |
|
Morphological acceleration factor for time decompression. Value of 1 means no acceleration. |
Example:
general:
preprocess: true
compute_pathways: true
numerical_scheme: rk4
input_model:
format: fm_netcdf
reference_date: "2020-01-01 00"
morfac: 1.0
Input Configuration
Specifies paths to input data and reading parameters.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Required |
- |
Path to the flow field data file (e.g., D-Flow FM NetCDF output). |
|
string |
Optional |
|
Time chunk size for reading input data. Format: |
|
string |
Optional |
- |
Path to directory containing complementary validation data. |
Example:
inputs:
data: /path/to/flow_model_output.nc
read_interval: "15D"
comp_dir: /path/to/validation_data/
Domain Definition
Defines the spatial extent of the simulation area. You must specify one of the following methods to define the domain.
⚠️ Mutually Exclusive Options: Choose only ONE method from the following:
Method 1:
pol_file- Use a polygon fileMethod 2:
subset_xandsubset_y- Use coordinate rangesMethod 3:
subset_mandsubset_n- Use grid indices (Delft3D-4 only)
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Conditional* |
- |
Path to Deltares |
|
string |
Conditional* |
- |
X-coordinate range as |
|
string |
Conditional* |
- |
Y-coordinate range as |
|
integer |
Conditional* |
|
M-direction limits for Delft3D-4 models ( |
|
integer |
Conditional* |
|
N-direction limits for Delft3D-4 models ( |
|
string |
Optional |
- |
Time range as |
|
object |
Optional |
- |
Flow field format-specific settings. See Flow Field Data Configuration. |
*Conditional: One method must be specified.
Flow Field Data Configuration
Nested under domain.flow_field_data. Choose ONE format:
⚠️ Mutually Exclusive: Specify either fm OR delft3d4, not both.
D-Flow FM Settings (fm)
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Conditional |
|
Format of D-Flow FM output files. Options: |
Delft3D-4 Settings (delft3d4)
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Is the model nested (fine grid within coarse grid)? |
|
string |
Optional |
- |
Path to |
|
boolean |
Optional |
|
Use depth-averaged flow velocities. |
|
string |
Optional |
|
Which vertical layer to use. Options: |
Example:
domain:
subset_x: "35000:52000"
subset_y: "12000:150000"
flow_field_data:
fm: sedtrails_nc
Time Configuration
Controls simulation timing and time-stepping.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
- |
Start time for simulation (format: |
|
string |
Optional |
|
Total simulation duration (format: |
|
string |
Required |
|
Base time step for particle tracking (format: |
|
number |
Optional |
|
CFL condition for adaptive time-stepping (0-1). Set to |
Duration Format Examples:
30S- 30 seconds5M- 5 minutes2H- 2 hours1D- 1 day1D12H30M- 1 day, 12 hours, 30 minutes
Example:
time:
start: "2020-01-01 00:00:00"
duration: "30D"
timestep: "30S"
cfl_condition: 0.7
Physics Parameters
Defines physical constants and sediment transport parameters.
Physical Constants
Nested under physics.constants:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Optional |
|
Representative grain diameter [m]. Default is 0.25 mm (fine sand). |
|
number |
Optional |
|
Morphological acceleration factor. Value of 1 means no acceleration. |
|
number |
Optional |
|
Sediment bed porosity (0-1). Default is 40%. |
|
number |
Optional |
|
Gravitational acceleration [m/s²]. |
|
number |
Optional |
|
Von Kármán’s constant for turbulent flow. |
|
number |
Optional |
|
Kinematic viscosity of water [m²/s]. Default valid for 10°C and 35 ppt salinity. |
|
number |
Optional |
|
Water density [kg/m³]. Default valid for 10°C and 35 ppt salinity. |
|
number |
Optional |
|
Sediment particle density [kg/m³]. Default is quartz density. |
|
number |
Optional |
|
Friction angle of sediment [degrees]. |
|
number |
Optional |
|
Random walk diffusion coefficient for turbulent dispersion. |
Bed Shear Stress
Nested under physics.bed_shear_stress:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
- |
Path to file containing additional bed shear stress time series (spatially constant, time-varying). |
Bed Slope Effects
Nested under physics.bed_slope:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Calculate local bed slope in x and y directions. |
|
number |
Optional |
|
Resolution [m] for bed slope calculation grid. |
|
boolean |
Optional |
|
Create diagnostic plot for bed slopes. |
|
number |
Optional |
|
Color axis scaling factor for bed slope plots (1/factor). |
|
number |
Optional |
|
Longitudinal bed slope transport effect tuning factor. |
|
number |
Optional |
|
Transverse bed slope transport effect tuning factor. |
Example:
physics:
constants:
grain_diameter: 2.5e-4
rho_s: 2650.0
porosity: 0.4
bed_slope:
calculate: true
resolution: 50.0
bedslope_alpha_bs: 1.0
bedslope_alpha_bn: 1.5
Particle Populations
Defines one or more groups of particles with different characteristics. At least one population is required.
The particles section contains an array of populations, where each population has the following structure:
Population Definition
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Required |
|
Unique name for this population (e.g., |
|
string |
Required |
|
Type of particle. Options: |
|
object |
Required |
- |
Type-specific particle properties. See Particle Characteristics. |
|
object |
Required |
- |
Transport calculation method(s). See Tracer Methods. |
|
string |
Optional |
|
How to apply transport probability. Options: |
|
object |
Required |
- |
Particle release configuration. See Particle Seeding. |
|
object |
Optional |
- |
Thin dams or permeable structures. See Barriers. |
Particle Characteristics
The characteristics object varies by particle_type:
Passive Particles
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Random walk diffusion coefficient. |
Sand Particles
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Particle density [kg/m³]. |
|
number |
Required |
|
Grain diameter [m]. Default is 0.5 mm. |
Mud Particles
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Particle density [kg/m³]. |
|
number |
Required |
|
Grain diameter [m]. Default is 0.05 mm (50 μm). |
Bio Particles
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Buoyancy factor relative to water (0-1). |
Gravel Particles
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Particle density [kg/m³]. |
|
number |
Required |
|
Grain diameter [m]. Default is 10 mm. |
Tracer Methods
At least one tracer method must be specified. Multiple methods can be used simultaneously.
Van Westen Method
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
array |
Optional |
- |
List of flow field names to use (e.g., |
|
number |
Optional |
|
Beta parameter for Van Westen formulation. |
Soulsby Method
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Optional |
|
f parameter for Soulsby formulation. |
|
number |
Optional |
|
r parameter for Soulsby formulation. |
Particle Seeding
Controls where, when, and how particles are released.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Required |
|
Number of particles to release per release location. |
|
string |
Optional |
|
Seeding class. Options: |
|
boolean |
Optional |
|
Release particles every time step (continuous release). |
|
string |
Optional |
|
Release timing. Options: |
|
number |
Optional |
|
Maximum particle lifetime [seconds]. Use very large value for unlimited. |
|
string |
Optional |
- |
Release start time (format: |
|
string |
Optional |
- |
Release stop time for continuous release. Defaults to immediate stop after first release. |
|
object |
Optional |
- |
Initial burial depth configuration. See Burial Depth. |
|
object |
Required |
- |
Spatial release strategy. See Release Strategies. |
Burial Depth
⚠️ Mutually Exclusive: Choose either random OR constant.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
number |
Conditional |
|
Maximum depth [m] for random burial depth from bed surface. |
|
number |
Conditional |
|
Fixed burial depth [m] below bed surface. |
Release Strategies
Choose ONE strategy. Each strategy has different required parameters.
Point Release
Releases particles at specific point locations.
⚠️ Mutually Exclusive: Specify either pol_file OR locations.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Conditional |
- |
Path to |
|
array |
Conditional |
- |
List of coordinate pairs (e.g., |
|
boolean |
Optional |
|
Display diagnostic plots of release locations. |
|
boolean |
Optional |
|
Save diagnostic plots to files. |
Transect Release
Releases particles along line segments (transects).
⚠️ Mutually Exclusive: Specify either pol_file OR segments.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Conditional |
- |
Path to |
|
array |
Conditional |
- |
List of line segments (e.g., |
|
number |
Optional |
|
Number of release points to create along each segment. |
|
boolean |
Optional |
|
Display diagnostic plots. |
|
boolean |
Optional |
|
Save diagnostic plots. |
Random Release
Releases particles at random locations within a bounding area.
⚠️ Mutually Exclusive: Specify either pol_file OR bbox.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Conditional |
- |
Path to |
|
string |
Conditional |
- |
Bounding box as |
|
integer |
Required |
|
Number of random points to generate. |
|
number |
Optional |
|
Random number generator seed for reproducibility. |
|
boolean |
Optional |
|
Display diagnostic plots. |
|
boolean |
Optional |
|
Save diagnostic plots. |
Grid Release
Releases particles on a regular grid.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
- |
Path to |
|
number |
Required |
|
Grid spacing in x-direction [m]. |
|
number |
Required |
|
Grid spacing in y-direction [m]. |
|
number |
Optional |
|
Random jitter as fraction of grid spacing (0-1). |
|
boolean |
Optional |
|
Display diagnostic plots. |
|
boolean |
Optional |
|
Save diagnostic plots. |
Barriers
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
- |
Path to |
Population Example
particles:
populations:
- name: fine-sand
particle_type: sand
characteristics:
density: 2650.0
grain_size: 0.00025 # 0.25 mm
tracer_methods:
vanwesten:
flow_field_name: ["bedload_velocity"]
beta: 0.2
transport_probability: reduced_velocity
seeding:
quantity: 100
release_type: instantaneous
burial_depth:
constant: 0.0
strategy:
point:
locations:
- "50000,25000"
- "51000,26000"
- name: coarse-sand
particle_type: sand
characteristics:
density: 2650.0
grain_size: 0.0005 # 0.5 mm
tracer_methods:
soulsby:
f: 0.1
r: 0.8
seeding:
quantity: 50
strategy:
grid:
pol_file: ./domain_boundary.pol
separation:
dx: 500
dy: 500
Pathway Analysis
Optional settings for analyzing particle pathways relative to specific areas.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Query pathways to/from a given polygon. |
|
string |
Conditional* |
- |
Name of polygon to query (required if |
|
boolean |
Optional |
|
Enable pathway analysis. |
*Required if polygon_query is true.
Example:
pathways:
polygon_query: true
polygon_name: inlet_channel
analyze: true
Output Settings
Controls what results are saved and where.
⚠️ Mutually Exclusive: Choose either store_tracks OR store_end_positions.
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
|
Path to directory for storing simulation results. |
|
string |
Optional |
|
How often to save output during simulation (format: |
|
boolean |
Conditional |
|
Store complete particle trajectories over time. Creates larger files but enables full pathway analysis. |
|
boolean |
Conditional |
|
Store only final particle positions. Creates smaller files but limits analysis options. |
Example:
outputs:
directory: ./results/simulation_001
save_interval: "30M"
store_tracks: true
Visualization
Controls plotting, animation, and real-time visualization during and after simulations.
Dashboard Settings
Real-time simulation monitoring.
Nested under visualization.dashboard:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Enable real-time dashboard during simulation. |
|
string |
Optional |
|
How often to update dashboard in simulation time (format: |
General Plotting Settings
Not implemented yet.
Nested under visualization.plotting.general_settings:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
boolean |
Optional |
|
Create animated visualizations of particle movement. |
|
boolean |
Optional |
|
Color particles by age in overview plots. |
|
boolean |
Optional |
|
Color particles by distance from origin. |
|
number |
Optional |
|
Rotation angle [degrees] for origin-based coloring. |
|
boolean |
Optional |
|
Apply static masking to particles. |
|
boolean |
Optional |
|
Plot only a random fraction of particles. |
|
number |
Optional |
|
Fraction of particles to plot when using random mask (0-1). |
|
boolean |
Optional |
|
Mask particles based on elevation. |
|
number |
Optional |
|
Elevation threshold [m] below which to plot particles (avoids plotting on land). |
|
number |
Optional |
|
Size of particle markers in plots. |
|
number |
Optional |
|
Scaling factor when saving figures. |
|
string |
Optional |
|
Figure dimensions [cm] as |
|
number |
Optional |
|
Grid spacing [m] for bed interpolation in plots. |
|
number |
Optional |
|
Mean low water level [m] for reference lines. |
|
number |
Optional |
|
Mean high water level [m] for reference lines. |
|
array |
Optional |
|
Depth contours [m] to plot (positive up). |
|
string |
Optional |
- |
Path to |
|
string |
Optional |
- |
X-axis limits as |
|
string |
Optional |
- |
Y-axis limits as |
|
boolean |
Optional |
|
Plot particle pathways (trajectories). |
|
number |
Optional |
|
Point index for monitoring time series (e.g., tidal signal). |
|
string |
Optional |
|
Velocity component to monitor. Options: |
|
string |
Optional |
|
Signal type to monitor. Options: |
|
string |
Optional |
- |
Y-axis limits for time series plots as |
Validation Plotting
Not implemented yet.
Nested under visualization.plotting.validation:
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Optional |
- |
Path to tracer validation data file. If omitted, no tracer validation plotted. |
|
string |
Optional |
- |
Path to drifter validation data file. If omitted, no drifter validation plotted. |
|
boolean |
Optional |
|
Create comparison plots between simulated and observed drifter tracks. |
Example:
visualization:
dashboard:
enable: true
update_interval: "30M"
plotting:
general_settings:
animation: false
overview_age: true
elevation_mask: true
elevation_threshold: 2.0
depth_contours: [5, 10, 15, 20]
land_pol_file: ./coastline.pol
pathways: true
validation:
drifter_validation_data_path: ./validation/drifters.csv
drifter_track_comparison: true
Complete Example Configuration
Here’s a complete example showing how all sections work together:
general:
preprocess: true
compute_pathways: true
numerical_scheme: rk4
input_model:
format: fm_netcdf
reference_date: "2020-06-01 00"
morfac: 1.0
inputs:
data: /data/flow_model/output.nc
read_interval: "15D"
domain:
subset_x: "35000:65000"
subset_y: "12000:45000"
flow_field_data:
fm: sedtrails_nc
time:
start: "2020-06-01 00:00:00"
duration: "30D"
timestep: "30S"
cfl_condition: 0.7
physics:
constants:
grain_diameter: 2.5e-4
rho_s: 2650.0
porosity: 0.4
diffusion_coefficient: 0.1
bed_slope:
calculate: true
resolution: 100.0
particles:
populations:
- name: fine-sand
particle_type: sand
characteristics:
density: 2650.0
grain_size: 0.00025
tracer_methods:
vanwesten:
flow_field_name: ["bedload_velocity"]
beta: 0.2
transport_probability: reduced_velocity
seeding:
quantity: 500
release_type: instantaneous
burial_depth:
constant: 0.0
strategy:
grid:
pol_file: ./release_area.pol
separation:
dx: 200
dy: 200
jitter_pct: 0.1
outputs:
directory: ./results/june_2020
save_interval: "1H"
store_tracks: true
visualization:
dashboard:
enable: true
update_interval: "1H"
plotting:
general_settings:
overview_age: true
elevation_mask: true
elevation_threshold: 2.0
depth_contours: [5, 10, 15, 20]
pathways: true
Tips and Best Practices
Time Step Selection
Start with
30S(30 seconds) for most coastal applicationsUse smaller time steps (
10S-15S) for:Fine-resolution grids (< 50 m)
Strong tidal currents (> 1 m/s)
Complex geometries
Enable
cfl_condition: 0.7for automatic adaptive time-stepping
Domain Definition
Use
pol_filefor complex, irregular domainsUse
subset_xandsubset_yfor simple rectangular domainsAlways visualize your domain boundary before running long simulations
Output Management
Adjust
save_intervalbased on simulation duration:Short runs (< 7 days):
30Mor1HLong runs (> 30 days):
6Hor1D
Performance Optimization
Set
read_intervalto balance memory usage and I/O:Large domains:
7Dto15DSmall domains:
30Dto60D
Increase
timestepif simulations are too slow (but check CFL condition)
Validation
Enable
elevation_maskto avoid unrealistic particle behavior on land
Schema Validation
SedTRAILS automatically validates your configuration file against the schemas before running. If you see validation errors:
Check that all required parameters are present
Verify that mutually exclusive options aren’t both specified
Ensure data types match (string vs. number vs. boolean)
Check that enum values match exactly (case-sensitive)
Refer to the Simulation Guide for an example of a YAML file with correct syntax and structure.