Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

Delft Dashboard is an open source package and is part of the OpenEarth suite. It is all written is programmed in Matlab code and provides and an interface for several numerical models (ege.g. Delft3D-FLOW, XBeach, ed.), however, the main functionality of Dashboard is written for Delft3D-FLOW. It uses online  Models are quickly set up via the Model maker toolbox by loading online available data (e.g. bathymetry: GEBCO '08, tide: TPXO ). When one would like to set-up a model within minutes the Model maker toolbox can be used. For more advanced Delft3D-FLOW functionality (tropical cyclones, tsunami's ed.) also toolboxes are developed. 7.2). Besides that, Delft Dashboard offers a broad range of other toolboxes that may be used to investigate e.g. tropical cyclones or tsunami's. On this page the different Matlab routines applied within Dashboard are elaboratedthe Model maker toolbox are described

Model maker

The toolbox Model Maker has two functions which can be used for all models supported by Dashboard (Delft3D-FLOW, Delft3D-WAVE, D-FLOW FM and XBeach) which makes it easy to set-, which are (1) setting up a rectangular grid and (2) matching the bathymetry to itthis grid. These functionalities are available for all the models supported by Delft Dashboard. For Delft3D-FLOW also functionality functionalities related to the boundary conditions and roughness is have been implemented. 

1) Make a rectangular grid

A rectangular grid can be created for every model supported by Delft Dashboard. The basic procedure will contain of contains three steps.

1) All the relevant variables (grid orientation, resolution) are loaded from the interface in Dashboard (getHandles).

2) Creation of a full grid based on the active bathymetry (often GEBCO '08). This full grid will have a margin of 20 percent and is thus larger than the grid defined in Dashboard. This is done in order to overcome interpolation issues at the edges of your grid. This full grid will also have a bathymetry in order to determine where the grid needs to be cut-off based on the maximum height (Z-Max) described in Dashboard. This step is carried out by the function ddb_ModelMakerToolbox_makeRectangularGrid.

...

A bathymetry can be created for every model supported by Delft Dashboard. The basic procedure will contain of three procedure consists of three steps.

1) All the relevant variables (grid orientation, resolution) are loaded from the interface in Dashboard (getHandles).

2) The data sets described in Bathymetry are prepared to be applied in the actual bathymetry. This means that for a value is ascribed to every grid cell there is at least a value (possible (possibly a NaN).

3) The different bathymetric data sets are used in the order defined. Dashboard applies a linear interpolation from the grid the bathymetry is defined on bathymetric dataset to the grid it needs to be calculated on. On top of that, Dashboard takes can take into account a model offset and can apply an internal diffusion in order to overcome possible undefined cells (NaNs)to fill gaps in the bathymetry.

Figure: Code structure of the routines needed to create a bathymetry in Dashboard

3) Make open boundaries and create boundary conditions

A. Make open boundaries

Open The open boundary for Delft3D-FLOW can be created with Delft Dashboard. The basic procedure to create open boundaries will contain of boundaries involves five steps. The master function of this routine is ddb_generateBoundaryLocationsDelft3DFLOW.

1) All the relevant variables (grid, bathymetry, the number of boundaries and source) are loaded from the interface in Dashboard (getHandles).

2) A specific number of open boundaries is created on the grid. The function determines if a cross-section is 'open' based on the Z max defined in Dashboard.  This step is carried out by the function findBoundarySectionsOnStructuredGrid.

3) The open boundaries are initialized. This means that the different boundary types (eg. water level or Riemann) are activated with default values (delft3dflow_initializeOpenBoundary).
4) The *.bca file is written in written to the working directory.
5) The view in Dashboard is updated with the recently formed open boundaries. The name of the boundaries can be seen when Boundaries is selected in the Model menu.

...

It is also possible to generate astronomic boundary conditions for Delft3D-FLOW with Delft Dashboard. The basic procedure to generate boundary conditions will contain of conditions involves four steps. The master function of this routine is ddb_generateBoundaryConditionsDelft3DFLOW.

1) All the relevant variables (grid, bathymetry, the number of boundaries and source) are loaded from the interface in Dashboard (getHandles).

2) Determine the coordinates of the end of each boundary in terms of longitude and latitude. 

3) Generation of the amplitude and phases based on the coordinates. Dashboard reads the values from the tide models defined (default TPXO 7.2) and applies a linear interpolation to the coordinates of interest. Diffusion is used to overcome any NaN's. This step is carried out by the function readTideModel.
4) The *.bnd file is written in written to the working directory. By default, Dashboard applies a water level relation, but also other types (eg. Riemann) are supported. The user can set the boundary condition type in the model menu under Boundary.

...

4) Roughness

Delft Dashboard also supports also includes the possibility to possibility to apply a different roughness on land than on the roughnesses for land and seabed.The basic procedure only contains only involves three steps. The master function of this routine is ddb_ModelMakerToolbox_roughness.

1) All the relevant variables (grid, bathymetry, the number of boundaries and source) are loaded from the interface in Dashboard (getHandles).

2) Determine which cells are above the land elevation defined. Grid cells above this value will get a land roughness and the remaining cells will get a sea roughness.

3) The *.rgh file is written in written to the working directory.