• InfoWorks ICM

Editing 2D simulation parameters and tolerances

Edit 2D simulation parameters and tolerances in ICM.


Some tolerance and advanced 2D simulation parameters can be edited during 2D modelling.

Accessible from Run dialog box, 2D parameters button.

The Run dialog box with the 2D parameters button highlighted in red.

No need to adjust settings for typical models, but useful to be familiar with options."

General tab:

The 2D Parameters dialog open to the General tab of options.

Depth:

Used to determine whether mesh element is considered wet or dry.

Mesh elements with depth of water below value are considered dry, and only mass conservation is considered.

Momentum:

Depth threshold used to determine whether to consider momentum in mesh element.

Movement of water not calculated for mesh elements with depth of water below this value—only mass conservation is considered.

Velocity:

Mesh elements with water velocity below this value have velocity reset to zero in terms of momentum calculations.

Ignore rain falling on dry elements:

If checked, applies rainfall and evaporation only to wet elements in the 2D mesh.

Adjust bank levels based on adjacent element ground levels:

If selected, levels of bank sections lower than adjoining mesh elements are adjusted by the engine to match mesh element ground level.

Enabled by default.

Link 1D and 2D calculations at minor timestep:

Unchecked— 2D calculations performed at every run timestep.

Checked — 2D simulation engine performs calculations at a maximum of every minor timestep.

May help to reduce occurrence of oscillations at banks for some networks.


Advanced tab

Includes settings used as part of the calculations.

The 2D Parameters dialog open to the Advanced tab of options.

Timestep Stability Control:

Ensures internal timestep used by 2D engine is within stability bounds given by CFL condition.

Valid below 1.

Maximum Velocity:

Threshold limiting velocities that can be achieved in an element in 2D simulation.

Inundation mapping depth threshold:

Used to determine the time to first inundation for mesh elements.

Reported as time (from start of simulation) water depth in mesh element first exceeds this threshold.


Steady state tab:

The 2D Parameters dialog open to the Steady State tab of options.

Steady state mode only available on CPU — not widely applied.

When Deactivate steady state areas option is checked, 2D engine checks if local steady state has been reached in each element of 2D zone.

Elements in 2D zone are put in sleep mode whenever steady state is reached.

Can specify threshold criteria to determine whether an element has reached a steady state.

Has the potential to speed up simulations, particularly in 2D river applications with large 2D zones and different flooded areas acting independently.


GPU tab:

GPU cards can be used to accelerate 2D calculation speed for models with greater than 1,000 elements.

The more elements, the greater the benefit.

For large 2D models, consider example comparing CPU-only run, which takes around 2 hours, and GPU run, which takes around 5 minutes.

CUDA capable NVIDIA GPU card with compute capability 3.0 (Kepler family) or above can currently be used for 2D engine calculations.

Only speeds up 2D engine, but can also reduce load on CPU undertaking 1D engine calculations.

Time taken for simulation should be considered additive between 1D and 2D engine times.

The 2D Parameters dialog open to the GPU tab, in which there are three options under Use GPU card for 2D calculations, and it is set to If suitable card is available.

On-premise default is to use the GPU card for 2D calculations, If suitable card is available.

Not all functionality is supported by the GPU.

With non-supported functionality in network (such as sediment transport), if Always or If suitable card is available selected, the simulation fails or a warning is displayed in the log.

For cloud, the default is to use the GPU card, If optimal for selected network.

The Open/Create dialog with Cloud selected as the type of database.

Uses algorithm to determine whether quicker to run on GPU or CPU.

Can be overridden by selecting Never or Always.