Jump to content

Mesh generation

From Wikipedia, the free encyclopedia
Finite element mesh ofquadrilateralsof a curved domain

Mesh generationis the practice of creating amesh,a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form asimplicial complex. Usually the cells partition the geometric input domain. Mesh cells are used as discrete local approximations of the larger domain. Meshes are created by computer algorithms, often with human guidance through aGUI,depending on the complexity of the domain and the type of mesh desired. A typical goal is to create a mesh that accurately captures the input domain geometry, with high-quality (well-shaped) cells, and without so many cells as to make subsequent calculations intractable. The mesh should also be fine (have small elements) in areas that are important for the subsequent calculations.

Meshes are used forrenderingto a computer screen and forphysical simulationsuch asfinite element analysisorcomputational fluid dynamics.Meshes are composed of simple cells like triangles because, e.g., we know how to perform operations such as finite element calculations (engineering) or ray tracing (computer graphics) on triangles, but we do not know how to perform these operations directly on complicated spaces and shapes such as a roadway bridge. We can simulate the strength of the bridge, or draw it on a computer screen, by performing calculations on each triangle and calculating the interactions between triangles.

A major distinction is between structured and unstructured meshing. In structured meshing the mesh is a regular lattice, such as an array, with implied connectivity between elements. In unstructured meshing, elements may be connected to each other in irregular patterns, and more complicated domains can be captured. This page is primarily about unstructured meshes. While a mesh may be atriangulation,the process of meshing is distinguished frompoint set triangulationin that meshing includes the freedom to add vertices not present in the input. "Facetting" (triangulating)CADmodels for drafting has the same freedom to add vertices, but the goal is to represent the shape accurately using as few triangles as possible and the shape of individual triangles is not important. Computer graphics renderings of textures and realistic lighting conditions use meshes instead.

Many mesh generation software is coupled to aCAD systemdefining its input, and simulation software for taking its output. The input can vary greatly but common forms areSolid modeling,Geometric modeling,NURBS,B-rep,STLor apoint cloud.

Terminology[edit]

The terms "mesh generation,""grid generation,""meshing,""and "gridding,"are often used interchangeably, although strictly speaking the latter two are broader and encompass mesh improvement: changing the mesh with the goal of increasing the speed or accuracy of the numerical calculations that will be performed over it. Incomputer graphicsrendering, andmathematics,a mesh is sometimes referred to as atessellation.

Mesh faces (cells, entities) have different names depending on their dimension and the context in which the mesh will be used. In finite elements, the highest-dimensional mesh entities are called "elements," "edges" are 1D and "nodes" are 0D. If the elements are 3D, then the 2D entities are "faces." In computational geometry, the 0D points are called vertices. Tetrahedra are often abbreviated as "tets"; triangles are "tris", quadrilaterals are "quads" and hexahedra (topological cubes) are "hexes."

Techniques[edit]

Catmull-Clark subdivisionof a surface
Triangulationof animplicit surface

Many meshing techniques are built on the principles of theDelaunay triangulation,together with rules for adding vertices, such asRuppert's algorithm. A distinguishing feature is that an initial coarse mesh of the entire space is formed, then vertices and triangles are added. In contrast,advancing front algorithmsstart from the domain boundary, and add elements incrementally filling up the interior. Hybrid techniques do both. A special class of advancing front techniques creates thinboundary layersof elements for fluid flow. In structured mesh generation the entire mesh is alattice graph,such as a regular grid of squares. In block-structured meshing, the domain is divided into large subregions, each of which is a structured mesh. Some direct methods start with a block-structured mesh and then move the mesh to conform to the input; seeAutomatic Hex-Mesh Generationbased onpolycube.Another direct method is to cut the structured cells by the domain boundary; seesculptbased onMarching cubes.

Some types of meshes are much more difficult to create than others. Simplicial meshes tend to be easier than cubical meshes. An important category is generating a hex mesh conforming to a fixed quad surface mesh; a research subarea is studying the existence and generation of meshes of specific small configurations, such as thetetragonal trapezohedron.Because of the difficulty of this problem, the existence of combinatorial hex meshes has been studied apart from the problem of generating good geometric realizations. While known algorithms generate simplicial meshes with guaranteed minimum quality, such guarantees are rare for cubical meshes, and many popular implementations generate inverted (inside-out) hexes from some inputs.

Meshes are often created in serial on workstations, even when subsequent calculations over the mesh will be done inparallelon super-computers. This is both because of the limitation that most mesh generators are interactive, and because mesh generation runtime is typically insignificant compared to solver time. However, if the mesh is too large to fit in the memory of a single serial machine, or the mesh must be changed (adapted) during the simulation, meshing is done in parallel.

