Presentation is loading. Please wait.

Presentation is loading. Please wait.

UNSTRUCTURED MESH GENERATION Issues in Unstructured Mesh Generation by Gopal Shevare ppts are based on Lecture notes by T J Barth (1994)

Similar presentations

Presentation on theme: "UNSTRUCTURED MESH GENERATION Issues in Unstructured Mesh Generation by Gopal Shevare ppts are based on Lecture notes by T J Barth (1994)"— Presentation transcript:

1 UNSTRUCTURED MESH GENERATION Issues in Unstructured Mesh Generation by Gopal Shevare ppts are based on Lecture notes by T J Barth (1994)

2 UNSTRUCTURED MESH GENERATION Un-structured Grid Unstructured Grids and Application of Graph Theory Delaunay Triangulation and Voronoi diagrams Methods of Delaunay Triangulations Method of Non- Triangulation CONTENTS

3 UNSTRUCTURED MESH GENERATION Grid Generation is the gateway for CAE. Grids connects various simulations for designing a products Make grid generation easy and user friendly. If possible make it redundant Grid generation now encompasses each and everything from creating / importing geometry to export a single file that any solver may need irrespective what simulation code is simulating (Boundary Fitted Coordinate) BFC system is not grid generation! Grid generation has become interdisciplinary area where in CAGD, Computational Geometry, CFD, Computer Graphics experts contribute to make a package User may require execution of around 60 to 100 tasks before grid gets ready Present day simulations use millions of grid points Grids are a commodity. There is an ISO format for grids Grid Generation Present Status

4 UNSTRUCTURED MESH GENERATION Classification of Grids CartesianStructuredUnstructured Mono-block BFC Multi-BlockTriangulation /Tetrahedral Quadrilaterals Hexahedral Hybrid Quad tree / oct -tree Patched GridsOverlapping GridsBFC+ Triangulation Triangulation+ Quadrilaterals Triangulation+ Cartesian Adaptive Gridsmore points where solution changes rapidly Surface grid generationgrids on curved surface Elliptic Grid Generation systemsgrids produced by solving elliptic PDEs Orthogonal systemsgrids lines are orthogonal to each other Moving gridsgrid points move with time Composite overset gridmultiple grids overlapping Cartesian Adaptive Gridsgrid lines along x, y and z axes Hybrid gridsmore than one the of grids coexisting

5 UNSTRUCTURED MESH GENERATION Transform a given two- dimensional domain in to a rectangle (and three-dimensional domain in to a box) by a suitable affine transformation. Structured Grid Mould arbitrary shaped physical domain (x, y, z) in to a rectangular shaped computational domain ( , , ζ ) ? Find three functions f, g and h such that  = f (x, y, z),  = g (x, y, z), and ζ = h(x,y,z). Lines corresponding to constant values of  = i  = i,  = j  = j, and ζ = k  ζ = k for i = 1 to i max, j = 1 to j max and k = 1, k max in (x, y, z) plane are grid lines in (x,y, z) plane and intersection of these points gives (a) grid points (i, j) and also (b) quadrilateral cells.  = f (x, y) and  = g (x, y).

6 UNSTRUCTURED MESH GENERATION Why Triangulation ? Triangles only quadrilaterals only polygons Mixture of triangles And quadrilaterals Theory of triagulations is highly developed Higher dimensions pose no problems Triangle is the polytope in 2D Simple to deal with in 2D And also on surfaces Easy to use in numerical calculations Why Triangulation & Tetrahedrons

7 UNSTRUCTURED MESH GENERATION View #2 Fill a given domain with simple shapes such as triangles, quadrilaterals, etc. so that the given domain is fully covered. Emphasis is on cells (triangles in the present case); there are grid points but no continuous lines or what can be called as grid lines. Unstructured Grids tv1v1 v2v2 v3v3 Remarks 1275Good triangle 2215area < 0 3237overlap 4584degenerate edge 5267duplicate edge? 64910continuum? 1 2 3 4 5,8 6 7 9 10 Structure imposed on grid points

