Weir height test case (Water Module): Difference between revisions

From Tygron Support wiki
Jump to navigation Jump to search
No edit summary
 
(55 intermediate revisions by one other user not shown)
Line 1: Line 1:
This page contains information how to inspect [[weir]] flow for [[Water Overlays]]. It also sets up a test case, which is described first.
This page contains information on what ways a [[Weir height (Water Overlay)|weir's height]] can be configured using a test case. It also shows what direct output you can inspect from a  [[Weir (Water Overlay)|weir]]. Finally, several variants are also explored.


==Description==
==Description==
This test case consists of several weirs situated in a waterway, with each weir having different properties. All weirs are part of the same Water Overlay's simulation. There is no rainfall in this test case. Instead water flow is provided by inlets and outlets, which can be set up either variable or constant.
This test case consists of several weirs situated in a waterway, with each weir having different properties. All weirs are part of the same Water Overlay's simulation. There is no rainfall in this test case. Instead water flow is provided by inlets and outlets, which can be set up either variable or constant.
[[File:Weir_test_case_top_down.png|left|frame|Weir test case top down.]]
[[File:Weir_test_case_top_down.png|right|300|frame|Weir test case top down.]]
<br style="clear:both">


==Boundary and initial conditions==
==Boundary and initial conditions==
*''Waterways with weirs in the middle, separating two water areas.''
*Waterways with weirs in the middle, separating two water areas.  
*''One inlet per waterway providing an influx of water, situated in the water area on the left.''
*One inlet per waterway providing an influx of water, situated in the water area on the left.
*''One outlet per waterway providing an outflux of water, situated in the water area on the right.''
*One outlet per waterway providing an outflux of water, situated in the water area on the right.


==Parameter values==
==Parameter values==
Line 18: Line 17:
====Waterways====
====Waterways====
Four waterways with a water depth of 2m and an angle of repose of 35 degrees, drawn with the following polygons:
Four waterways with a water depth of 2m and an angle of repose of 35 degrees, drawn with the following polygons:
# [ 187.0, -249.28800006417478 ], [ 418.0, -256.28800006978895 ]
# [187.0, -249.288], [418.0, -256.288]
# [ 413.0, -333.28800015247015 ], [ 189.0, -326.28800014269683 ]
# [413.0, -333.288], [189.0, -326.288]
# [ 194.0, -375.28700021685376 ], [ 411.0, -382.28700022925455 ]
# [194.0, -375.287], [411.0, -382.287]
# [ 404.0, -447.4300003670834 ], [ 194.0, -440.4300003505766 ]
# [404.0, -447.430], [194.0, -440.430]


====Water Areas====
====Water Areas====
Two areas divide the water ways into two sections:
Two areas divide the water ways into two sections:
* Water area (left)
** Rectangle shape:  [301.0, -226.466], [158.884, -464.466]
** [[Water level (Water Overlay)|WATER_LEVEL]] = 0.0;
* Water area (right)
** Rectangle shape:  [424.884, -226.466], [301.0, -464.466]
** [[Water level (Water Overlay)|WATER_LEVEL]] = 0.0;


====Inlets====
* [[Inlet (Water Overlay)|Inlet]] (Constant):
** Rectangle shape: [189.82, -254.350], [202.08, -251.510]
** [[Inlet area (Water Overlay)|INLET_AREA]] = 1.0;
** [[Inlet q (Water Overlay)|INLET_Q]] = 1.0;
** [[Inlet lower threshold (Water Overlay)|LOWER_THRESHOLD]] = -10 000 (inactive);
** [[Inlet upper threshold (Water Overlay)|UPPER_THRESHOLD]] = -10 000 (inactive);


====Inlets====
 
* [[Inlet (Water Overlay)|Inlet]] (Manual)
** Rectangle shape:  [192.116, -331.225], [199.453, -328.390]
** [[Inlet area (Water Overlay)|INLET_AREA]] = 1.0;
** [[Inlet q (Water Overlay)|INLET_Q]] = 1.0;
** [[Inlet lower threshold (Water Overlay)|LOWER_THRESHOLD]] = -10 000 (inactive);
** [[Inlet upper threshold (Water Overlay)|UPPER_THRESHOLD]] = -10 000 (inactive);
 
* [[Inlet (Water Overlay)|Inlet]] (Adjusting)
[[File:Weir_flow_test_case_adjusting_inlet_q.png|thumb|200px|right|Inlet Q that is adjusting over time, visualized using the Measurement Tool's object attribute inspection.]]
** Rectangle shape:  [197.019, -444.276], [204.623, -441.738]
** [[Inlet area (Water Overlay)|INLET_AREA]] = 1.0;
** [[Inlet q (Water Overlay)|INLET_Q]] = [0, 1, 600, 1, 900, 1.5, 1200, 1.5, 1800, 1.5, 2400, 1, 3600, 1];
** [[Inlet lower threshold (Water Overlay)|LOWER_THRESHOLD]] = -10 000 (inactive);
** [[Inlet upper threshold (Water Overlay)|UPPER_THRESHOLD]] = -10 000 (inactive);


====Outlets====
====Outlets====
Each [[Inlet (Water Overlay)|outlet]]  is set up with the following attributes to remove the water that passed through the weir:
** [[Inlet area (Water Overlay)|INLET_AREA]] = 1.0;
** [[Inlet q (Water Overlay)|INLET_Q]] = 0;
** [[Inlet upper threshold (Water Overlay)|UPPER_THRESHOLD]] = -0.5;
The outlets are situated at:
* Outlet (Constant):
** Rectangle shape: [414.554, -250.689] , [396.786, -253.873]
* Outlet (Manual):
** Rectangle shape: [410.115, -327.753] , [ 393.13, -330.9620 ]
* Outlet (Adjusting):
** Rectangle shape:  [ 401.072, -442.541 ], [ 383.968, -445.520 ]


====Weirs====
====Weirs====
Each [[Weir (Water Overlay)|weir]] is setup using a rectangular shape, and direction angle and a weir height and width:
* [[Weir angle (Water Overlay)|WEIR_ANGLE]] = 270 degrees;
* [[Weir height (Water Overlay)|WEIR_HEIGHT]] = 0 m;
* [[weir width (Water Overlay)| WEIR_WIDTH]] = 5 m;
Weir specific:
* Weir (Constant)
** Rectangular shape: [ 299.593, -248.328 ] , [ 302.229, -257.983 ]
* Weir (Manual)
[[File:Weir_flow_test_case_manuel_weir_height.png|thumb|200px|right|Weir height that is adjusting over time, visualized using the Measurement Tool's object attribute inspection.]]
** Rectangular shape: [ 298.675, -324.174 ] , [ 301.613, -335.662 ]
** [[Weir height (Water Overlay)|WEIR_HEIGHT]] = [ 0 0 600 0.2 1200 0.2 1500 0.2 1800 -0.5 2400 -0.5 2700 0 ];
* Weir (Adjusting)
** Rectangular shape: [ 298.406, -437.681 ] , [ 301.142, -449.731 ]
** [[Weir target level (Water Overlay)|WEIR_TARGET_LEVEL]] = 0;


====Overlay settings====
====Overlay settings====
General parameters that have been used:
General parameters that have been used:
* Type of overlay: [[Flooding_(Overlay)|Flooding Overlay]]
* Type of overlay: [[Rainfall_(Overlay)|Rainfall Overlay]]
* [[Weather]]:
* [[Weather]]:
** Evaporation: 0 mm
** Evaporation: 0 mm
Line 42: Line 95:
* Groundwater: 0 (off)
* Groundwater: 0 (off)
* Calculation mode: Accuracy
* Calculation mode: Accuracy
* [[Timeframes (Water Overlay)|Timeframes]]: 30
* Output results: [[Surface last value result type (Water Overlay)|Surface last value]], [[Surface last datum result type (Water Overlay)|Surface last datum]] and [[Surface last datum result type (Water Overlay)|Surface elevation]]
* Output results: [[Surface last value result type (Water Overlay)|Surface last value]], [[Surface last datum result type (Water Overlay)|Surface last datum]] and [[Surface last datum result type (Water Overlay)|Surface elevation]]
* [[Weir dam multiplier (Water Overlay)|WEIR_DAM_MULTIPLIER]] is set to 3;
* [[Weir move range m (Water Overlay)| WEIR_MOVE_RANGE_M]] is set to 1 meter;
* [[Weir move interval s (Water Overlay)| WEIR_MOVE_INTERVAL_S]] is set to 10 seconds;
* [[Weir move step m (Water Overlay)| WEIR_MOVE_STEP_M]] is set to 0,01 meter.
==Output==
Measured object graphs are displayed below. The following water overlay output attributes are inspected:
* [[Object height output (Water Overlay)|Object height]], which is in meters relative to the {{datum}}
* [[Object flow output (Water Overlay)|Object flow]], which is in m3/s
* [[Object datum output a (Water Overlay)|Object datum a]] which is in meters relative to the {{datum}}
* [[Object datum output b (Water Overlay)|Object datum b]] which is in meters relative to the {{datum}}
====Weir with constant height====
<ul>
: Weir with a constant height:
<li style = "display:inline-block">[[File:weir_test_case_weir_constant_height.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_constant_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_constant_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_constant_datum_b.png|x300px|border]]</li>
: Inlet:
<li style = "display:inline-block">[[File:weir_test_case_inlet_constant_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_constant_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_constant_datum_b.png|x300px|border]]</li>
: Outlet:
<li style = "display:inline-block">[[File:weir_test_case_outlet_constant_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_constant_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_constant_datum_b.png|x300px|border]]</li>
</ul>


====Inlets====
====Weir with manual configured changing height====
In order to regulate the water level according to the water level graph, we used the following setup:
<ul>
On gridcells with x = 1 and x = 2 Inlet objects were placed. Each inlet had its own grid cell. The inlets were configured as:
: Weir with a manual configured changing height:
[[File:inletpositions_case1_ukbm.png|left]]
<li style = "display:inline-block">[[File:weir_test_case_weir_manual_height.png|x300px|border]]</li>
<br/><br/><br/><br/><br/><br/><br/><br/>
<li style = "display:inline-block">[[File:weir_test_case_weir_manual_flow.png|x300px|border]]</li>
* External area (m2): 1 000 000 000;
<li style = "display:inline-block">[[File:weir_test_case_weir_manual_datum_a.png|x300px|border]]</li>
* Water level (m): 1;
<li style = "display:inline-block">[[File:weir_test_case_weir_manual_datum_b.png|x300px|border]]</li>
* Inlet Q (m) :
: Inlet:
<li style = "display:inline-block">[[File:weir_test_case_inlet_manual_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_manual_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_manual_datum_b.png|x300px|border]]</li>
: Outlet:
<li style = "display:inline-block">[[File:weir_test_case_outlet_manual_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_manual_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_manual_datum_b.png|x300px|border]]</li>
</ul>
 
====Weir with adjusting height====
<ul>
: Weir with an adjusting height:
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_height.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_b.png|x300px|border]]</li>
: Inlet:
<li style = "display:inline-block">[[File:weir_test_case_inlet_adjusting_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_adjusting_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_inlet_adjusting_datum_b.png|x300px|border]]</li>
: Outlet:
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_flow.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_b.png|x300px|border]]</li>
</ul>


{|class="wikitable"
==Variations==
! time (hrs)
====Weir adjustment interval====
! inlet Q (m3/s)
Changing the [[Weir move interval s (Water Overlay)|WEIR_MOVE_INTERVAL_S]] from 10 seconds to 1 second. This leads to more adjustments. It becomes more apparent with more timeframes (300 in stead of 30).  
|-
| 0,
| 1000,
|-
| 11
| 1000
|-
| 11 + 1 sec
| -1000
|-
| 22
| -1000
|}
* Threshold (m): dynamic;
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|left]]
<br style="clear:both">


==Output as required==
<ul>
*Software package used: {{software}}
: Weir with an adjusting height:
*Numerical scheme: FV (Kurganov, Bollerman, Horvath)*
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_height_1s.png|x300px|border]]</li>
*Specification of hardware used to undertake the simulation:  
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_flow_1s.png|x300px|border]]</li>
** Processor: Intel Xeon @2.10GHz x 8,
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_a_1s.png|x300px|border]]</li>
** RAM 62.8 GiB,
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_b_1s.png|x300px|border]]</li>
** GPU: 2x NVidia 1080
: Weir adjusting height with 300 frames:
** Operating system: Linux 4.13
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_height_1s_0_01m_300f.png|x300px|border]]</li>
*Time increment used: adaptive: 0.25 - 1.13 s.
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_flow_1s_0_01m_300f.png|x300px|border]]</li>
*Grid resolution: 10 m.
: Inlet: No changes.
*Simulation time: 28s.  
: Outlet:
*Remaining volume water: 10050 m3
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_flow_1s.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_b.png|x300px|border]]</li>
</ul>


Measured point graphs are displayed below:
====Weir move step====
Changing the [[Weir move interval s (Water Overlay)|WEIR_MOVE_INTERVAL_S]] from 0.01 meter to 0.05 meter. As you can see, this makes the adjustments more erratic.
<ul>
<ul>
<li style = "display:inline-block">[[File:graph_p1_case1_ukbm.png|x400px|border]]</li>
: Weir with an adjusting height:
<li style = "display:inline-block">[[File:graph_others_p1_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_height_0_05m.png|x300px|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:weir_test_case_weir_adjusting_flow_0_05m.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:graph_p2_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_a_0_05m.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:graph_others_p2_case1_ukbm.png|x400px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_weir_adjusting_datum_b_0_05m.png|x300px|border]]</li>
: Graph of point 1 generated by the {{software}} on the left and generated by others on the right.
: Inlet: No changes.
<li style = "display:inline-block">[[File:graph_xslice_case1_ukbm.png|x800px|border]]</li>
: Outlet:
: Slice of the situation in the x -direction, generated by the {{software}}.
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_flow_0_05m.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_a.png|x300px|border]]</li>
<li style = "display:inline-block">[[File:weir_test_case_outlet_adjusting_datum_b.png|x300px|border]]</li>
</ul>
</ul>


