Mesh Generation

Mesh or grid is defined as a discrete cell or elements into which the domain/ model is divided. All the flow variables & any other variables are solved at centres of these discrete cells. This entire process of breaking up a physical domain into smaller sub-domains (elements/ cells) is called as mesh generation.

Structured vs. Unstructured Mesh

ResearchGate Question

A general Finite-volume-based code does not make differences between structured and unstructured grids. It works by doing a flux reconstruction on each face of the finite volume, whatever its shape is. Thus, you should rather focus on the grid generation issue. Structured grids are ordered-type by indices such (i,j,k) so that any value for these integers correspond to a spatial location and its topology is easily associated to next indices. Unstructured grids have not such ordering, therefore a node is associated to a single integer index and the topology is known by associating the connections of the node with the neighbouring nodes.

The choice of whether to use a structured or an unstructured mesh is very problem specific (as well as company/lab specific). The answer is one of engineering judgement. Here are some of the issues:

(1) Complex geometry: unstructured grid generation is usually much faster than structured grid generation. However, if the geometry is only slightly modified from a previously existing geometry with a structured grid, then structured grid generation can occur very rapidly.

For a problem which is different from previous applications:

Structured grid: ≈man weeks to 1-man month

Unstructured: ≈man hours to a few days

(2) Accuracy: For simpler problem such as airfoil (single element) or an isolated wing, structured grids are generally more accurate per unknown than unstructured. However, for more complex flows, the adaptivity facilitated by an unstructured grid may allow more accurate solutions.

(3) Convergence CPU time: structured grid calculations usually take less time than an unstructured grid calculation because, to date, the existing algorithms are more efficient.

So, in order to calculate a residual for all, the neighboring states must be known.

Structured: neighbors found by adding/subtracting 1 from cell indices.

Unstructured: requires storage of cell-to-cell pointers.

⇒ More storage, slower execution of code.

CFD-Online Forum

A single block structured mesh may comprise of square elements (2D) or hexahedral elements (3D) which are orthogonal in i, j space (2D) or i, j, k space (3D). Although it is also possible to have wedges (3D), triangles (2D) and pyramids (3D) in a structured mesh.

Looking at a 2D example, for simplicity, every node in a 2D structured mesh has a corresponding integer i and j index value which is unique. The physical locations of the nodes are stored in a table or are functionally related to the mesh space (ie (x,y)= f(i,j)). It is also implied then that the neigbours of node (i,j) are (i-1,j), (i+1,j), (i,j-1), (i,j+1), (i-1,j-1), and (i+1,j+1). If you are writing a CFD code, a structured mesh makes it very easy to loop through neighbours and can be efficient with memory.

A structured mesh has many coding advantages, but it may be difficult to conform a single block to a complicated shape. Code developers have got around this by allowing multiple blocks (multiblock unstructured), but this can make the internal memory strucutres more inefficient. Another way to make the mesh generation simpler, and improve code performance in other ways is to throw away the block structure and replace indices with node numbers and a connectivity table. This is known as an unstructured mesh, because it lacks the i,j,k structure.

A common misperception is that a hex mesh is strucutred and a tet mesh is unstructured. It is accurate to say that a tet mesh is unstructured, however a hex mesh can also be unstructred. The difference between a structured hex mesh and an ustructured hex mesh is simply in how the data is stored.d hex mesh and an ustructured hex mesh is simply in how the data is stored.


Categories: CFDTUTORIAL

Amir Sabernaeemi

Thermal fluid engineer with practical experience in the design of cooling systems and proficient with Ansys Fluent and Minitab

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *