PDA

View Full Version : Initial timestep



Kristian Ravnkilde
February 27, 2013, 09:05 AM
I have been finding that ICM models can be very sensitive to initial timestep. Some will run fine with 60 seconds, others object to anything more than 10 seconds, and even so will fail on some events, which have to be re-run with a different timestep e.g. 6 seconds. Usually they fail due to unstable over bank flow, and I wish I could predict better what would work, or have the time to go through every river bank in minute detail to find out what's the matter! It's not always the same place in a given model that fails. What has anyone else found?

Duncan Kitts
March 1, 2013, 09:43 AM
Is this a coupled 1D-2D model?

We would recommend a 10 second or less timestep for any 1D-2D models. The reason for this is that the 2D engine is explicit and calculates it's own timestep in order to acheive stability based on the Courant-Friedrichs-Lewy condition. The 1D engine is calculated at the timestep specified in the run dialogue and it is that major timestep which the 1D and 2D parts of the engine talk to each other and pass flows between them. Therefore, it is recommended that a 10 second or less timestep is chosen, so they talk to each other quite often and limit the potential for oscillatory flows at the interface between the 1D and 2D (eg, at banklines) which cause poor convergence.

The 1D engine can also timestep half in order to find a more stable solution. By default, even if timestep halving occurs, the 1D and 2D engines still talk to each other at the major timestep. However, there is the option in the 2D parameters to 'Link 1D and 2D calculations at minor timestep', this will mean if timestep halving occurs (ie to 5 seconds) then the 1D and 2D engines will talk to each other at the 5 second minor timestep. This is another useful approach to minimise oscillatory flows particularly at banklines. I personally use this as my default option, although in some situations this can have unneccesarily increase run times.

Kristian Ravnkilde
March 4, 2013, 02:25 AM
Yes, it's a 1D-2D ICM model. I usually start with 10 secs. I do link 1D and 2D calcs, and adjust ground levels, and apply rainfall smoothing, but still find some events will run OK while others will end - incomplete. I am running 200 year events, which are pretty demanding, but I'm at a loss as to why - the problem location for timestep halvings doesn't necessarily feature greatly in the log file of successful runs. All very puzzling, and messing about will probably only make other sims fail!

Duncan Kitts
March 13, 2013, 10:14 AM
Does the log file contain any 2D Mass Error Balance (ie>1-2%) in the 2D Summary report? If so, is there a geographical location within the model where these predominantly occur?

Kristian Ravnkilde
March 18, 2013, 05:10 AM
On failed sims, I get 2D Mass Balance Errors of -3 to -4%, but how would I associate these with a particular geographical location? I look at the "unconverged link flow" etc counts, and the sim failed message e.g. " Message 251: Run failed. Convergence least achieved at link -- for depth, BOUB01_2700D.1 for flow, or node -- for level." That particular river link crops up regularly, but I can't for the life of me see why - I've used a mesh zone with a lower limit on the ground level, with bank levels in the river reach manually edited to match, to smooth out some (real world) ups and downs in the banks. And it does puzzle me that only random sims fail, whicle others sail through quite happily.

Duncan Kitts
March 21, 2013, 02:35 AM
If you have 2D mass error balances then the mass eror volume is logged at the various elements in which they occur (see below). Use the X,Y co-ordinates to see if there is any geographical spread to them. I would expect some to occur near the bankline you highlight.

*********************
Mass error report
--------------------
2d Zone Name : 1
Mass error (m3) : 488.0172
Original elements
Element id : 2899 // Mass error (m3) : 1.17553000020546
Coordinates: (539463.535,189223.857)
Element id : 7380 // Mass error (m3) : 0.530719043978260
Coordinates: (540044.275,188866.407)
Element id : 7791 // Mass error (m3) : 2.95273435766938
Coordinates: (540186.117,188831.722)
Element id : 7809 // Mass error (m3) : 1.81946708830609
Coordinates: (540170.609,188865.951)
Element id : 7812 // Mass error (m3) : 10.2199361051144
Coordinates: (540177.403,188864.821)
Element id : 9453 // Mass error (m3) : 0.102714544155842
Coordinates: (540279.541,188750.672)
Element id : 11563 // Mass error (m3) : 1.82313838893205
Coordinates: (540190.660,189059.286)
Element id : 12153 // Mass error (m3) : 2.87539923436477

Kristian Ravnkilde
March 25, 2013, 02:50 AM
That would be helpful - I don't get that level of detail in my log files, just the total mass error. Am I missing soemthing?

Duncan Kitts
April 11, 2013, 09:13 AM
They should appear as standard in the log file under the Mass Error Report. What version of ICM are you using?

Kristian Ravnkilde
April 12, 2013, 01:59 AM
3.0.1. All I ever get is the total mass error, as in this scary (but unhelpful) example:
*********************
Mass error report
--------------------
2d Zone Name : XXX 2D zone
Mass error (m3) : 403060.3627
Original elements
No original elements with mass error
Virtual elements
No virtual elements with mass error
*********************
Total mass error (m3) : 403060.3627

Kristian Ravnkilde
April 29, 2013, 02:46 AM
I have checked a load of log files, for completed and incomplete sims, and found no detial of mass errors, only stuff like (on an incomplete sim):
*********************
Volume balance report
--------------------
2d Zone Name : XXXXX
Initial Volume (m3) : 0.0000
Net Inflow (m3) : 303006.4885
Inflow (m3) : 2459142.1278
Total Volume in the surface (m3) : 303008.6675
Volume in the 2d zone (m3) : 303008.6675
Volume out of the 2d zone (m3) : 0.0000
Rain volume in the 2d zone (m3) : 0.0000
Volume lost in the 2d zone (m3) : 0.0000
Mass error balance (%) : -0.0001
Effective area (ha) : 3250.7644
Flooded area at the end of the simulation (ha) : 77.0691
Maximum flooded area (ha) : 77.8554

or (on a completed sim):

*********************
Volume balance report
--------------------
2d Zone Name : XXXXX
Initial Volume (m3) : 0.0000
Net Inflow (m3) : 91598.8545
Inflow (m3) : 4359957.5484
Total Volume in the surface (m3) : 91669.2948
Volume in the 2d zone (m3) : 91669.2948
Volume out of the 2d zone (m3) : 0.0000
Rain volume in the 2d zone (m3) : 0.0000
Volume lost in the 2d zone (m3) : 0.0000
Mass error balance (%) : -0.0016
Effective area (ha) : 3250.7644
Flooded area at the end of the simulation (ha) : 18.1548
Maximum flooded area (ha) : 45.7855

As I said, I'm using 3.0. Is the nehanced detail a 3.5 feature?

Duncan Kitts
April 29, 2013, 05:06 AM
It is not a new feature. It is only available when the run is conducted on the CPU rather than a GPU so this could be the reason you are not seeing it. Are you running the simulations on a GPU card? It doesn't look like your mass error balance is particularly high.

Kristian Ravnkilde
April 29, 2013, 05:19 AM
That explains it. Another "undocumented feature"! Thanks.