Algebraic methods[edit]

Nozzle geometry
Computational mesh in physical space

The grid generation by algebraic methods is based on mathematicalinterpolation function.It is done by using known functions in one, two or threedimensionstaking arbitrary shaped regions. The computational domain might not be rectangular, but for the sake of simplicity, the domain is taken to be rectangular. The main advantage of the methods is that they provide explicit control of physical grid shape and spacing. The simplest procedure that may be used to produce boundary fitted computational mesh is the normalization transformation.[1]
For a nozzle, with the describing functionthe grid can easily be generated using uniform division iny-direction with equally spaced increments inx-direction, which are described by

wheredenotes the y-coordinate of the nozzle wall. For given values of (,), the values of (,) can be easily recovered.

Differential equation methods[edit]

Like algebraic methods,differential equationmethods are also used to generate grids. The advantage of using thepartial differential equations(PDEs) is that the solution of grid generating equations can be exploited to generate the mesh. Grid construction can be done using all three classes ofpartial differential equations.

Elliptic schemes[edit]

EllipticPDEsgenerally have very smooth solutions leading to smooth contours. Using its smoothness as an advantageLaplace's equationscan preferably be used because theJacobianfound out to be positive as a result of maximum principle forharmonic functions.After extensive work done by Crowley (1962) and Winslow (1966)[2]on PDEs by transforming physical domain into computational plane while mapping usingPoisson's equation,Thompson et al. (1974)[3]have worked extensively on ellipticPDEsto generate grids. In Poisson grid generators, the mapping is accomplished by marking the desired grid pointson the boundary of the physical domain, with the interior point distribution determined through the solution of equations written below

where,are the co-ordinates in the computational domain, while P and Q are responsible for point spacing within D. Transforming above equations in computational space yields a set of twoelliptic PDEsof the form,

where

These systems of equations are solved in the computational plane on uniformly spaced grid which provides us with theco-ordinates of each point in physical space. The advantage of usingelliptic PDEsis the solution linked to them is smooth and the resulting grid is smooth. But, specification of P and Q becomes a difficult task thus adding it to its disadvantages. Moreover, the grid has to be computed after each time step which adds up to computational time.[4]

Hyperbolic schemes[edit]

This grid generation scheme is generally applicable to problems with open domains consistent with the type ofPDEdescribing the physical problem. The advantage associated withhyperbolic PDEsis that the governing equations need to be solved only once for generating grid. The initial point distribution along with the approximate boundary conditions forms the required input and the solution is the then marched outward. Steger and Sorenson (1980)[5]proposed a volume orthogonality method that uses Hyperbolic PDEs for mesh generation. For a 2-D problem, Considering computational space to be given by,the inverse of theJacobianis given by,

whererepresents the area in physical space for a given area in computational space. The second equation links the orthogonality of grid lines at the boundary in physical space which can be written as

Forandsurfaces to be perpendicular the equation becomes

The problem associated with such system of equations is the specification of.Poor selection ofmay lead to shock and discontinuous propagation of this information throughout the mesh. While mesh being orthogonal is generated very rapidly which comes out as an advantage with this method.

Parabolic schemes[edit]

The solving technique is similar to that ofhyperbolic PDEsby advancing the solution away from the initial data surface satisfying the boundary conditions at the end. Nakamura (1982) and Edwards (1985) developed the basic ideas for parabolic grid generation. The idea uses either ofLaplaceor thePoisson's equationand especially treating the parts which controls elliptic behavior. The initial values are given as the coordinates of the point along the surfaceand the advancing the solutions to the outer surface of the object satisfying the boundary conditions alongedges.

The control of the grid spacing has not been suggested until now. Nakamura and Edwards, grid control was accomplished using non uniform spacing. The parabolic grid generation shows an advantage over the hyperbolic grid generation that, no shocks or discontinuities occur and the grid is relatively smooth. The specifications of initial values and selection of step size to control the grid points is however time-consuming, but these techniques can be effective when familiarity and experience is gained.

Variational methods[edit]

This method includes a technique that minimizesgridsmoothness,orthogonalityand volume variation. This method forms mathematical platform to solve grid generation problems. In this method an alternative grid is generated by a newmeshafter each iteration and computing the grid speed usingbackward difference method.This technique is a powerful one with a disadvantage that effort is required to solve the equations related to grid. Further work needed to be done to minimize theintegralsthat will reduce the CPU time.

Unstructured grid generation[edit]

