Introduction
This page explains the workflow for deriving default settings for a new version of XBeach. Default settings are important for users with limited experience with XBeach. For these users the number of exposed settings should be limited, preferably to case related input, like waterlevels, bathymetry and wave conditions, only. The occasion of setting up this workflow is the preparation of XBeach as assessment model for the Dutch coast. In line with the current WTI project leading this preparation, this workflow is limited to application for the Dutch coast and 1D. Different default settings for different applications may be derived by using this workflow.
Overview
The workflow consists of the following steps:
- Create long list of XBeach settings
- Conduct marginal sensitivity analysis on erosion volume above SSL on long list
- Submit long list including sensitivity results to expert panel
- Create short list of XBeach settings based on feedback expert panel
- Compute variation matrix of relevant ranges for settings on short list on relevant cases
- Pick the combination of settings with smallest RMS error with respect to erosion volume above SSL
Long list
The long list is constructed based on parsing the params.F90 file for settings and removing any parameters that are either case-dependent input (e.g. Hm0) or irrelevant (ships, groundwater flow, etc.). The following parameters are excluded from the long list:
D50 # D50 grain size per grain type D90 # D90 grain size per grain type Hrms # Hrms wave height for instat = 0,1,2,3 Tlong # Wave group period for case instat = 1 Tm01switch # Turn off or on Tm01 or Tm-10 switch Topt # Absolute period to optimize coefficient Trep # Representative wave period for instat = 0,1,2,3 alfa # Angle of x-axis from East aquiferbot # Level of uniform aquifer bottom aquiferbotfile # Name of the aquifer bottom file avalanching # Include avalanching (1) or exclude (0) back # Switch for boundary at bay side, 0 = radiating boundary (Ad), 1 = reflective boundary; uu=0 bcfile # Name of spectrum file bchwiz # Use beachwizard, 0 = beachwizard off, 1 beachwizard on, bed update off, 2 beachwiz on, bed update on. (also requires morphology == 1) bedfricfile # Bed friction file (only valid with values of C) bedfriction # Bed friction formulation: 'chezy','white-colebrook' compi # Imaginary unit depfile # Name of the input bathymetry file dir0 # Mean wave direction (Nautical convention) for instat = 0,1,2,3 disch_loc_file # Name of discharge locations file disch_timeseries_file # Name of discharge timeseries file drifterfile # Name of drifter data file dt # Computational time step, in hydrodynamic time dthetaS_XB # The (counter-clockwise) angle in the degrees needed to rotate from the x-axis in SWAN to the x-axis pointing East dx # Regular grid spacing in x-direction dy # Regular grid spacing in y-direction dzg1 # Thickness of top sediment class layers dzg2 # Nominal thickness of variable sediment class layer dzg3 # Thickness of bottom sediment class layers flow # Include flow calculation (1), or exclude (0) freewave # Switch for free wave propagation 0 = use cg (default); 1 = use sqrt(gh) in instat = 3 front # Switch for seaward flow boundary: 0 = radiating boundary(Ad), 1 = Van Dongeren, 1997 g # Gravitational acceleration globalvars # Mnems of global output variables, not per se the same sice as nglobalvar (invalid variables, defaults) gridform # Swicth to read in grid bathy files with 'XBeach' or 'Delft3D' format respectively gw0 # Level initial groundwater level gw0file # Name of initial groundwater level file gwReturb # Reynolds number for start of turbulent flow in case of gwscheme = turbulent gwfastsolve # Reduce full 2D non-hydrostatic solution to quasi-explicit in longshore direction gwflow # Turn on (1) or off (0) groundwater flow module gwheadmodel # Model to use for vertical groundwater head: 'parabolic' (default), or 'exponential' gwhorinfil # switch to include horizontal infiltration from surface water to groundwater (default = 0) gwnonh # Switch to turn on or off non-hydrostatic pressure for groundwater gwscheme # Scheme for momentum equation (laminar, turbulent) hotstartflow # Switch to hotstart flow conditions with pressure gradient balanced by wind and bed stress instat # Wave boundary condtion type kmax # Number of sigma layers in Quasi-3D model; kmax = 1 (default) is without vertical structure of flow and suspensions kx # Darcy-flow permeability coefficient in x-direction [m/s] ky # Darcy-flow permeability coefficient in y-direction [m/s] kz # Darcy-flow permeability coefficient in z-direction [m/s] lat # Latitude at model location for computing Coriolis left # Switch for lateral boundary at ny+1, 'neumann' = vv computed from NSWE, 'wall' = reflective wall; vv=0 leftwave # old name for lateralwave lwave # Include short wave forcing on NLSW equations and boundary conditions (1), or exclude (0) maxiter # Maximum number of iterations in wave stationary meanvars # Mnems of mean output variables (by variables) mmpi # Number of domains in m direction (cross-shore) when manually specifying mpi domains morfac # Morphological acceleration factor morfacopt # Option indicating whether times should be adjusted (1) or not(0) for morfac morphology # Include morphology (1) or exclude (0) morstart # Start time morphology, in morphological time morstop # Stop time morphology, in morphological time mpiboundary # Fix mpi boundaries along y-lines ('y'), x-lines ('x'), use manual defined domains ('man') or find shortest boundary ('auto') ncfilename # xbeach netcdf output file name ncross # Number of output cross sections nd # Number of computational layers in the bed nd_var # Index of layer with variable thickness ndischarge # Number of discharge locations ndrifter # Number of drifers ne_layer # Name of file containing depth of hard structure ngd # Number of sediment classes nglobalvar # Number of global output variables (as specified by user) nhbreaker # Turn on or off nonhydrostatic breaker model nmeanvar # Number of mean,min,max,var output variables nmpi # Number of domains in n direction (alongshore) when manually specifying mpi domains nonh # Non-hydrostatic pressure option: 0 = NSWE, 1 = NSW + non-hydrostatic pressure compensation Stelling & Zijlema, 2003 nonhspectrum # Switch between spectrum format for wave action balance of nonhydrostatic waves npoints # Number of output point locations npointvar # Number of point output variables nrugauge # Number of output runup gauge locations nship # Number of ships nspectrumloc # Number of input spectrum locations nspr # nspr = 1 long wave direction forced into centres of short wave bins, nspr = 0 regular long wave spreadin ntdischarge # Length of discharge time series nveg # Number of vegetation species nx # Number of computiation cell corners in x-direction ny # Number of computiation cell corners in y-direction oldhu # Turn on / off old hu calculation oldnyq # Turn off or on old nyquist switch outputformat # Choice of output file format: 'netcdf', 'fortran', or 'debug' paulrevere # Specifies tide on sea and land ('land') or two sea points ('sea') if tideloc = 2 pointtypes # Point types (0 = point, 1=rugauge) pointvars # Mnems of point output variables (by variables) posdwn # Bathymetry is specified positive down (1) or positive up (-1) projection # projection string px # Pi q3d # Turn on (1) or off (0) quasi-3D sediment transport module random # Random seed on (1) or off (0) for instat = 4,5,6 boundary conditions rho # Density of water rhoa # Air density rhog8 # 1/8*rho*g rhos # Solid sediment density (no pores) right # Switch for lateral boundary at right, 0 = vv computed from NSWE, 1 = reflective wall; vv=0 rightwave # old name for lateralwave rotate # Rotate (1) postprocess output with the rotate function. rt # Duration of wave spectrum at offshore boundary, in morphological time sedtrans # Include sediment transport (1) or exclude (0) shipfile # Name of ship data file ships # Turn on (1) or off (0) ship waves solver # Solver used to solve the linear system, sip, or tridiag (only for 1d) solver_maxit # Maximum number of iterations in the linear sip solver struct # Switch for hard structures swave # Include short waves (1), exclude short waves (0) swrunup # Turn on (1) or off (0) short wave runup t # Computational time, in hydrodynamic time taper # Spin-up time of wave boundary conditions, in morphological time thetamax # Higher directional limit (angle w.r.t computational x-axis) thetamin # Lower directional limit (angle w.r.t computational x-axis) thetanaut # Thetamin,thetamax in cartesian (0) or nautical convention (1) thetanum # Coefficient determining whether upwind (1) or central scheme (0.5) is used. tideloc # Number of corner points on which a tide time series is specified tidetype # Switch for offfshore boundary, velocity boundary or instant water level boundary (default) timings # Switch to turn on (1) or off (0) progress output to screen tintc # Interval time of cross section output tintg # Interval time of global output tintm # Interval time of mean,var,max,min output tintp # Interval time of point and runup gauge output tnext # Next time point for output or wave stationary calculation, in hydrodynamic time tscross # Name of file containing timings of cross section output tsglobal # Name of file containing timings of global output tsmean # Name of file containing timings of mean, max, min and var output tspoints # Name of file containing timings of point output tstart # Start time of output, in morphological time tstop # Stop time of simulation, in morphological time tunits # Units can be defined in udunits format (seconds since 1970-01-01 00:00:00.00 +1:00) vardx # Switch for variable grid spacing: 1 = irregular spacing, 0 = regular grid spacing vegetation # Turn on (1) or off (0) interaction of waves and flow with vegetation vegiefile # Name of vegie species list file vegiemapfile # Name of vegie species map file wbcversion # Version of wave boundary conditions wearth # Angular velocity of earth calculated as: 1/rotation_time (in hours), later changed in calculation code to rad/s windfile # Name of file with non-stationary wind data windth # Nautical wind direction, in case of stationary wind windv # Wind velocity, in case of stationary wind xfile # Name of the file containing x-coordinates of the calculation grid xori # X-coordinate of origin of axis xyfile # Name of the file containing (Delft3D) xy-coordinates of the calculation grid yfile # Name of the file containing y-coordinates of the calculation grid yori # Y-coordinate of origin of axis zs0 # Inital water level zs0file # Name of tide boundary condition series zsinitfile # Name of inital condition file zs
Marginal sensitivity analysis
The marginal sensitivity analysis is performed using a default dune profile and representative settings for the Dutch coast (normative conditions). Using this model, a single parameter is varied over the applicable range of values. The default values are always included. The sensitivity is subsequently determined by looking at the variation in erosion volume depending on that parameter setting.
Preliminary results are as follows. The first plot shows for each varied parameter the variation in erosion volume above SSL. The black dot indicates the default value. The red line indicates a linear fit excluding any outliers. The second plot shows the minimum and maximum erosion volumes found when varying a parameter over it's valid range of values. The plot is ordered based on the difference between the minimum and maximum value found. Some parameters show no influence at all. This might be due to the fact that a parameter is only applicable to a part of XBeach that is not enabled by default.
Expert panel
- Dano Roelvink
- Ad Reniers
- Jaap van Thiel de Vries
- Robert McCall
- Ap van Dongeren
Short list
Variation matrix
Resolution vs. dimensions
We can choose either to vary a large number of parameters (dimensions) using a limited resolution or vary a small number of parameters using a high resolution.
Cases
- Deltaflume ?
- Deltaflume 2006
- Boers ?
- 1953 storm surge
Result
Discussion
Several topics within this workflow are still being discussed. These discussions are briefly mentioned below.
Performance indicators
XBeach allows a variety of performance indicators to be used to compare the performance of one set of settings against another. For example, a profile comparison with measured data may be used by computing a BSS score. The BSS score itself, however, is subject to discussion for this purpose. Moreover, comparison data is often obtained from flume experiments on scale. These experiments use scaling rules that are derived by comparing erosion profiles rather than profile shape. The profile shape for these tests can thus not be used. For now, we use the erosion volume above SSL as performance indicator. Another advantage of this indicator is that it relates well to other calibration studies for dune assessment models in the Netherlands.
Scaling
Comparison with data is often done using data obtained from flume experiments. These experiments are performed on scale. XBeach allows us to simulate the experiment at the scale of the experiment rather than on a 1:1 scale. As for now, this is not done for two reasons. First, the scaling within XBeach is still subject to discussion. Second, other calibration studies for dune assessment models also first scaled the experiment results and then performed the calibration.