==Notes==  
==Conclusions==
* 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.
* Weirs can be made to adjust automatically based on changing water levels.
* Be careful when changing the default values of the weir move attributes of the overlay. Do not set the adjustment time too low or the step too high.


{{article end
|howtos=
* [[How to inspect object output attributes of an overlay using the measurement tool]]
* [[How to import a time sequence with a CSV]]
}}
[[Category:Benchmarks]]
[[Category:Benchmarks]]
{{Water Module buttons}}
{{Water Module buttons}}

Latest revision as of 12:53, 3 February 2023

This page contains information on what ways a weir's height can be configured using a test case. It also shows what direct output you can inspect from a weir. Finally, several variants are also explored.

Description

This test case consists of several weirs situated in a waterway, with each weir having different properties. All weirs are part of the same Water Overlay's simulation. There is no rainfall in this test case. Instead water flow is provided by inlets and outlets, which can be set up either variable or constant.

Weir test case top down.

Boundary and initial conditions

  • Waterways with weirs in the middle, separating two water areas.
  • One inlet per waterway providing an influx of water, situated in the water area on the left.
  • One outlet per waterway providing an outflux of water, situated in the water area on the right.

Parameter values

  • Manning’s n: 0.03 (uniform)
  • Model grid resolution: 1m

Technical setup