The main importance of this scheme is that it provides a method that will generate the grid automatically. Using this method, grids are segmented into blocks according to the surface of the element and a structure is provided to ensure appropriate connectivity. To interpret the dataflowsolver is used. When an unstructured scheme is employed, the main interest is to fulfill the demand of the user and a grid generator is used to accomplish this task. The information storage in structured scheme iscellto cell instead of grid to grid and hence the more memory space is needed. Due to random cell location, the solverefficiencyin unstructured is less as compared to the structured scheme.[6]

Some points are needed to be kept in mind at the time of gridconstruction.The grid point with high resolution creates difficulty for both structured and unstructured. For example, in case ofboundary layer,structured scheme produces elongated grid in the direction of flow. On the other hand, unstructured grids require a higher celldensityin the boundary layer because the cell needs to be asequilateralas possible to avoid errors.[7]

We must identify what information is required to identify the cell and all the neighbors of the cell in thecomputationalmesh. We can choose to locate thearbitrarypoints anywhere we want for the unstructured grid. A point insertion scheme is used to insert the points independently and the cell connectivity is determined. This suggests that the point be identified as they are inserted. Logicfor establishing new connectivity is determined once the points are inserted. Data that form grid point that identifies grid cell are needed. As each cell is formed it is numbered and the points are sorted. In addition the neighbor cell information is needed.

Adaptive grid[edit]

A problem in solvingpartial differential equationsusing previous methods is that the grid is constructed and the points are distributed in the physical domain before details of the solution is known. So the grid may or may not be the best for the given problem.[8]

Adaptive methods are used to improve theaccuracyof the solutions. The adaptive method is referred to as ‘h’ method if mesh refinement is used, ‘r’ method if the number of grid point is fixed and not redistributed and ‘p’ if the order of solution scheme is increased in finite-element theory. The multi dimensional problems using the equidistribution scheme can be accomplished in several ways. The simplest to understand are the Poisson Grid Generators with control function based on the equidistribution of the weight function with thediffusionset as a multiple of desired cell volume. The equidistribution scheme can also be applied to the unstructured problem. The problem is the connectivity hampers if mesh point movement is very large.

Steady flowand the time-accurate flow calculation can be solved through this adaptive method. The grid is refined and after a predetermined number of iteration in order to adapt it in a steady flow problem. The grid will stop adjusting to the changes once the solution converges. In time accurate case coupling of thepartial differential equationsof the physical problem and those describing the grid movement is required.

Image-based meshing[edit]

Image-based meshingis the automated process of creating computer models forcomputational fluid dynamics(CFD) andfinite element analysis(FEA) from 3D image data (such asmagnetic resonance imaging(MRI),computed tomography(CT) ormicrotomography). Although a wide range of mesh generation techniques are currently available, these were usually developed to generate models fromcomputer-aided design(CAD), and therefore have difficulties meshing from 3D imaging data.

Cell topology[edit]

Usually the cells arepolygonalorpolyhedraland form ameshthat partitions the domain. Important classes of two-dimensional elements include triangles (simplices) and quadrilaterals (topological squares). In three-dimensions the most-common cells are tetrahedra (simplices) and hexahedra (topological cubes). Simplicialmeshes may be of any dimension and include triangles (2D) and tetrahedra (3D) as important instances. Cubical meshesis the pan-dimensional category that includes quads (2D) and hexes (3D). In 3D, 4-sided pyramids and 3-sided prisms appear in conformal meshes of mixed cell type.

Cell dimension[edit]

The mesh is embedded in a geometric space that is typicallytwoorthree dimensional,although sometimes the dimension is increased by one by adding the time-dimension. Higher dimensional meshes are used in niche contexts. One-dimensional meshes are useful as well. A significant category is surface meshes, which are 2D meshes embedded in 3D to represent a curved surface.

Duality[edit]

Dual graphshave several roles in meshing. One can make a polyhedralVoronoi diagrammesh by dualizing aDelaunay triangulationsimplicial mesh. One can create a cubical mesh by generating an arrangement of surfaces and dualizing the intersection graph; seespatial twist continuum.Sometimes both the primal mesh and its dual mesh are used in the same simulation; seeHodge star operator.This arises from physics involvingdivergenceandcurl (mathematics)operators, such asflux&vorticityorelectricity & magnetism,where one variable naturally lives on the primal faces and its counterpart on the dual faces.

Mesh type by use[edit]

Three-dimensional meshes created forfinite element analysisneed to consist oftetrahedra,pyramids,prismsorhexahedra.Those used for thefinite volume methodcan consist of arbitrarypolyhedra.Those used forfinite difference methodsconsist of piecewise structured arrays ofhexahedraknown as multi-block structured meshes. 4-sided pyramids are useful to conformally connect hexes to tets. 3-sided prisms are used for boundary layers conforming to a tet mesh of the far-interior of the object.

Surface meshes are useful in computer graphics where the surfaces of objects reflect light (alsosubsurface scattering) and a full 3D mesh is not needed. Surface meshes are also used to model thin objects such as sheet metal in auto manufacturing and building exteriors in architecture. High (e.g., 17) dimensional cubical meshes are common in astrophysics andstring theory.

Mathematical definition and variants[edit]

What is the precise definition of amesh?There is not a universally-accepted mathematical description that applies in all contexts. However, some mathematical objects are clearly meshes: asimplicial complexis a mesh composed of simplices. Most polyhedral (e.g. cubical) meshes areconformal,meaning they have the cell structure of aCW complex,a generalization of asimplicial complex.A mesh need not be simplicial because an arbitrary subset of nodes of a cell is not necessarily a cell: e.g., three nodes of a quad does not define a cell. However, two cells intersect at cells: e.g. a quad does not have a node in its interior. The intersection of two cells may be several cells: e.g., two quads may share two edges. An intersection being more than one cell is sometimes forbidden and rarely desired; the goal of some mesh improvement techniques (e.g. pillowing) is to remove these configurations. In some contexts, a distinction is made between a topological mesh and a geometric mesh whose embedding satisfies certain quality criteria.

Important mesh variants that are not CW complexes include non-conformal meshes where cells do not meet strictly face-to-face, but the cells nonetheless partition the domain. An example of this is anoctree,where an element face may be partitioned by the faces of adjacent elements. Such meshes are useful for flux-based simulations. In overset grids, there are multiple conformal meshes that overlap geometrically and do not partition the domain; see e.g.,Overflow, the OVERset grid FLOW solver.So-called meshless ormeshfree methodsoften make use of some mesh-like discretization of the domain, and have basis functions with overlapping support. Sometimes a local mesh is created near each simulation degree-of-freedom point, and these meshes may overlap and be non-conformal to one another.

Implicit triangulations are based on a delta complex: for each triangle the lengths of its edges, and a gluing map between face edges. (please expand)

High-order elements[edit]

Many meshes use linear elements, where the mapping from the abstract to realized element is linear, and mesh edges are straight segments. Higher order polynomial mappings are common, especially quadratic. A primary goal for higher-order elements is to more accurately represent the domain boundary, although they have accuracy benefits in the interior of the mesh as well. One of the motivations for cubical meshes is that linear cubical elements have some of the same numerical advantages as quadratic simplicial elements. In theisogeometric analysissimulation technique, the mesh cells containing the domain boundary use the CAD representation directly instead of a linear or polynomial approximation.

Mesh improvement[edit]

Improving a mesh involves changing its discrete connectivity, the continuous geometric position of its cells, or both. For discrete changes, for simplicial elements one swaps edges and inserts/removes nodes. The same kinds of operations are done for cubical (quad/hex) meshes, although there are fewer possible operations and local changes have global consequences. E.g., for a hexahedral mesh, merging two nodes creates cells that are not hexes, but if diagonally-opposite nodes on a quadrilateral are merged and this is propagated into collapsing an entire face-connected column of hexes, then all remaining cells will still be hexes. Inadaptive mesh refinement,elements are split (h-refinement) in areas where the function being calculated has a high gradient. Meshes are also coarsened, removing elements for efficiency. Themultigrid methoddoes something similar to refinement and coarsening to speed up the numerical solve, but without actually changing the mesh.

For continuous changes, nodes are moved, or the higher-dimensional faces are moved by changing the polynomial order of elements. Moving nodes to improve quality is called "smoothing" or "r-refinement" and increasing the order of elements is called "p-refinement." Nodes are also moved in simulations where the shape of objects change over time. This degrades the shape of the elements. If the object deforms enough, the entire object is remeshed and the current solution mapped from the old mesh to the new mesh.

Research community[edit]

Practitioners[edit]

The field is highly interdisciplinary, with contributions found inmathematics,computer science,andengineering.Meshing R&D is distinguished by an equal focus on discrete and continuous math and computation, as withcomputational geometry,but in contrast tograph theory(discrete) andnumerical analysis(continuous). Mesh generation is deceptively difficult: it is easy for humans to see how to create a mesh of a given object, but difficult to program a computer to make good decisions for arbitrary input a priori. There is an infinite variety of geometry found in nature and man-made objects. Many mesh generation researchers were first users of meshes. Mesh generation continues to receive widespread attention, support and funding because the human-time to create a mesh dwarfs the time to set up and solve the calculation once the mesh is finished. This has always been the situation since numerical simulation and computer graphics were invented, because as computer hardware and simple equation-solving software have improved, people have been drawn to larger and more complex geometric models in a drive for greater fidelity, scientific insight, and artistic expression.

Journals[edit]

Meshing research is published in a broad range of journals. This is in keeping with the interdisciplinary nature of the research required to make progress, and also the wide variety of applications that make use of meshes. About 150 meshing publications appear each year across 20 journals, with at most 20 publications appearing in any one journal. There is no journal whose primary topic is meshing. The journals that publish at least 10 meshing papers per year are inbold.

Conferences[edit]

(Conferences whose primary topic is meshing are inbold.)

Workshops[edit]

Workshops whose primary topic is meshing are inbold.

  • Conference on Geometry: Theory and Applications CGTA
  • European Workshop on Computational Geometry EuroCG
  • Fall Workshop on Computational Geometry
  • Finite Elements in Fluids FEF
  • MeshTrends Symposium(in WCCM or USNCCM alternate years)
  • Polytopal Element Methods in Mathematics and Engineering
  • Tetrahedron workshop

See also[edit]

References[edit]

  1. ^Anderson, Dale (2012).Computational Fluid Mechanics and Heat Transfer, Third Edition Series in Computational and Physical Processes in Mechanics and Thermal Sciences.CRC Press. pp. 679–712.ISBN978-1591690375.
  2. ^Winslow, A (1966). "Numerical Solution of Quasi-linear Poisson Equation".J. Comput. Phys.1(2): 149–172.doi:10.1016/0021-9991(66)90001-5.
  3. ^Thompson, J.F.; Thames, F.C.; Mastin, C.W. (1974). "Automatic Numerical Generation of Body-fitted Curvilinear Coordinate System for Field Containing any Number of Arbitrary Two-Dimensional Bodies".J. Comput. Phys.15(3): 299–319.Bibcode:1974JCoPh..15..299T.doi:10.1016/0021-9991(74)90114-4.
  4. ^Young, David (1954)."Iterative methods for solving partial difference equations of elliptic type".Transactions of the American Mathematical Society.76(1): 92–111.doi:10.2307/1990745.ISSN1088-6850.JSTOR1990745.
  5. ^Steger, J.L; Sorenson, R.L (1980)."Use of hyperbolic partial differential equation to generate body fitted coordinates, Numerical Grid Generation Techniques"(PDF).NASA Conference Publication 2166:463–478.
  6. ^Venkatakrishnan, V; Mavriplis, D. J (May 1991). "Implicit solvers for unstructured meshes".Journal of Computational Physics.105(1): 23.doi:10.1006/jcph.1993.1055.hdl:2060/19910014812.S2CID123202432.
  7. ^Weatherill, N.P (September 1992). "Delaunay triangulation in computational fluid dynamics".Computers & Mathematics with Applications.24(5–6): 129–150.doi:10.1016/0898-1221(92)90045-j.
  8. ^Anderson, D.A; Sharpe H.N. (July 1993)."Orthogonal Adaptive Grid Generation with Fixed Internal Boundaries for Oil Reservoir Simulation".SPE Advanced Technology Series.2.1(2): 53–62.doi:10.2118/21235-PA.

Bibliography[edit]

External links[edit]

Mesh generators

Many commercial product descriptions emphasize simulation rather than the meshing technology that enables simulation.

Multi-domain partitioned mesh generators

These tools generate the partitioned meshes required for multi-material finite element modelling.

  • MDM(Multiple Domain Meshing) generates unstructured tetrahedral and hexahedral meshes for a composite domain made up of heterogeneous materials, automatically and efficiently
  • QMDM(Quality Multi-Domain Meshing) produces a high quality, mutually consistent triangular surface meshes for multiple domains
  • QMDMNG,(Quality Multi-Domain Meshing with No Gap), produces a quality meshes with each one a two-dimensional manifold and no gap between two adjacent meshes.
  • SOFA_mesh_partitioning_toolsgenerates partitioned tetrahedral meshes for multi-material FEM, based on CGAL.
Articles
Research groups and people
Models and meshes

Useful models (inputs) and meshes (outputs) for comparing meshing algorithms and meshes.

CAD models

Modeling engines linked with mesh generation software to represent the domain geometry.

Mesh file formats

Common (output) file formats for describing meshes.

Mesh visualizers
Tutorials