8 UNSTRUCTURED MESH GENERATION Graphs and Meshes Graph theory directly affects the algorithms in unstructured grids However they do not depend on the method of generating triangles Planar graph –graph without self loop or parallel edges –Most important graph theory result is Euler formula which relates no of vertices, edges and faces of polyhedron (closed surface) N(f) = n(e) – n(v) + 2Euler formula The polyhedron is flattened to 2D space – one face is at infinity 3 1 1 2 2 3 4 4 © Zeus Numerix 25 th Jan -2006 Unstructured Meshes and Graphs

9 UNSTRUCTURED MESH GENERATION Now there are two types of edges –Internal – edges : shared by two faces –Boundary edges : shared by only one face Edges for the face at infinity (boundary edges) (you may consider that face at infinity is absent) Edges binding regions, (holes) embedded in the domain (not a part of the domain) Euler formula becomes n(f) + n(v) = n(e) + 1 - n(h)Eqn. (1) But no of edges and no of faces are related to each other 2 n(e) interior + n(e) boundary max d(f) =  i n(f) i =3 No of pointers from edges to triangles No of pointers from triangles to edges Eqn. (2) Unstructured Meshes and Graphs

10 UNSTRUCTURED MESH GENERATION Subtracting 2 time Eqn (1) from Eqn (3) n(f) = 2 n(v) - n(e) boundary -2 + 2n(h) No of faces is approx. 2 times no of vertices Substituting for n(f) in Eqn. (1) n(e) = 3 n(v) - n(e) boundary - n(e) - 3 + 3n(h) No of edges is approx. 3 time no of vertices! What can happen if n(f)  2 n(v) - n(e) boundary -2 + 2n(h)or n(e)  3 n(v) - n(e) boundary - n(e) - 3 + 3n(h) Unstructured Meshes and Graphs

11 UNSTRUCTURED MESH GENERATION Basic Definitions Dirichlet Tessellation (Also called Voronoi Regions) The Dirchlet tessellation of a set of points is the pattern of convex regions, each being closer to some Point P in the point set than any other point in the set The edges of Voronoi polygons comprise the diagram. The idea of Voronoi regions naturally extends to 3D point edge

12 UNSTRUCTURED MESH GENERATION Basic Definitions - Duality Duality of Graph Let G be a planer graph of vertices, edges and cells then G Dual the D ual graph of G exhibits the following properties: If an edge separates two faces f i and f j in G, then the edge, G Dual connects two vertices associated with faces f i and f j G Dual can be formed by (a)Medium segments, (b)Centroid segments, (c)Dirichlet tessellation Face in G vertex in G Dual corresponds to Face in G Face in G Dual corresponds to vertex in G Vertex in G Edge in G Edge in G Dual corresponds to edge in G

13 UNSTRUCTURED MESH GENERATION Triangulation  Definition : The triangulation of a point set is defined as the dual of the Voronoi diagram of the set.  In 2D triangulation is formed by connecting if and only if their Voronoi regions a common border  If no four or more points are cocircular, then vertices of the Voronoi are circumcentres of triangles. triangle Voronoi diagram

14 UNSTRUCTURED MESH GENERATION Let use define N 0 = n(v),N 1 = n(e),N 2 = n(f),N 3 = n(  ) Verticesedgesfacesvolume Generalised Euler formula is d  (-1) k N k = 0 (Euler formula in R d ); by definition N -1 = 1 k = -1 For the surface of polyhedron in 3D, -1 + N 0 – N 1 + N 2 – 1 = 0orN(f) + N(v) = N(e) +2 For polyhedral volumes n(f) + n(v) = n(e) + n(  ) Like 2D case this formula does not take care of boundary effects because it is valid for four-dimensional polytope Unstructured Meshes and Graphs

15 UNSTRUCTURED MESH GENERATION Geometric data :(x, y) coordinates of vertices Connectivity data : Vertex basedv-v, v-e, v-f Edge basede-v, e-e, e-f Face basedf-v, f-e, f-f All 9 relations are not stored because Large RAM is required Consistency checks must be carried out on relations Only some relations are stored. All the remaining relations are derived from the stored relations The stored connectivity relations are called data structures: Some well-known data structures:Finite element data structure. Edge structure. Out-degree structure. Quad-edge structure. Winged-edge data structure. Data Structures

16 UNSTRUCTURED MESH GENERATION Data Structures Storing of Structured grids in unique Edges in 3D are always formed by (i+1, j, k) and (i, j, k) etc…. Faces are always formed by (i, j, k), (i+1, j, k), (I, j+1, k) and (i+1, j+1, k)… How to Store Unstructured Meshes? Collection of ensure does not ensure edges are connected Collection of faces does not ensure faces form a 3D cell and that faces not intersecting.

17 UNSTRUCTURED MESH GENERATION Data Structures Standard FE data structure T i  V l, V m, V n Sequence of vertices matters f-v connectivity Naturally extend to 3D Extensively used in EFM of solids and fluids Edge structure E i  F i, F j For planar meshes Edge is list of pair of vertices Ideal for FVM Out-degree structure V l  V m, V n, V o But this is not v-v connectivity Max three out degree required Quad-edge structure E i-1/2  E i+1/2, E j, E k Edges are stored as a pair of directed edges Stores vertex at the origin Stores previous and next edge

18 UNSTRUCTURED MESH GENERATION Graph Operations on Unstructured Grids Planar Graph with Minimum Out-Degree Theorem: Every planar graph has a 3 bounded orientation; i.e. each edge of a planar graph can be assigned a direction such that the maximum number of edges pointing outward from any vertex is less than three Proof. Find a vertex such that incident boundary edges that connected to at most maximum two. Other boundary vertices and any number of interior edges. Such a vertex is called reducible vertex. It can be proved that at least two vertices always exit The two edges connected to boundary vertices are directed outward All the remaining edges are directed inward The directed edges are removed from the graph The process is repeated on the remaining graph

19 UNSTRUCTURED MESH GENERATION Planar Graph with Minimum Out-Degree : Graphically explained Unstructured Meshes and Graphs

20 UNSTRUCTURED MESH GENERATION Graph Ordering Techniques Ordering can have a large influence on CPU time and RAM requirements. Vertices close to each other should be stored close to each other Most of the grid generation algorithms produce poor ordering If a Boolean matrix of size [N x N] matrix stores connectivity of vertices such that (i,j) th entry is 1 if i th and j th vertices are connected, many 1s should be lying close to diagonal of the matrix 11 11 111 111 11 11 1 111 111 111 11 111 11 1111 1111 11111 11 111 11 1 Ordered to minimize bandwidthAs obtained form the algorithm Unstructured Meshes and Graphs

21 UNSTRUCTURED MESH GENERATION A typical unstructured mesh Entries of Non-zero Laplacian Laplacian of reordered mesh Cuthill-McKee algorithm

22 UNSTRUCTURED MESH GENERATION Graph Ordering Techniques Rosen Algorithm Step I: Determine the band width and choose a pair of vertices (say i and j) such that i < j Step II: If increasing i or decreasing j reduces band width then (increase i or decrease j and goto Step I) Step III: If increasing i and decreasing j does not change the band width then (increase I or decrease j and goto Step I) Comments Produces good ordering but is very expensive especially for large graphs Unstructured Meshes and Graphs

23 UNSTRUCTURED MESH GENERATION Graph Ordering Techniques Cuthill-McKee Algorithm Step I: Find the vertex with lowest degree Step II: Find all the neighbouring vertices incident on root. Step III: Order the neghbouring vertices by increasing degree Step IV: Choose the neighbour with lowest degree if not previously not ordered. Step V: Continue with Step II till all vertices are ordered. Comments Very efficient Recommended in LD decomposition of matrices by reverse renumbering Unstructured Meshes and Graphs

24 UNSTRUCTURED MESH GENERATION Graph Partitioning Graph partitioning is required for load balancing in parallel computing on unstructured grids Requirements Each ‘processor’ should get as per its capability Communication between ‘processors’ should be minimum. Communication graph This is graph in which vertices are ‘processors’ and edge indicates that they need to share some information between. The colours in the graph show ‘communication cycles’ 1 4 2 3 1 3 2 4 Mesh partitioned Communication graph Communication cycles 1 st cycle: 1-4 & 2-3 2 nd cycle: 1-2, 3-4 3 rd cycle: 1-3 Unstructured Meshes and Graphs

25 UNSTRUCTURED MESH GENERATION Graph Partitioning Vizing’s theorem Any graph of maximum degree  (i.e. number of edges incident on vertex) can be coloured with using n colours such that  <= n <=  +1 Cost of Communication is A + Bm, where A – time required to initiate the message B – rate of data transfer and m – length of the message n Total cost =  (A + Bm) 1 To reduce cost (i) reduce  (reduce number of messages, n), but 1 <= n < = P-1 or (ii) reduce the length of message Partitioning for minimum  Partitioning for minimum message length Unstructured Meshes and Graphs

26 UNSTRUCTURED MESH GENERATION Methods of Graph Partitioning – Coordinate bisection Step I: Sort the face centroids either horizontally or vertically Step II: Separate the triangles such that no of faces are the same Step III: Repeat Step II recursively Comment Scheme is efficient in partitioning the triangulation. Partition is sub-optimal as the message length is not minimum Unstructured Meshes and Graphs

27 UNSTRUCTURED MESH GENERATION Methods of Graph Partitioning – CutHill-McKee Algorithm Step I: Produce a dual of given mesh Step II: Reorder the dual graph Step III: Set the partition at the median or closet to the median Comment Scheme is efficient in partitioning the triangulation. Reduces number of sub-graphs Tends to produce sub-optimal as the message length is not minimum Unstructured Meshes and Graphs

28 UNSTRUCTURED MESH GENERATION Methods of Coordinate Bi-section

29 UNSTRUCTURED MESH GENERATION Methods of CutHill-McKee Algorithm the message length is not minimum

30 UNSTRUCTURED MESH GENERATION Methods of Spectral Partitioning the message length is not minimum








38 Properties of Triangulation 1. Uniqueness: The triangulation is unique, assuming that no four sites are circular. 2. The circumcircle criteria A triangulation for N > 2 site is if and only if the circumcircle of every interior triangle is point- free Point free interior Interior is not empty A A B D C D C B Incircle test for the triangle Fails if ∠ DCB + ∠ DAB ≤ π Incircle test for the triangle is true if ∠ DCB + ∠ DAB ≥ π A D C B Since interior angles of quadrilaterals sum to 360 degrees, swapping diagonal can be used to produce triangle

39 UNSTRUCTURED MESH GENERATION 3. Edge circle property A triangulation of sites is if and only if there exists some circle passing through the end points of each and every edge which is point free Properties of Triangulation 4. Edge circle property for constrained triangulation A triangulation of sites is constrained triangulation if for each and every edge there exists some circle passing through its end points containing other site in the triangulation which is visible to the edge Constrained edge Point not visible to edge

40 UNSTRUCTURED MESH GENERATION Properties of Triangulation 4. Equiangularity property triangulation maximises the minimum angle of the triangulation. (Hence Delauanay triangulation  Maxmin triangulation. The property is valid globally and locally. The property can be used to produce Deluanay triangulation by swapping of diagonal of convex quadrilateral. Minimum angle Non- triangulation made Edge swapping can not be used in concave quadrilaterals Only one edge is acceptable

41 UNSTRUCTURED MESH GENERATION Properties of Triangulation 5. Minimum Containment property triangulation minimises the maximum containment circle over entire triangulation Containment circle is the smallest triangle enclosing the three vertices of a triangle Containment circle is (i) the circumcircle if the triangle is acute (ii) circle with diameter equal to the largest side if triangle is obtuse. Containment circle  circumcircle for acute triangles Containment circle  circle with diameter equal to the longest edge

42 UNSTRUCTURED MESH GENERATION 6. Nearest neighbour Property In triangulation an edge is obtained by joining the nearest neighbour But the nearest neighbour edge is one of the many edges Properties of Triangulation Nearest neighbour edge 7. Minimal roughness Property Suppose a property f i is given at all vertices V i i = 1 to N Any triangulation will produce piecewise linear interpolation surface for this data triangulation minimises the integral given by  [(  f/  x) 2 + (  f/  y) 2 ] dx dy for any f Non-nearest neighbour edge

43 UNSTRUCTURED MESH GENERATION Divide and conquer algorithm Incremental insertion algorithm –Bowyer algorithm –Watson algorithm –Green and Sibson algorithm Global edge swapping algorithm. Advancing front algorithm Graded triangulation algorithm Generation of Triangulation

44 UNSTRUCTURED MESH GENERATION Divide and conquer algorithm Overall algorithm Sites are assumed to be pre-specified Partition the sites in to Left (L) and right (R) half planes Triangulate each half recursively Merge each half recursively Points to note while merging Only L-R or R-L edges are created No new L-L or R-R edges do not get generated as L-triangulation or R-triangulation is Delaunany. But the merging may lead to deleting L-L and R-R edges Merge algorithm Connect vertices with minimum y in the left and right triangulation as the first guess to the lowest common tangent (LCT) of the L and R triangulations contd….. L triangulation R triangulation First guess for lowest common tangent (LCT) Generation of Triangulation

45 UNSTRUCTURED MESH GENERATION Generation of Triangulation Merge algorithm Allow a ‘bubble’ passing through LCT (edge AB) to rise till hits a point (C) from either L or R triangulation. From the new edge CB or CA Use CB as the LCT and use rising bubble to hit a new point on either L or R triangulation Delete the L-L and/or R-R edges to complete the merge either after every creation of LCT or after all LTC are obtained. C A B rising bubble new edge

46 UNSTRUCTURED MESH GENERATION Incremental Insertion Algorithms - Common Features New points are added to existing triangulation one by one New points are assumed to lie in the existing triangulation All incremental insertion algorithms start with a phantom triangle large enough to enclose all the given points The edges formed by these points, if given as a part of input data is initially ignored. These edges will be built later after all the points are inserted. Every insertion of new point requires locating (i) a triangle or (ii) circumcircles containing this point. In mesh adaptation the location is known. In initial triangulation some search is required Phantom triangle Points to be inserted Edge ignored

47 UNSTRUCTURED MESH GENERATION Search is is carried out by using either quad- tree or split-tree data structures as they give 0(NlogN) complexity Alternately, ‘walking’ in the direction towards new vertex using graphs can also be used as these algorithms are simpler. A worst case in this gives 0(N 2 ) complexity Changing the connectivity of vertices to accommodate criterion. This may require at worst 0(N 2 ) changes to the data structure. Remove the phantom triangle and the recreate boundary or edges given as input Normally the triangles thus produced require some smoothening Triangle containing the new point Circumcircles containing the new point new point Incremental Insertion Algorithms

48 UNSTRUCTURED MESH GENERATION Incremental Triangulation - Bowyer’s Algorithm Assume some triangulation exists; Insert a new point (site) into Voronoi diagram Find out all the vertices in the Voronoi diagram closer to new point than the existing points (sites). Delete these vertices (shown as v 1, v 2, v 3 and v 4 ) Delete the edges connecting the vertices if both of them have been deleted Produce the new vertices and the edges by calculating the vertices Join the sites to form the triangulation by joining the sites separated by an edge Existing points new points Voronoi diagram v1v1 v2v2 v3v3 v4v4

49 UNSTRUCTURED MESH GENERATION Incremental Triangulation - Watson’s Algorithm Assume some triangulation exists; Insert a new point into existing triangles Find the triangles in which the new point lies. Staring with this triangles perform a tree search to find all triangles with circumcircle containing the new point This produces a polygonal cavity around the new point. Connect the new point with vertices of the polygonal cavity Swap edges if triangles are not Delaunay

50 UNSTRUCTURED MESH GENERATION Global edge swapping by Lawson Choose an interior edge Select the quadrilateral with the edge as a diagonal Swap to satisfy Delaunay criterion Continue swapping edges till there is no swapping

51 UNSTRUCTURED MESH GENERATION Incremental Triangulation - Green and Sibson Algorithm Assume some triangulation exists; Insert a new point into existing triangles Find the triangles in which the new point lies. Create three additional edges by connecting the new point to the vertices of this triangle If the new point is on an edges, delete that and make four edges. The newly connected edges are always But the old edges do not remain Delauany; swap these edges recursively

52 UNSTRUCTURED MESH GENERATION Non- Methods of Triangulation These methods may or may not produce triangulation Triangulation is NOT essential from the point of view of FVM/FEM approximations It is essential that angles are not too close to 0 or 180 degrees are avoided Advancing Front Triangulation Min-Max Triangulation Greedy Triangulation Data Dependent Triangulation Steiner Triangulation Stretched Triangle Refinement

53 UNSTRUCTURED MESH GENERATION 1.This method is particularly suited for the boundary representation of domains. 2.Boundary is discretised based upon the number of triangles required in the domain. 3.Initial front is a set of line segments defining the boundary completely. 4.The edge to be deleted from the front is chosen based upon some criteria. 5.For the edge to be deleted a)Select the trial point position. b)Search of any already existing point within a certain proximity of the trial point. If any such point exists then it becomes trial point. c)Determine whether element formed with the trial point crosses any edge. If yes, select a new trial point and try again. go to (b) 6.Add the new point, edges and triangles to the respective lists. 7.Delete base edge from the front and add new edges to the front. 8.If the front is non-empty, go to 4 Advancing Front Algorithm

54 UNSTRUCTURED MESH GENERATION. Boundary is discretised based upon the number of triangles required in the domain. Initialize front as a set of line segments defining the boundary completely Front is advanced in to the domain producing triangles as it advances Front advances in a variety of ways depending on the angle between two consecutive edges of the font: three possibilities arise Determine whether element formed with the trial point crosses any edge. If yes, select a new trial point and try again. Add the new point, edges and triangles to the respective lists. Delete base edge from the front and add new edges to the front till front is empty Non- methods of triangulation Deleting vertices Deleting edges Adding vertices Adding edges Included angle 12Nil1  < 30 1212 30 <  < 120 Nil112  < 120 New front Trial point    Advancing Front Algorithm

55 UNSTRUCTURED MESH GENERATION. Advantages: Method can be used for surfaces and volume though a lot of modification is required Anisotropic grids can be produced Disadvantages Grid quality is not high Advancing fronts collide to produce poor grids Non- methods of triangulation Front Advancing from airfoils surface Front Advancing triangulation completed Advancing front Algorithm

56 UNSTRUCTURED MESH GENERATION Non- methods of triangulation MinMax Triangulation Uses Lawson’s edge swapping algorithm for convex quadrilateral Minimises maximum angle Algorithm is guaranteed to converge in finite number of operations Green Sibson algorithm Maxmin algorithm can be modified to execute Minmax algorithm Minmax is useful in many CFD simulations Basic steps Select an edge of a convex quadrilateral Replace it if does not satisfy minmax test. Use the edges recursively to complete forward and backward propagation

57 UNSTRUCTURED MESH GENERATION For some simulations equilateral triangular is not the choice of triangulation (e.g. viscous flow simulations) produces equilateral triangulation Stretched triangulation can be considered as a special case of Steiner triangulation Steiner point is inserted based stretching property demanded Algorithm Choose one dimensional stretching function  r = f(distance perpendicular to boundary) Choose an existing triangulation Find a point on the boundary (v boundary ) closed to each vertex (v) in the triangulation Store the distance between these two pints as S Choose a major given by Maximum dimension of the triangle projected along the perpendicular direction to boundary divided by  r Stretched Triangulation

58 UNSTRUCTURED MESH GENERATION Here triangles never undoes what it has done before! Keep adding edges, but do not check quality of triangulation Triangulation satisfies Euler equation Normally used for producing triangle with shortest edge length Basic steps Start with initial triangulation with boundary edges listed Connect all the vertices to all other vertices to form additional edges Order the edges according to their length Choose the smallest edge If it does not interest any edge triangulation add to edges of the triangulation Keep choosing the next edge form the set of ordered edges till Euler equation is satisfied Greedy Triangulation

59 UNSTRUCTURED MESH GENERATION Best triangulation for the given data defined at vertices is required Best edge is defined based either (a) on value of the jump in normal derivative (JND); the best edge has least jump or (b) Included angle between normals (ABN) If equation for property P with equations defining these properties as P 1 = a 1 x + b 1 y + c 1 and P 2 = a 2 x + b 2 y + c 2 then JND cost function = | n x (a 1 – a 2 ) + n y (b 1 – b 2 ) + n z (c 1 – c 2 ) | and ABN cost function = (a 1 a 2 + b 1 b 2 + 1)/  [(a 1 2 + b 1 2 +1)(a 2 2 + b 2 2 + 1)] Edges are swapped to minimise JND or ABN summed up over all edges Data dependent Triangulation

60 UNSTRUCTURED MESH GENERATION By definition Steiner triangulation is any triangulation that adds additional sites to an existing triangulation to improve its measure of quality Every Steiner triangulation requires a strategy to insert a point Some of the strategies are: Equilateral triangles – Good for Inviscid flows Smooth area variation Triangles with minimum ration of circumcircle to incircle diameters – Good for viscous flows Circumcircle Refinement Place the new site in a position that guaranties no other site in the triangulation can lie Closer than the radius of the circumcircle. This produces sites as far as possible as possible form existing sites Algorithm Construct triangulation of boundary points Compute the quality of each triangle such (e.g. area / ration of area/(ava. Area of neighbouring triangles, etc.) If quality of all triangles is acceptable stop triangulation Otherwise choose the worst triangle and insert a point at its circumcentre and produce new triangulation Steiner Triangulation

61 UNSTRUCTURED MESH GENERATION Motivation: In physical problem like high speed flows over bodies the mesh is required to be adapted in particular direction i.e more number of triangles are required around the boundary. triangulation, criterion for insertion of points is not addressed. It is triangulation scheme with a control on where to insert points Basic Concept Produce a mesh with only boundary points. This becomes background mesh Each grid point on the boundary carries an averaged length of the edges incident on it. This value is called (point distribution function) ‘pdf’ 2 pdf = (  length i )/2 i=1 Non- methods of triangulation Point on the boundary length 1 length 2 Graded Triangulation (Automatic triangulation)

62 UNSTRUCTURED MESH GENERATION The length of the new trial point from the edge of front is calculated as –. L =  *L1 + ß*L2 +  *L3. where ( , ß,  ) are called barycentric coordinates. and  + ß +  = 1 L1, L2, L3 are mesh densities at nodes of the triangle containing the trial point. Mesh density at any node is defined as the mean of the lengths of the edges meeting at that point. The barycentric coordinates ( , ß,  ) are the ratios of the area of the three triangles formed by the trial point and the background triangle to the area of the background triangle. Graded Triangulation (Automatic triangulation) Non- methods of triangulation

63 UNSTRUCTURED MESH GENERATION Every triangle is considered for inserting a point; its pdf is calculated using barycentric coordinates of triangle : Li = (A1*L1 + A2*L2 + A3*L3), where (A1/A, A2/A, A3/A) are called barycentric coordinates such that (A1/A + A2/A + A3/A) = 1 A point is accepted for insertion if the following two conditions are met (i) pdf point >  (minimum of pdf of the vertices) (ii) pdf point >  (minimum of pdf defined at the neighbouring points) Use the circumcircle criteria to create triangle A1A1 A3A3 A2A2 Non- methods of triangulation Graded Triangulation (Automatic triangulation)

Download ppt "UNSTRUCTURED MESH GENERATION Issues in Unstructured Mesh Generation by Gopal Shevare ppts are based on Lecture notes by T J Barth (1994)"

Similar presentations

Ads by Google