Waterways

Four waterways with a water depth of 2m and an angle of repose of 35 degrees, drawn with the following polygons:

  1. [187.0, -249.288], [418.0, -256.288]
  2. [413.0, -333.288], [189.0, -326.288]
  3. [194.0, -375.287], [411.0, -382.287]
  4. [404.0, -447.430], [194.0, -440.430]

Water Areas

Two areas divide the water ways into two sections:

  • Water area (left)
    • Rectangle shape: [301.0, -226.466], [158.884, -464.466]
    • WATER_LEVEL = 0.0;
  • Water area (right)
    • Rectangle shape: [424.884, -226.466], [301.0, -464.466]
    • WATER_LEVEL = 0.0;

Inlets


Inlet Q that is adjusting over time, visualized using the Measurement Tool's object attribute inspection.

Outlets

Each outlet is set up with the following attributes to remove the water that passed through the weir:

The outlets are situated at:

  • Outlet (Constant):
    • Rectangle shape: [414.554, -250.689] , [396.786, -253.873]
  • Outlet (Manual):
    • Rectangle shape: [410.115, -327.753] , [ 393.13, -330.9620 ]
  • Outlet (Adjusting):
    • Rectangle shape: [ 401.072, -442.541 ], [ 383.968, -445.520 ]

Weirs

