UK EA benchmark 2 (Water Module): Difference between revisions

From Tygron Preview Support Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(99 intermediate revisions by 6 users not shown)
Line 1: Line 1:
This page contains the test case 2 of the UK benchmark named ''Test 2 – Depression filling'' as well as its results generated by the Water Module in the {{software}}.__NOTOC__
[[Image:result_case2_ukbm.gif|right|Animation of the test result for case 2, generated by the {{software}}. Map dimensions = 2,000 x 2,000 m. Grid-cell size = 5 m.]]
This [[Water Module benchmarks|benchmark]] performs test case 2 of the UK EA benchmark named '''Test 2 – Filling of Floodplain Depressions''', using the {{software}}.__NOTOC__


''The test has been designed to evaluate the capability of a package to determine inundation extent and final flood depth, in a case involving low momentum flow over a complex topography.''
The test has been designed to evaluate the capability of a package to determine inundation extent and final flood depth, in a case involving low momentum flow over a complex topography.<ref name="Néelz"/>


A copy of this test project is made available to everyone, providing hands-on insights to those interested. The project can be found on the LTS server under the name '''UKEA benchmark 2'''. This is covered in more detail in [[UK EA benchmark 2 (Water Module)#Public test project|this]] section.
<br style="clear:both">
==Description==
==Description==
[[File:dem_case2_ukbm.png|right|thumb|400px|Fig. a: Map of the DEM showing the location of the upstream boundary condition (red line), ground elevation contour lines every 0.05 m, and output point locations (crosses)]]
[[File:dem_case2_ukbm.png|left|thumb|400px|Fig. (a): Map of the DEM showing the location of the upstream boundary condition (red line), ground elevation contour lines every 0.05 m and output point locations (crosses).]]
''The area modelled, shown in Figure (a), is a perfect 2000 m x 2000 m square and consists of a 4 x 4 matrix of ~0.5 m deep depressions with smooth topographic transitions. The DEM was obtained by multiplying sinusoids in the North to South and West to East directions and the depressions are all identical in shape. An underlying average slope of 1 : 1500 exists in the North to South direction, and of 1 : 3000 in the West to East direction, with a ~2m drop in elevation along the North-West to South-East diagonal.''


The inflow boundary condition is applied along a 100m line running South from the North
The area modelled, shown in Fig. (a), is a perfect 2,000 m x 2,000 m square and consists of a 4 x 4 matrix of ~0.5-m deep depressions with smooth topographic transitions. The DEM (digital elevation model) was obtained by multiplying sinusoids in the north to south and west to east directions, and the resulting depressions are all identical in shape. An underlying average slope of 1:1,500 exists in the north to south direction, and of 1:3,000 in the west to east direction, with a ~2-m drop in elevation along the north-west to south-east diagonal.<ref name="Néelz"/>
Western corner of the modelled domain, see Figure (a).


A flood hydrograph with a peak flow of 20m 3 /s and time base of ~85mins is used. The model
The inflow boundary condition was applied along a 100-m line running south from the northwestern corner of the modelled domain, indicated by a red line in Fig. (a). A flooding with a peak flow of 20 m<sup>3</sup>/s and time base of ~85 minutes was implemented according the hydrograph in Fig. (b). The model was run for 2 days (48 hours) to allow the inundation to settle to its final state.<ref name="Néelz"/>
is run for 2 days (48 hours) to allow the inundation to settle to its final state.
[[File:flood_hydrograph_case2_ukbm.png|right|frame|Fig. b: Inflow hydrograph used as upstream boundary condition in Test 2]]


[[File:flood_hydrograph_case2_ukbm.png|left|thumb|x200px|Fig. (b): Inflow hydrograph, which functioned as upstream boundary condition]]
<br style="clear:both">
<br style="clear:both">


==Boundary and initial conditions==
==Initial and boundary conditions==
*Inflow along the red line in Figure (a). Location and tables provided as part of dataset.
* Initial condition: dry bed
*All other boundaries are closed.<br>
* Inflow along the red line in Fig. (a)
*Initial condition: Dry bed.
* All other boundaries are closed


==Parameter values==
==Parameter values==
*Manning’s n: 0.03 (uniform)
* Manning’s ''n'': 0.03 (uniform)
*Model grid resolution: 20m (or ~10000 nodes in the area modelled)
* Model grid resolution (m): 20 m (or ~10,000 nodes in the area modelled)
* Time of end: model is to be run until time t = 48 hours
* Simulated time (h): 48


==Technical setup==
==Technical setup==
The provided ascii height file named test1DEM.asc is first imported. It has a cell size of 2m, while the test is expected to run on a 10m grid. Therefore, it will be automatically rescaled by the [[Grid Rasterizer|grid rasterizer]]. The resulting rescaled asc file is packed in the {{anchor|test case zip}} down below.
The required DEM is provided as an ASCII file (test2DEM.asc). As its cell size is 2 m, whereas the test is expected to be run on a 20-m grid, it will be automatically rescaled by the [[Grid Rasterizer|grid rasterizer]]. The dimensions of the test area must be 2,000 by 2,000 m. The original DEM had an offset of -200 m, which was cropped down to -20 m (= 1 grid cell) so it could function as border cell. The rescaled and cropped ASCII file will shortly be provided as part of a .zip found at the bottom of this page.
<ul>
<li style="display:inline-block">[[File:hmapori_case2_ukbm.png|thumb|x353px|Original 2-m heightmap (2,400 m x 2,400 m)]]</li>
<li style="display:inline-block">[[File:hmapcrop_case2_ukbm.png|thumb|x300px|Cropped and rescaled to 20-m grid (2,040 m x 2,040 m). The black perimeter designates the border cells.]]</li>
<li style="display:inline-block">[[File:inlets_case2_ukbm.png|thumb|x300px|Inlet series in the upper left corner.]]</li>
</ul>


In order to regulate the water level according to the water level graph, we used the following setup:
In order to regulate the water level according to the water-level graph, the following setup was used:
On gridcells with x = 1 and x = 2 Inlet objects were placed. Each inlet had its own grid cell. The inlets were configured as:
Inlet objects were placed on single grid cells with a constant value for ''x'' = 1 and ''y'' varying from 1 to 5, yielding a total of 5 points. The inlets were configured as follows:
* External area (m2):  1 000 000 000;
* External area (m<sup>2</sup>):  1,000,000,000 (default)
* Water level (m): 1;
* Water level (m): 1 (default)
* Inlet Q (m) :
* Threshold (m): none (default)
[[File:inlet_q_case2_ukbm.png]]
* Inlet Q (m<sup>3</sup>/s) : 20 in total, thus 4 per inlet
* Threshold (m): dynamic;
[[File:inlet_q_case2_ukbm.png|thumb|x300px|left|Hydrograph for each individual inlet.]]
The threshold array was set using a .csv-file that approximated there water level over time. It is approximated since our water levels remain the same for a given period of time (no linear interpolation between time key - values). However, this setup proved accurate enough. The ''inletthresholds.csv''-file can be found in the zip-file below.
[[File:thresholds_case1_ukbm.png]]
<br style="clear:both">
<br style="clear:both">


==Output as required==
==Output as required==
*Software package used: {{software}}
===Stats===
*Numerical scheme: FV (Kurganov, Bollerman, Horvath)*
* Software package used: {{software}}
*Specification of hardware used to undertake the simulation:
* Numerical scheme: [[Surface flow formula (Water Overlay)|FV (Kurganov, Bollerman, Horvath)]]
** Processor: Intel Xeon @2.10GHz x 8,  
* Object flow (m<sup>3</sup>/s): 96,985.64
** RAM 62.8 GiB,
* Remaining volume water (m<sup>3</sup>/s): 96,982.30
** GPU: 2x NVidia 1080
** Operating system: Linux 4.13
*Time increment used: adaptive:
*Grid resolution: 10 m.
*Simulation time:
*Remaining volume water:  


Measured point graphs are displayed below:
===Test results===
Point graph measurements from the {{software}} (left) and other packages (right):
<ul>
<li style = "display:inline-block">[[File:graph_p1_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p1_case2_ukbm.png|x400px|border]]</li></ul>
<ul>
<li style = "display:inline-block">[[File:graph_p2_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p2_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p3_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p3_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p4_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p4_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<ul>
<li style = "display:inline-block">[[File:graph_p1_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_p5_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p1_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p5_case2_ukbm.png|x400px|border]]</li>
: Graph of point 1 generated by the {{software}} on the left and generated by others on the right.
<li style = "display:inline-block">[[File:graph_p2_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p2_case1_ukbm.png|x400px|border]]</li>
: Graph of point 1 generated by the {{software}} on the left and generated by others on the right.
<li style = "display:inline-block">[[File:graph_xslice_case1_ukbm.png|x800px|border]]</li>
: Slice of the situation in the x -direction, generated by the {{software}}.
</ul>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p6_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p6_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p7_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p7_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p8_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p8_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p9_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p9_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p10_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p10_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p11_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p11_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p12_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p12_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p13_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p13_p16_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p14_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p13_p16_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p15_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p13_p16_case2_ukbm.png|x400px|border]]</li>
</ul>
<ul>
<li style = "display:inline-block">[[File:graph_p16_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p13_p16_case2_ukbm.png|x400px|border]]</li>
</ul>
===Last frame===
<ul>
<li style = "display:inline-block">[[File:last_frame_case2_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:last_frame_others_case2_ukbm.png|x400px|border]]</li>
: Final timeframe of water levels as generated by the {{software}} (left) and by the other packages (right).
</ul>
===Notes===
* Tests were run with a multi-GPU setup. For small cases like this, using single GPU actually leads to faster results. Furthermore, requesting a high number of 576 timeframes further bogs it down. In comparison: 1 GPU with 1 resulting timeframe runs in: 8 s, which is +- 53% faster compared to 2 GPUs with 576 timeframes.
==Public test project==
A copy of this test project is made available to everyone, providing hands-on insights to those interested. The project can be found on the LTS server under the name '''UKEA benchmark 2'''. In this project the discussed benchmark test is reproduced, based on a map size of 2,040 m x 2,040 m to compensate for the 20-m border cells. These special map dimensions are generally not selectable in the [[New Project Wizard]] and require configuration through the [[API]].
===Measurement points===
The locations of the measurement points are:
{|class="wikitable" style="display: inline-table;"
!Point ID
!X
!Y
|-
|1
|275
| -1,780
|-
|2
|275
| -1,290
|-
|3
|275
| -790
|-
|4
|275
| -290
|-
|5
|775
| -1,780
|-
|6
|775
| -1,290
|-
|7
|775
| -790
|-
|8
|775
| -290
|}
{|class="wikitable" style="display: inline-table;"
!Point ID
!X
!Y
|-
| 9
| 1,275
| -1,780
|-
| 10
| 1,275
| -1,290
|-
| 11
| 1,255
| -790
|-
| 12
| 1,275
| -290
|-
| 13
| 1,775
| -1,780
|-
| 14
| 1,775
| -1,290
|-
| 15
| 1,775
| -790
|-
| 16
| 1,775
| -290
|}
Note that the coordinate system in this project differs from the one used during the actual benchmark testing as shown in Fig. (b). For the above listed points the center (0,0) is located at the top-left corner instead of the bottom-left, hence will the bottom-right corner have coordinates (2,000;-2,000).
===Water level relative to datum===
The time series of a fixed measurement point can be obtained as follows:
{{Editor steps|title=obtain water levels relative to datum|Go to the flooding overlay "Water Level (m)".|Select the measuring tool.|From the ''Saved'' dropdown choose your point of interest.|From the ''Base'' dropdown select "Surface Elevation (m)".|Make sure the ''Sum'' box is checked.|Select ''Fit Graph'' to zoom in on the relevant part of the plot.}}
===Settings & output===
{|class="wikitable" style="display: inline-table;"
!Setting
!Unit
!Value
|-
|GRAVITY
|m/s<sup>2</sup>
|9.80665
|-
|QUAD_CELL
|''Boolean''
|0
|-
|WALL_ANGLE
|89
|-
|Open land
|m<sup>2</sup>
|14,786,560
|-
|Manning's ''n''
|s/(m<sup>1/3</sup>)
|0.03
|-
|Calc. pref.
|
|Accuracy
|}
{|class="wikitable" style="display: inline-table;"
!Output
!Unit
!Value
|-
|Total volume
|m<sup>3</sup>
|97,194
|-
|Single cells
|
|10,404
|-
|Calc. steps
|
|250,709
|-
|Calc. time
|s
|25
|}
Note that these output values may deviate slightly from those of the initial testing phase (i.e. not the public test project), since there is a substantial time gap between when the two projects were set up, during which several changes have been made to the engine.


==Notes==  
==References==
* Tests are run with multi gpu setup. For small cases like this, running it on a single gpu is actually faster: 17 seconds, which is +- 40% compared to 2.
<references>
<ref name="Néelz">Néelz, S., & Pender, G. (2013). Benchmarking the latest generation of 2D hydraulic modelling packages. Report: SC120002. Environment Agency, Horison House, Deanery Road, Bristol, BS1 9AH. ISBN: 978-1-84911-306-9. Retrieved from: https://www.gov.uk/government/publications/benchmarking-the-latest-generation-of-2d-hydraulic-flood-modelling-packages </ref>
</references>


[[Category:Benchmarks]]
[[Category:Benchmarks]]
{{Water Module buttons}}

Latest revision as of 15:09, 5 March 2024

Animation of the test result for case 2, generated by the Tygron Platform. Map dimensions = 2,000 x 2,000 m. Grid-cell size = 5 m.

This benchmark performs test case 2 of the UK EA benchmark named Test 2 – Filling of Floodplain Depressions, using the Tygron Platform.

The test has been designed to evaluate the capability of a package to determine inundation extent and final flood depth, in a case involving low momentum flow over a complex topography.[1]

A copy of this test project is made available to everyone, providing hands-on insights to those interested. The project can be found on the LTS server under the name UKEA benchmark 2. This is covered in more detail in this section.


Description

Fig. (a): Map of the DEM showing the location of the upstream boundary condition (red line), ground elevation contour lines every 0.05 m and output point locations (crosses).

The area modelled, shown in Fig. (a), is a perfect 2,000 m x 2,000 m square and consists of a 4 x 4 matrix of ~0.5-m deep depressions with smooth topographic transitions. The DEM (digital elevation model) was obtained by multiplying sinusoids in the north to south and west to east directions, and the resulting depressions are all identical in shape. An underlying average slope of 1:1,500 exists in the north to south direction, and of 1:3,000 in the west to east direction, with a ~2-m drop in elevation along the north-west to south-east diagonal.[1]

The inflow boundary condition was applied along a 100-m line running south from the northwestern corner of the modelled domain, indicated by a red line in Fig. (a). A flooding with a peak flow of 20 m3/s and time base of ~85 minutes was implemented according the hydrograph in Fig. (b). The model was run for 2 days (48 hours) to allow the inundation to settle to its final state.[1]

Fig. (b): Inflow hydrograph, which functioned as upstream boundary condition


Initial and boundary conditions

  • Initial condition: dry bed
  • Inflow along the red line in Fig. (a)
  • All other boundaries are closed

Parameter values

  • Manning’s n: 0.03 (uniform)
  • Model grid resolution (m): 20 m (or ~10,000 nodes in the area modelled)
  • Simulated time (h): 48

Technical setup

The required DEM is provided as an ASCII file (test2DEM.asc). As its cell size is 2 m, whereas the test is expected to be run on a 20-m grid, it will be automatically rescaled by the grid rasterizer. The dimensions of the test area must be 2,000 by 2,000 m. The original DEM had an offset of -200 m, which was cropped down to -20 m (= 1 grid cell) so it could function as border cell. The rescaled and cropped ASCII file will shortly be provided as part of a .zip found at the bottom of this page.

  • Original 2-m heightmap (2,400 m x 2,400 m)
  • Cropped and rescaled to 20-m grid (2,040 m x 2,040 m). The black perimeter designates the border cells.
  • Inlet series in the upper left corner.

In order to regulate the water level according to the water-level graph, the following setup was used: Inlet objects were placed on single grid cells with a constant value for x = 1 and y varying from 1 to 5, yielding a total of 5 points. The inlets were configured as follows:

  • External area (m2): 1,000,000,000 (default)
  • Water level (m): 1 (default)
  • Threshold (m): none (default)
  • Inlet Q (m3/s) : 20 in total, thus 4 per inlet
Hydrograph for each individual inlet.


Output as required

Stats

Test results

Point graph measurements from the Tygron Platform (left) and other packages (right):

  • Graph p1 case2 ukbm.png
  • Graph others p1 case2 ukbm.png
  • Graph p2 case2 ukbm.png
  • Graph others p2 case2 ukbm.png
  • Graph p3 case2 ukbm.png
  • Graph others p3 case2 ukbm.png
  • Graph p4 case2 ukbm.png
  • Graph others p4 case2 ukbm.png
  • Graph p5 case2 ukbm.png
  • Graph others p5 case2 ukbm.png
  • Graph p6 case2 ukbm.png
  • Graph others p6 case2 ukbm.png
  • Graph p7 case2 ukbm.png
  • Graph others p7 case2 ukbm.png
  • Graph p8 case2 ukbm.png
  • Graph others p8 case2 ukbm.png
  • Graph p9 case2 ukbm.png
  • Graph others p9 case2 ukbm.png
  • Graph p10 case2 ukbm.png
  • Graph others p10 case2 ukbm.png
  • Graph p11 case2 ukbm.png
  • Graph others p11 case2 ukbm.png
  • Graph p12 case2 ukbm.png
  • Graph others p12 case2 ukbm.png
  • Graph p13 case2 ukbm.png
  • Graph others p13 p16 case2 ukbm.png
  • Graph p14 case2 ukbm.png
  • Graph others p13 p16 case2 ukbm.png
  • Graph p15 case2 ukbm.png
  • Graph others p13 p16 case2 ukbm.png
  • Graph p16 case2 ukbm.png
  • Graph others p13 p16 case2 ukbm.png

Last frame

  • Last frame case2 ukbm.png
  • Last frame others case2 ukbm.png
  • Final timeframe of water levels as generated by the Tygron Platform (left) and by the other packages (right).

Notes

  • Tests were run with a multi-GPU setup. For small cases like this, using single GPU actually leads to faster results. Furthermore, requesting a high number of 576 timeframes further bogs it down. In comparison: 1 GPU with 1 resulting timeframe runs in: 8 s, which is +- 53% faster compared to 2 GPUs with 576 timeframes.

Public test project

A copy of this test project is made available to everyone, providing hands-on insights to those interested. The project can be found on the LTS server under the name UKEA benchmark 2. In this project the discussed benchmark test is reproduced, based on a map size of 2,040 m x 2,040 m to compensate for the 20-m border cells. These special map dimensions are generally not selectable in the New Project Wizard and require configuration through the API.

Measurement points

The locations of the measurement points are:

Point ID X Y
1 275 -1,780
2 275 -1,290
3 275 -790
4 275 -290
5 775 -1,780
6 775 -1,290
7 775 -790
8 775 -290
Point ID X Y
9 1,275 -1,780
10 1,275 -1,290
11 1,255 -790
12 1,275 -290
13 1,775 -1,780
14 1,775 -1,290
15 1,775 -790
16 1,775 -290

Note that the coordinate system in this project differs from the one used during the actual benchmark testing as shown in Fig. (b). For the above listed points the center (0,0) is located at the top-left corner instead of the bottom-left, hence will the bottom-right corner have coordinates (2,000;-2,000).

Water level relative to datum

The time series of a fixed measurement point can be obtained as follows:

How to obtain water levels relative to datum:
  1. Go to the flooding overlay "Water Level (m)".
  2. Select the measuring tool.
  3. From the Saved dropdown choose your point of interest.
  4. From the Base dropdown select "Surface Elevation (m)".
  5. Make sure the Sum box is checked.
  6. Select Fit Graph to zoom in on the relevant part of the plot.

Settings & output

Setting Unit Value
GRAVITY m/s2 9.80665
QUAD_CELL Boolean 0
WALL_ANGLE ° 89
Open land m2 14,786,560
Manning's n s/(m1/3) 0.03
Calc. pref. Accuracy
Output Unit Value
Total volume m3 97,194
Single cells 10,404
Calc. steps 250,709
Calc. time s 25

Note that these output values may deviate slightly from those of the initial testing phase (i.e. not the public test project), since there is a substantial time gap between when the two projects were set up, during which several changes have been made to the engine.

References

  1. 1.0 1.1 1.2 Néelz, S., & Pender, G. (2013). Benchmarking the latest generation of 2D hydraulic modelling packages. Report: SC120002. Environment Agency, Horison House, Deanery Road, Bristol, BS1 9AH. ISBN: 978-1-84911-306-9. Retrieved from: https://www.gov.uk/government/publications/benchmarking-the-latest-generation-of-2d-hydraulic-flood-modelling-packages