You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Introduction

Delft Dashboard is open source package and is part of the OpenEarth suite. It is all written in Matlab and provides and interface for several numerical models (eg. Delft3D-FLOW, XBeach, ed.), however the main functionality of Dashboard is written for Delft3D-FLOW. It uses online available data (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. On this page the different Matlab routines applied within Dashboard are elaborated. 

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-up a rectangular grid and matching the bathymetry to it. For FLOW also functionality related to boundary conditions and roughness is 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 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. 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.

3) The final grid is created based on this larger grid. Rotation is taken into account and cells above a certain threshold (Z max) are deleted.  This step is carried out by the function MakeRectangularGrid.

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

2) Make a bathymetry

A bathymetry can be created for every model supported by Delft Dashboard. The basic procedure will contain 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 every grid cell there is at least a value (possible 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 to the grid it needs to be calculated on. On top of that Dashboard takes into account model offset and can apply an internal diffusion in order to overcome possible undefined cells (NaNs).

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 boundary for Delft3D-FLOW can be created with Delft Dashboard. The basic procedure to create open boundaries will contain of five steps. The master function of this routine is ddb_generateBoundaryLocationsDelft3DFLOW.

1) All the relevant variables (grid, bathymetry, 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 the different boundary types (eg. water level or Riemann) are activated with default values (delft3dflow_initializeOpenBoundary).
4) The *.bca file is written in 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.

Figure: Code structure of the routines needed  to create open boundaries in Dashboard

B. Generate boundary conditions

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 4 steps. The master function of this routine is ddb_generateBoundaryConditionsDelft3DFLOW.

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

2) Determine the coordinates of the end of each boundary in 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 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.
Figure: Code structure of the routines needed  to generate boundary conditions in Dashboard

4) Roughness

 

 

  • No labels