Each weir is setup using a rectangular shape, and direction angle and a weir height and width:

Weir specific:

  • Weir (Constant)
    • Rectangular shape: [ 299.593, -248.328 ] , [ 302.229, -257.983 ]
  • Weir (Manual)
Weir height that is adjusting over time, visualized using the Measurement Tool's object attribute inspection.
    • Rectangular shape: [ 298.675, -324.174 ] , [ 301.613, -335.662 ]
    • WEIR_HEIGHT = [ 0 0 600 0.2 1200 0.2 1500 0.2 1800 -0.5 2400 -0.5 2700 0 ];
  • Weir (Adjusting)
    • Rectangular shape: [ 298.406, -437.681 ] , [ 301.142, -449.731 ]
    • WEIR_TARGET_LEVEL = 0;

Overlay settings

General parameters that have been used:

Output

Measured object graphs are displayed below. The following water overlay output attributes are inspected:

Weir with constant height

    Weir with a constant height:
  • Weir test case weir constant height.png
  • Weir test case weir constant flow.png
  • Weir test case weir constant datum a.png
  • Weir test case weir constant datum b.png
  • Inlet:
  • Weir test case inlet constant flow.png
  • Weir test case inlet constant datum a.png
  • Weir test case inlet constant datum b.png
  • Outlet:
  • Weir test case outlet constant flow.png
  • Weir test case outlet constant datum a.png
  • Weir test case outlet constant datum b.png

Weir with manual configured changing height

    Weir with a manual configured changing height:
  • Weir test case weir manual height.png
  • Weir test case weir manual flow.png
  • Weir test case weir manual datum a.png
  • Weir test case weir manual datum b.png
  • Inlet:
  • Weir test case inlet manual flow.png
  • Weir test case inlet manual datum a.png
  • Weir test case inlet manual datum b.png
  • Outlet:
  • Weir test case outlet manual flow.png
  • Weir test case outlet manual datum a.png
  • Weir test case outlet manual datum b.png

Weir with adjusting height

    Weir with an adjusting height:
  • Weir test case weir adjusting height.png
  • Weir test case weir adjusting flow.png
  • Weir test case weir adjusting datum a.png
  • Weir test case weir adjusting datum b.png
  • Inlet:
  • Weir test case inlet adjusting flow.png
  • Weir test case inlet adjusting datum a.png
  • Weir test case inlet adjusting datum b.png
  • Outlet:
  • Weir test case outlet adjusting flow.png
  • Weir test case outlet adjusting datum a.png
  • Weir test case outlet adjusting datum b.png

Variations

Weir adjustment interval

Changing the WEIR_MOVE_INTERVAL_S from 10 seconds to 1 second. This leads to more adjustments. It becomes more apparent with more timeframes (300 in stead of 30).

    Weir with an adjusting height:
  • Weir test case weir adjusting height 1s.png
  • Weir test case weir adjusting flow 1s.png
  • Weir test case weir adjusting datum a 1s.png
  • Weir test case weir adjusting datum b 1s.png
  • Weir adjusting height with 300 frames:
  • Weir test case weir adjusting height 1s 0 01m 300f.png
  • Weir test case weir adjusting flow 1s 0 01m 300f.png
  • Inlet: No changes.
    Outlet:
  • Weir test case outlet adjusting flow 1s.png
  • Weir test case outlet adjusting datum a.png
  • Weir test case outlet adjusting datum b.png

Weir move step

Changing the WEIR_MOVE_INTERVAL_S from 0.01 meter to 0.05 meter. As you can see, this makes the adjustments more erratic.

    Weir with an adjusting height:
  • Weir test case weir adjusting height 0 05m.png
  • Weir test case weir adjusting flow 0 05m.png
  • Weir test case weir adjusting datum a 0 05m.png
  • Weir test case weir adjusting datum b 0 05m.png
  • Inlet: No changes.
    Outlet:
  • Weir test case outlet adjusting flow 0 05m.png
  • Weir test case outlet adjusting datum a.png
  • Weir test case outlet adjusting datum b.png

Conclusions

  • Weirs can be made to adjust automatically based on changing water levels.
  • Be careful when changing the default values of the weir move attributes of the overlay. Do not set the adjustment time too low or the step too high.