2D Mesh Generation Methodology

When creating 2D meshes, the 2D mesh is generated using the Shewchuk Triangle(Portions copyright © Jonathan R. Shewchuk , 2360 Woolsey #H, Berkeley, California 94705. All rights reserved. See Jonathan Shewchuk's Web Page at http://www.cs.cmu.edu/~jrs/ for more information about the Triangle components that generate Delaunay triangulations for the 2D Model.) meshing functionality. Heights at the vertices of the generated mesh elements are calculated by interpolation from a specified ground model.

In order for meshing to be carried out, a bounding polygon must be defined in InfoWorks ICM. Voids (regions that will not be meshed), break lines and areas of varying roughness and mesh resolution may also be defined as described in the sections below:

Defining meshing boundaries

InfoWorks ICM provides a number of network objects that can be used to define the bounding polygon for the mesh and regions of varying roughness and mesh resolution:

All of these objects can be imported via the Open Data Import Centre or digitised directly on the GeoPlan view.

Excluding Roughness, Infiltration, Turbulence and Permeable zones from the mesh generation process

Roughness, and for InfoWorks networks only, Infiltration, Turbulence and Permeable zone boundaries are optionally included for use as a meshing boundary in the 2D meshing process.

Excluding the Roughness/Infiltration/Turbulence/Permeable zone boundary from the meshing process can avoid the generation of a very high density of small mesh elements round that polygon (for example, when using road layer polygons consisting of many long, thin sections).

To include/exclude the boundary of a zone when creating a 2D mesh, set the Exclude roughness/infiltration/turbulence/permeable zone boundary when creating 2D Mesh option in the zone property sheet or grid window.

Break lines

General lines in InfoWorks and SWMM networks can be used to represent one dimensional permeable features such as fences. These lines act as break lines during mesh generation, enforcing the lines as mesh element edges.

The line category assigned to the line is used to identify which lines are to be used as permeable break lines.

Alternatively, if the break line data is in GIS format, the GIS file or layer containing the data can be selected for use at the time of generating the 2D mesh.

Walls

Porous walls and porous polygons, and Buildings in InfoWorks networks, can be used to represent one dimensional features such as walls. These objects allows the porosity and height of the feature to be specified. For Porous walls and porous polygons, parameters can also be set for simulating collapse of the wall when the results of 2D mesh elements adjacent to the wall meet defined criteria.

Base linear structures (2D) in InfoWorks networks can also be used to represent two dimensional wall and weir structures.

Base linear structure, building, porous wall and porous polygon lines are always enforced as mesh element edges during mesh generation.

Alternatively, if the wall data is in GIS format, the GIS file or layer containing the data can be selected for use at the time of generating the 2D mesh.

Note: General line objects in InfoWorks and SWMM networks can also be used to define walls. The line category assigned to the line is used to identify which lines are to be used as walls. General lines representing walls will be treated as impermeable infinitely high barriers during the 2D simulation.

Voids

Voids are the regions within the 2D zone that will not be meshed e.g. buildings. The following objects are considered as voids when creating a 2D mesh in InfoWorks networks:

General polygons can also be used to represent void areas in InfoWorks and SWMM networks. The polygon category is used to identify which polygons represent voids when generating the 2D mesh.

Alternatively, if polygons representing voids are stored in GIS format, the GIS file or layer containing the data can be selected for use at the time of generating the 2D mesh.

Initial Conditions

Initial values for level, depth and velocity can be applied to mesh elements in InfoWorks networks.

Initial values can be set for areas bounded by:

The initial values themselves are defined in an Initial conditions 2D object, allowing different sets of initial conditions to be applied to the same network.

Point inflows

The 2D point source object in InfoWorks networks is used to define the location of a flow-time boundary point. An inflow is associated with the point source which discharges to the 2D mesh element in which the point is located.

Line Inflows

The 2D line source object in InfoWorks networks is used to define the location of a flow-time boundary line. An inflow is associated with the line source which discharges into the 2D mesh elements adjacent to the line.

2D line sources are included in meshing as break lines.

Mesh element generation

A single mesh element may be made up of more than one triangle, if a triangle has an area less than the Minimum element area specified for the 2D zone. Triangles will be aggregated with adjacent triangles until the minimum area is met.

The mesh elements generated cannot be edited manually, however element properties can be displayed by clicking on the icon on the GeoPlan Tools toolbar and then clicking on a 2D element.

To adjust the display of the mesh triangles, use the options on the Elements page of the GeoPlan properties dialog.

Element generation at 2D manholes

If possible, it is desirable for 2D manholes to be in separate elements, to make it easier to correctly match manhole and mesh levels.

The mesh generation process will split triangles if needed to try to avoid having more than one 2D manhole in the same element, although it is not guaranteed to be successful. The resulting triangles may be smaller than the minimum element area, in which case they will be aggregated with adjacent triangles, while trying to avoid having more than one 2D manhole in the same element.

Ground level calculation

The ground level for a mesh element is calculated by sampling the ground model within the 2D triangles making up the element and then taking the average of the sample point levels.

The number of sample points for each triangle is determined by subdividing the triangle until the minimum element area or, when using a gridded ground model, the ground model resolution is reached. The sample points are the centroids of the resulting triangles.

If a triangle is smaller than the minimum element area or ground model resolution, the centroid of the triangle will be the only point sampled.

The same method is used when recalculating mesh element ground levels by resampling elevations from a different ground model.

Terrain-sensitive meshing

Terrain-sensitive meshing is used to increase the resolution of the mesh in areas that have a large variation in height, without increasing the number of elements in relatively flat areas.

This functionality can be applied to individual 2D zones by use of the Terrain-sensitive meshing field.

When terrain-sensitive meshing is enabled, the mesh generation process samples the ground model in each candidate triangle. If the range of heights within the triangle exceeds the Maximum height variation specified for the 2D zone, the triangle is split, increasing the resolution of the mesh in areas where terrain height varies rapidly. This process is repeated until the Maximum height variation is no longer exceeded, or splitting would be likely to result in a triangle with an area smaller than the Minimum element area specified for the 2D zone.

Currently terrain-sensitive meshing parameters are specified for the entire 2D zone and include the minimum element area specified for the 2D zone. Terrain-sensitive meshing parameters cannot be set for individual mesh zones and the minimum element areas specified for Mesh Zones do not apply to terrain-sensitive meshing.

Note: Because each triangle is sampled at a limited number of points (maximum 64) it is possible that the process will not detect narrow linear features such as embankments or channels, particularly if the maximum triangle area is large. Even if detected, such a feature will not be accurately modelled if triangles with minimum element area are too large to resolve the sides and upper/lower surfaces of the feature. If required, such features should be modelled explicitly using 1D objects such as walls, banks or river reaches.

Mesh generation methods

InfoWorks ICM offers two methods of mesh generation for InfoWorks networks:

Clip meshing is automatically used to generate a mesh for a SWMM network.

Classic meshing is a well-proven method that is fast and robust in the vast majority of cases, but there are exceptions that could present difficulties. Clip meshing excels by comparison when it encounters highly complex geometry with a vertex density far greater than the desired mesh element density.

The clipped meshing process is outlined below:

  1. A primary mesh is generated, following the geometry of the 2D zone, but ignoring other geometrical constraints. The mesh resolution is refined in this stage to respect any mesh zones or terrain sensitive meshing.
  2. Each element from the primary mesh undergoes a parallelised per-element intersection routine, which involves clipping with proximal mesh input features/geometries, and then sub-dividing the intersection output into a local triangulation. The combination of all the local triangulations produces a secondary mesh.
  3. The secondary mesh is analysed, sampled, and attributed to provide all the relevant data necessary for an InfoWorks 2D simulation.
  4. Mesh aggregation is undertaken in a similar way to the classic method, however the triangles are pre-aggregated into initial collections according to their parent primary element that provides an improved aggregation with minimal shared segments between adjacent elements.

On average clip meshing has been found to be about four times faster than classic, although this differs substantially with the specifics of each meshing job. The greatest improvements tend to be:

A further aspect to consider when choosing which method to use is how the input objects impact on the final mesh. Note that for classic meshing, a change to a single input geometry vertex can propagate small differences throughout the entire mesh. For clip meshing, the primary mesh is only affected by the 2D Zone boundary and any mesh refinement options/features. Therefore, a change to a given input object should only impact on the local intersections, and so only cause local changes to the mesh (subject to aggregation). This provides more stability during the model build process. It can also simplify a before/after scenario comparison, as local geometry changes should not impact on 2D simulation results in distant locations, purely via mesh changes.