ccopyright by Xiangyang Li 1999

Size: px
Start display at page:

Download "ccopyright by Xiangyang Li 1999"

Transcription

1 DYNAMIC LOAD BALANCING FOR PARALLEL ADAPTIVE MESH REFINEMENT BY XIANGYANG LI B.Eng., Tsinghua University, BeiJing, 1995 B.Eco., Tsinghua University, BeiJing, 1995 THESIS Submitted in partial fulllment of the requirements for the degree of Master of Science in Computer Science in the Graduate College of the University of Illinois at Urbana-Champaign, 1999 Urbana, Illinois

2 ccopyright by Xiangyang Li 1999

3 Dynamic Load Balancing for Parallel Adaptive Mesh Renement Xiangyang Li, M.S. Department of Computer Science University of Illinois at Urbana-Champaign, 1999 Shang-Hua Teng, Advisor A key step in the nite element method is to generate a high quality mesh that is as small as possible for an input domain. Several meshing methods and heuristics have been developed and implemented. Methods based on advancing front, Delaunay triangulations, and quadtrees/octrees are among the most popular ones. Advancing front uses simple data structures and is ecient. Unfortunately, in general, it does not provide any guarantee on the size and quality of the mesh it produces. On the other hand, the sphere-packing based Delaunay methods generate a well-shaped mesh whose size is within a constant factor of the optimal. Adaptive mesh renement is a key problem in large-scale numerical calculations. The need of adaptive mesh renement could introduce load imbalance among processors, where the load measures the amount of work required by renement itself as well as by numerical calculations thereafter. We present a dynamic load balancing algorithm to ensure that the work for renement and computation thereafter are balanced while the communication overhead (including the overhead caused by moving submeshes around) is minimized. The main ingredient of our method is a technique for the estimation of the size and the element distribution of the rened mesh before we actually generate the rened mesh. Base on this estimation, we can reduce the dynamic load balancing problem to a collection of static partitioning problems, one for each processor. In parallel each processor could then locally apply a static partitioning algorithm to generate the basic units of submeshes for load rebalancing. We then model the communication cost of moving submeshes by a condensed and much smaller subdomain graph, and apply a static partitioning algorithm to generate the nal partition. iii

4 TO MY FAMILY iv

5 Acknowledgements First and foremost, I would like to thank Professor Shang-Hua Teng for being a wonderful advisor. His insights and invaluable help and guidance presented in this thesis enlightened me in various aspects of the work. I would like to acknowledge the constant assistance and encouragements from my best friends. The special thanks goes to Alper Ungor, who was also conducting research in the area of the mesh generation algorithm, for his educating comments and perfect-pursuing habits. The discussion with him not only enhances my research abilities, but also improves my English a lot. I also thank Marcia, my ocemate and friend for making the oce so nice place to stay. I would also like to thank the Department of Computer Science and the CSAR project at the University of Illinois for the computing resources. Last but not least, my parents, my wife, and my daughter deserves the particular recognition for being the driving force in my life. I thank my wife Chen Min for her love and support, my parents and sister for their unconditional encouragement and belief in my ongoing studies and my sweet daughter Sophia for ensuring that there was no a dull moment when writing this thesis. v

6 Table of Contents Chapter 1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Mesh Generation Graph Partition Parallel Mesh Renement and Load Balancing Thesis Outline Mesh Generation : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Introduction Structured and Unstructured Mesh Quality of Mesh Control Space Geometric Features Numerical Spacing Control Spacing Function Conformality and Size of Mesh Delaunay Triangulation Mesh Generation Method Advancing Front Methods Sphere Packing Methods Graph Partition : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Introduction Background and Good Separators Graph Partition Algorithm Level-structure Partitioning The Spectral Partitioning Algorithm Geometric Approach A Multilevel Algorithm Load Balancing : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Introduction Dynamic Balanced Quadtrees Modeling Adaptive Renement with Dynamic Quadtree Reduce Dynamic Load Balancing to Static Partitioning Subdomain Size Estimation vi

7 4.5.1 Aected Boxes of Rening a Box Size Estimation of Balanced Quadtree Sampling Boxes from T Subdomain Partitioning Subdomain Redistribution Remeshing Unstructured Meshes Conclusions : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 56 Bibliography : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 58 Vita : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 63 vii

8 List of Figures 2.1 A typical example of a unstructured mesh The Delaunay mesh from a random point set The 16-way partition of its' vertices The 16-way partition of its' triangle elements A balanced quadtree T in two dimensions, and a 4-way partition quadtree T 0 after rening T, and T after balancing T 0. (a): assume the splitting depth of b 1, b 2, b 3 and b 4 are 1, 1, 2 and 2 respectively. (b): assume after balancing T 0, we maintain the current partition of T The two templates for splitting boxes in region(b), and how the renement of b inuence the splitting of leaf-boxes contained in region(b) The three scenarios for two edge neighbor leaf-boxes. (a): (b; b 1 ) = 1; (b): (b; b 1 ) = 0; (c): (b; b 1 ) =? The ve scenarios fro two corner neighbor leaf box b 1 and b. (a): (b; b 1 ) = 2; (b): (b; b 1 ) = 1; (c): (b; b 1 ) = 0; (d): (b; b 1 ) =?1; (e): (b; b 1 ) =? an example of the pressures of leaf-box b, and the examples of the edge-boxes, corner-boxes, center-boxes A typical example of subdomain partition for T Constructing subdomain graph from subdomain partition An example of subdomain redistribution and renement of subdomain viii

9 Chapter 1 Introduction Many problems in computational science and engineering, geographic information system, and computer graphics are based on structured or/and unstructured meshes in two or three dimensions. The meshes can be quite large, often containing millions of elements. The size of meshes is usually determined by the size of the machine available to solve the problem, and the accuracy requirement of the problem. An essential step in numerical simulation is to nd a proper discretization of a continuous domain. This is the problem of mesh generation [4, 40], which is a key component in computer simulation of physical and engineering problems. The following six basic steps are usually used to conduct a numerical simulation by nite element, nite dierence, and nite volume methods. 1. Mathematical modeling: dene the continuous domain and partial dierential equations (PDE) over the domain that accurately model the physical and engineering problem; 2. Geometric modeling: approximate the continuous domain with a discrete description. 3. Mesh generation: decompose the interior of the domain into a mesh M of simple and \well-shaped" elements such as boxes and simplices. 4. Numerical approximation: construct a system of linear or non-linear equations over M for the governing PDEs. 5. Numerical solution: solve the system of equations and estimate the error of the solution; 1

10 6. Adaptive renement: based on the error estimation, if necessary, rene the mesh and repeat the above steps 5 and 6 over the rened meshes. 1.1 Mesh Generation Meshing [4, 40, 26, 27, 28, 43, 44] can be dened as the process of breaking up a physical domain into smaller sub-domains (elements) in order to facilitate the numerical solution of a partial dierential equation. While meshing can be used for a wide variety of applications, such as solid modeling, computer aided design, graphical rendering, and scientic computation. The principal application of interest is the nite element method. For problems with complex geometry boundaries and with solutions that change rapidly, we need to use an unstructured mesh with a varying local topology and spacing in order to reduce the problem size. A good unstructured meshing algorithm uses elements of properly chosen size and shape that adapt to the complex geometry and solution accuracy. In doing so, it generates meshes that are numerically sound and that are also as small as possible. Several meshing methods and heuristics have been developed, implemented, and applied to various applications such as steady state and transient compressible inviscid ow simulations. Over the years, several meshing methods such as those based on advancing front, Delaunay triangulations, and quadtrees/octrees have become popular due to their eectiveness in practical applications. However, these methods do not come with equal strengths. For example, advancing front [6, 30, 31] uses simple data structures and is ecient and relatively easy to implement. It oers a high quality of point placement strategy and the integrity of the boundary. Unfortunately, it does not provide any general guarantee on the size and quality of the mesh it produces. On the other hand, more sophisticate methods such as quadtree/octree renement [4, 40, 52] and Delaunay methods [8, 9, 10, 35, 43, 44] generate a well-shaped mesh whose size is within a constant factor of the optimal. Li et. al. [28] recently developed a new mesh generation algorithm called biting method. It combines the strengths of advancing front and these provably good meshing methods. It not only guarantees the quality of the generated mesh, but also solve the problems caused by the advancing front method. The particular type of Delaunay method that they use in conjunction with advancing front is the sphere packing method. It rst constructs a well-spaced point set by computing a sphere 2

11 packing of the domain and then uses the Delaunay triangulation of this point set as the nal mesh. Two methods have been developed to generate the well-spaced point set. The rst one applies particle simulation [45, 46, 47] to nd a stable conguration of a set of energetic spheres. The second one uses quadtree/octree renement to obtain an oversample of the input domain, and then applies a properly dened maximal independent set to create the sphere packing [3, 5, 27, 37, 50]. Both in theory and in practice, the second approach is faster. 1.2 Graph Partition Parallel computing has become a critical component of the computing technology of this decade. To reduce the time spent waiting at synchronization events, the work load of each processor should be balanced. The process of balancing the workload and reducing the synchronization wait time consists of four parts [12]. 1. Identifying enough concurrency in decomposition and overcoming Amdahl's Law, 2. Deciding how to manage the concurrency { statically or dynamically, 3. Determining the granularity at which to exploit the concurrency, 4. Reducing the serialization and synchronization cost. The computation and data dependency of a lot of scientic computing problem can be modeled by a graph ( directed graph or undirected graph): the vertices of graph is the basic data unit or commutating tasks; two vertices are connected if there are a data dependency between them or there are computation dependency between tasks. Then we can use the technique of the graph partition to identify the concurrency in a given parallel computing problem. A partition of a graph into subgraphs leads to a decomposition of the data and/or tasks associated with a computational problem and the subgraphs can be mapped to the processors of a multiprocessor. Graph partition also plays an important role in serial algorithm design especially for the problem with strong divide and conquer property. For parallel computing, the ideal assignment of the data and/or tasks to processors is that the work load of every processor are approximately equal and the communication during the computation is minimized. Hence, the following two objectives are usually stated in the 3

12 partitioning algorithm. Partition a given graph into a specied number of subgraphs such that the subgraphs have roughly equal number of vertices and few edges join dierent subgraphs to each other ( this edges are the cut of the partition). Here we assume that the vertex model the basic workload unit. In the context of the parallel computation, the size of a subgraph determines the computational work load that a processor has to perform, and the number of cut edges is the measure of the communication volume in the algorithm. In a serial algorithm, equal-sized subgraphs lead to the lowest worst-case running time, and the number of the cut edges measures the cost of combining the partial solutions to compute the global solution. More general objective functions need to be considered for many complicated problems. For example, the work load is not always proportional to the number of vertices in the subgraph. Hence the work associated with a subgraph may be modeled more accurately by attaching a weight to each vertex. Then load balancing requirement can be modeled as to partition the graph to subgraph such that subgraphs has approximately equal summation weights of vertices assigned to it. Note that for data communication, we can use the message packing technique, i.e., to pack all the messages which will be sent to same processor. The communication costs in the algorithm might be modeled by the number of subgraphs a given subgraph is connected to, or the number of boundary vertices of the subgraph, or similar variants. If the graph is a geometry graph, sometimes the shape of the subgraph is also important to get a good solution to the problem. In other words, the shape of the subgraphs (e.g., the aspect ratios) may be an important parameter in some algorithms (e.g., the convergence of a domain decomposition method). In some applications, it may be essential to partition into connected subgraphs. 1.3 Parallel Mesh Renement and Load Balancing Once we have a discretization (mesh) of the domain, dierential equations for ow, waves, and heat distribution are then approximated by nite dierence, nite element, or nite volume formulations. To properly approximate a continuous function, in addition to the conditions that a mesh must conform to the boundary of the region and be ne enough, each individual element of the mesh must be well shaped. A common shape criteria for elements is the condition that the angles of each element are not too small or the aspect ratio of each element is bounded 4

13 [49]. The aspect ratio of a simplex is dened as its maximum side-length divided by its minimum altitude. We consider issues and algorithms for adaptive mesh renement, (cf, Step 6 in the paradigm 1). The general scenario is the following. We start with an initial well-shaped mesh M 0 for an input domain and dierential equations. Then we form the numerical system from the mesh M 0 and the original dierential equations. We partition mesh M 0 and map the submeshes and their fraction of the numerical system onto a parallel machine. By solving the numerical system in parallel, we obtain an initial numerical solution S 0. If the solution S 0 is within the error tolerance, we then return the solution. Otherwise, an error-estimation of S 0 generates a renement spacing-function h 1 over the domain, which denes the expected size of mesh elements at a particular region in the domain. In other words, if in some region the error estimation of S 0 is too large compared to the tolerant error or average error, we have to rene the mesh element in that region, such that the next computation will generate more accurate solution in this region. Therefore, we need to properly rene the initial mesh M 0 according to h 1 to generate another well-shaped mesh M 1. The requirement for renement introduces load imbalance among processors in the parallel machine. Some submeshes, after renement, might be much larger than others. The work-load of a processor in the next stage computation is determined by the summation of the time the processor needs to spend in rening its submesh and the time it needs to solve its fraction of the numerical system over the rened mesh M 1. In this thesis, we present a dynamic load balancing algorithm to ensure that the computation at each stage of the renement is balanced and optimized. The basic idea of our algorithm is as following. Our algorithm estimates the size and distribution of M 1 before it is actually generated. Based on this estimation, we can compute a quality partition of M 1 before we generate it. The partition of M 1 can be projected back to M 0, which divides the submesh on each processor into one or more subsubmeshes. Our algorithm rst moves these subsubmeshes to proper processors before performing the renement. This is more ecient than moving M 1 because M 0 is usually smaller than M 1. Note that this approach considers the mesh renement cost as one of the the work load to be balanced. In partitioning M 1, we take into account of the communication cost of moving these subsubmeshes as well as the communication cost in solving the numerical system over M 1. 5

14 1.4 Thesis Outline The thesis is organized as following. Chapter 2 introduces the basic concepts of the mesh generation and the quality measure of mesh. It also introduces some basic mesh generation algorithm. Graph partition concepts and some widely used algorithm are introduced in Chapter 3 Chapter 4 introduces an abstract problem to model parallel adaptive mesh renement. An algorithm to estimate the size and distribution of the rened mesh before its generation is also presented in this chapter. It also presents a technique to reduce dynamic load balancing for mesh renement to a collection of static partitioning problems. This reduction makes use of the estimation information generated by the size estimation algorithm. It rst applies static partitioning to divide the submesh (subdomain) on each processor into a set of subsubmeshes (subsubdomains) according to the projection of the nal partition onto the current mesh. We introduce a notion of subdomain graph to incorporate the communicational cost in moving these subsubmeshes with the communicational cost in solving the subsequent numerical system. We then apply a static partitioning algorithm to complete the denition of the partition of the rened mesh. We also extends ours algorithm from the abstract problem to unstructured meshes. Chapter 5 concludes the thesis with a discussion of some future research directions. 6

15 Chapter 2 Mesh Generation 2.1 Introduction Decomposition of a geometric input into simpler objects is fundamental in many areas, such as solid modeling, computer aided design, graphical rendering, and scientic computation. For example, an essential step in numerical simulation of physical and engineering problems is to nd a proper discretization of a continuous domain. This is the problem of mesh generation [4, 40, 26, 27, 43, 44]. Finding the optimal triangulation is a particular mesh generation problem in computational geometry. The most often used optimization criteria [4] include maximizing the minimum angle among all elements of the partition (solved by the wellknown Delaunay triangulation [48]), minimizing the maximum angle [14], minimizing a maximum mincontainment ellipse [13], and minimizing total length (an outstanding open problem in the eld [17]). Variants of these problems allow one to add extra vertices, called Steiner points, in order to further improve the quality of the solution. Mesh generation is a great example of inter-disciplinary research. Its development is built upon advances in computational and combinatorial geometry, data structures, numerical analysis, and scientic applications. Its success is justied not only by mathematical proofs about the quality and the numerical relevancy of geometry-based meshing algorithms, but also by the performance of meshing software in real applications. It embraces both provably good algorithms and practical heuristics. 7

16 2.2 Structured and Unstructured Mesh The simplest form of a mesh is a structured mesh. Structured meshes are widely used by the early stage scientic computing because the easiness to construct the structured meshes and to form the linear systems for the mesh sometimes. There are two types of structured meshes: geometrically structured and topologically structured meshes. Examples of geometrically structured meshes are regular Cartesian grids and uniform hexagon grids. In these meshes, all elements are geometrically alike: the size of the mesh element are similar and the shape of the element are also similar. The domain that a geometrically structured mesh can be applied can not be too complicated because of the grid property of the elements it used. A mesh is topologically structured if its topological structure is isomorphic to that of a geometrically structured mesh. For example, we can apply a conformal transformation to a structured grid to generate a topologically structured mesh. The topological structured mesh enhance the ability to approximate the complicate input domain. Structured grids are easy to generate and manipulate, which facilitate the use of simple data structures to reduce the complexity of programming. In addition, the numerical theory about these types of discretization is well understood. However, it is not easy to apply the structured mesh to approximate the complicated domain or the numerical systems that changes rapidly. The use of structured regular grids limits the applicability of numerical methods to problems whose domains are simple and whose solution functions are smooth. The other type of the mesh is unstructured mesh. It has varying local topology and spacing in order to reduce the problem size. For problems with complex geometry boundaries and with solutions that change rapidly, we need to use an unstructured mesh. For the example of modeling the combustion of the material in the rocket, we need a much denser and accurate discretization the boundary of the combustion while it is desirable not to waste mesh points in regions with low activities. The adaptability of unstructured meshes comes with new challenges, especially for 3D problems; the numerical theory becomes more dicult and the algorithmic design becomes harder. The most general and versatile mesh is an unstructured triangular mesh in which each element is a simplex, i.e. a triangle in 2D or a tetrahedron in 3D. In general, a k-simplex is a convex polytope of k + 1 points of dimension k. A triangular mesh is a triangulation of 8

17 the input domain (e.g., a polygon), along with some extra points, called Steiner points. A triangulation or a simplicial complex is a decomposition of a domain into a collection of interior disjointed simplices so that two simplices can only intersect at a lower dimensional simplex, i.e., neighboring elements are conformal at their boundaries. Combinatorially, a triangulation T can be expressed as a PLS of a set S T of simplices: if s is a simplex in S T then all of its lower dimensional faces, which themselves are simplices as well, also belong to S T. Following Figure 2.1 gives a typical example of the unstructured mesh. It is from the paper of Borouchaki. Figure 2.1: A typical example of a unstructured mesh. A triangulation T conforms to the boundary of a domain if each boundary polytope of is a union of some simplices in S T. A triangulation T is the constrained triangulation of domain if all mesh vertices are the domain vertices, and each domain boundary polytope of is a union of some simplices in S T. A triangulation T covers a domain if each domain boundary 9

18 polytope of is a union of some simplices in S T and each boundary segment of is an edge of some simplices of S T. An area of great potential is the automatic adaptation of the mesh, without intervention by the analyst. It automatically continues solution until the required accuracy has been reached. Such mesh adaptation generally means that in certain areas of the input domain the size of the elements is decreased (or increased) and the order of the elements may be increased (or decreased). In concept, such adaptation is most appealing, but there are diculties when complex practical situations are considered. 2.3 Quality of Mesh Numerical approximation errors depend on the quality of the mesh, while the time and the space requirements of numerical algorithms are a function of the number of mesh elements. To properly approximate a continuous function, in addition to the conditions that a mesh must conform to the boundaries of the region and be ne enough, each individual element of the mesh must be well-shaped. A common shape criterion for elements is the condition that the angles of each element are not too small, or the aspect ratio of each element is bounded [1, 4, 49]. Certain requirements about the size and neighborhood relations of the mesh vertices should be imposed in order to get a high quality mesh with small number of elements. As Babuska and Aziz [1] justied one should avoid the large angles for a high quality mesh. Specically they showed that the nite element method convergences if the maximum angle of all mesh elements is bounded above from, i.e., there exist a constant 0 such that every angle is at most? 0. Strang and Fix [49] also showed that the nite element method convergences if the smallest angle of the mesh elements is bounded below from a constant. Note the above two conditions can be reduced to bound the smallest angle of all mesh element. The following denition of the aspect-ratio, popularized by Mitchell and Vavasis [40], is uniformly dened for any dimension. Denition (aspect-ratio) The aspect ratio of a simplex T is the ratio R T =r T, where R T and r T are the radii of the smallest ball containing T and the largest ball contained in T, respectively. The aspect ratio of a triangular mesh M is the largest aspect ratio among its elements. M is well shaped for a constant > 1 if its aspect ratio is at most. 10

19 In this thesis, we measure the quality of a triangular mesh by the radius-edge aspect ratio dened by Miller, Talmor, Teng, and Walkington [35, 36]. Denition (radius-edge ratio) The radius-edge aspect-ratio of a simplex is the ratio of the circum-radius to the length of the shortest edge to of the simplex. A mesh M is -wellshaped for a constant > 1 if the radius-edge aspect-ratio is bounded from above by. In two dimensions, these denitions are equivalent in the sense that if a triangle is bounded away from being an ill-shaped triangle under one aspect-ratio, it is bounded away under the others as well. In three dimensions, they are not equivalent. Silver of the three dimension has good radius edge ratio, but it does not have a good aspect ratio. If there are silver in the mesh, the nite element method may be not convergent to the solution. The control volume method guarantees the convergence for the mesh having silver. 2.4 Control Space The rst stage of an adaptive nite element scheme consists in creating an initial mesh of a given domain A size specication eld is deduced before the mesh generation, i.e., at the vicinity of each mesh vertex, the desired mesh element size is specied. The size specication can be derived from the previous numerical results, or from the local geometry feature, or from the geometric error which indicates the gap between the facetization and the real surface in case of surfaces meshes. As shown in [35, 43], the spacing function for a well-shaped mesh should be smooth in the sense that it changes slowly as a function of distance. Formally, a function f is Lipschitz with a constant if for any two points x; y in the domain, jf(x)? f(y)j jjx? yjj. Each domain and a dierential equation u denes a desired local spacing within a domain to specify, for example, the expected element size in a given neighborhood or point densities near a point. In this section, we discuss how to determine the local spacing from the geometry of and the numerical condition of u Geometric Features The geometry of the boundary of also contributes to the local spacing of a well-shaped mesh. In two dimensions, we assume that is given as a planar-straight-line graph (PSLG), which is 11

20 a collection of line segments and points in the plane, closed under intersection. Suppose is described by a PSLG S. Ruppert [43] introduced the following concept called local feature size. Denition Given a PSLG S, the local feature size at a point x, lfs S (x), or simply lf s(x), is the radius of the smallest disk centered at x that intersects two non-incident vertices or segments of S. 1 Note that adding new Steiner vertices does not change the value of lfs() function, since it is determined by the input. Ruppert has observed that lf s changes slowly within the domain. Formally, a function f() is Lipschitz with a coeciency if for any two points x, y in the domain, jf(x)? f(y)j jjx? yjj. Then the Lipschitz coeciency of lfs is bounded from above by 1 [43]. In addition, lfs is the maximum in the following sense. Lemma If f is a 1-Lipschitz function over a domain such that for each point x f(x) lfs (x), then for every x 2, f(x) lfs (x). There are several ways to describe the spacing function of a well-shaped mesh M over a domain : Denition (Edge-length function, el M ) For each point x 2, el M (x) is equal to the length of the longest edges of all mesh simplex elements that contain x (note that points on the lower dimensional faces of a simplex are contained in more than one element). Denition (Nearest-neighbor function, nn M ) Let x be a point in, there are two cases. (1) if x is a mesh point, then nn M (x) is equal to the distance of x to the nearest mesh point in M. (2) if x is not a mesh point, then nn M (x) is equal to the distance to the second closest mesh point in M. Lemma ([35]) If M is an -well-shaped, then there exists constants c 1 and c 2 depending only on such that for all point x 2, c 1 el M (x) nn M (x) c 2 el M (x): 1 Ruppert also gave a modied denition by using the geodesic distance to the 2 nearest non-incident portions of the input to handle the two arms situation [43]. The geodesic distance is measured along the shortest path that stays within the domain to be triangulated. 12

21 For convenience, if the context is clear, we will use nn(x) other than nn M (x) to denote the nearest neighbor value of point x in mesh M Numerical Spacing The numerical condition is usually obtained from an a priori error analysis, or an a posteriori error analysis based on an initial numerical simulation. It denes a numerical spacing functions, denoted by nsf(x), for each point x in the domain. The value of nsf(x), from the interpolation viewpoint, is determined by the eigenvalues of the Hessian matrix of u [49]. Locally at point x, u can be approximated by a quadratic function u(x + dx) = 1 2 (xhxt ) + x 5 u(x) + u(x); where H is the Hessian matrix of u, the matrix of the second partial derivatives. The spacing of the mesh points, required by the accuracy of the discretization near x should depend on the reciprocal of the square root of the largest eigenvalues of H at x. For example, in adaptive numerical simulation, we estimate the eigenvalue of the Hessian matrix at a certain set of points in based on the solution of the previous iteration, and then expand the spacing requirement from these points to the entire domain. From the new spacing and the old spacing function deduced from the previous mesh, we can get the renement or coarsening factor for mesh points. We can then use the simultaneous renement and coarsening method of Li et al. [27] to generate the mesh that satises the new control space requirement Control Spacing Function The local feature size lf s and the numerical condition nsf together denes the global control spacing function. Notice however, that the Lipschitz coeciency of nsf may not be bounded by a constant. Using the technique of Miller, Talmor, and Teng [32], we can dene a new numerical spacing function nsf() as the following: for each point x, nsf(x) = min(nsf(x); min y2 (nsf(y) + jjx? yjj)): (2.1) 13

22 The Lipschitz coeciency of nsf() is at most 1. In addition, nsf() is the best possible in the sense that for any 1-Lipschitz function g over the domain, if g(x) nsf(x) point-wise in, then g(x) nsf(x) point-wise. The global control spacing function gns() can then be dened as gns(x) = min(lf s(x); nsf(x)): (2.2) Where gns stands for Geometric and Numerical Spacing[51]. The function gns() captures both the numerical and the geometric requirements for a well-shaped adaptive mesh. Lemma If f() and g() are 1 and 2 -Lipschitz respectively over, then f() + g() is Lipschitz, and min(f(); g()) and max(f(); g()) are max( 1 ; 2 )-Lipschitz. Therefore, gns is 1-Lipschitz. For mesh generation, we do not need to compute these spacing functions exactly. A common approach to approximate gns() is to store discrete values on the vertices of a background mesh such as a quadtree/octree decomposition of the domain. When we need to evaluate the function at an arbitrary point in the domain, we simply interpolate these discrete values. 2.5 Conformality and Size of Mesh Given the control function specication f, a generated mesh M must conform the control spacing f, in addition to be well shaped. From the generated mesh M, we use the nearest neighbor value nn(x) to denote the spacing of point x in the generated mesh M. Then we dene the conformality of point x as the following. Denition [Point Conformality C f;m ] Assume that f is the control spacing for generating mesh M. For any point x in the domain, let nn(x) be the nearest neighbor value of point x in M. Then the conformality of point x is min( nn(x) f(x) ; f(x) ): (2.3) nn(x) Then to dene the conformality of the mesh M, we can use the minimal conformality value of all mesh vertices; we also can use the average conformality value of all mesh vertices as the 14

23 conformality of the mesh M. If a mesh M conforms the control spacing well, the conformality of every point x in the mesh should be bounded below from a constant. If the constant is closer to 1, the mesh M conforms the control spacing better. We say that a mesh perfectly conform the control spacing, if for every mesh vertex p of M, the conformality of p is equal to 1. The following lemma of Miller et al. [34] estimates the size of the generated well shaped mesh. Lemma (Size of a Well-shaped Mesh [34]) If M is an -well-shaped mesh of n elements, then Z n = ( da ): (2.4) nn 2 M For any well-shaped mesh M, if it conforms the given spacing function f, then the following lemma bounds the number of mesh elements of M. Lemma (Size of Mesh Respect to the Space Control [51]) There exists a constant c such that if M is a well-shaped mesh of n elements over a domain that satises the control spacing function f(), then Z da n c f : (2.5) 2 Here, a mesh M satises the control spacing means that the conformality of the mesh is bounded below from a constant. 2.6 Delaunay Triangulation For mesh generation, there are variety of optimization objective. Especially, the nite element method requires that the minimal angle of the mesh must be bounded below from a constant. To generate a mesh, there are two approaches: the rst approach is to generate some points in the domain, then use some technique to connect these points to generate the nal mesh; the second approach is to generate the mesh elements when generate some mesh vertices. The typical example of the rst approach is the sphere packing method [3, 5, 27, 37, 50, 28]. The advancing front methods [6, 30, 31] are the most widely used second approach. 15

24 If we have the set of points in the domain, Delaunay triangulation [48] of the point set minimizes the smallest angle for two dimension domain. Assume that P is a point set in IR d. The simplex dened by (d + 1) anely independent points from P is a Delaunay simplex if the circum-sphere of the simplex contains no point from P in its interior. The union of all Delaunay simplices forms the Delaunay diagram DT (P ). If P is not degenerate, then DT (P ) is a triangulation of the convex hull of P. Let DB(P ) denote the set of circum-spheres of the simplices of DT (P ). By denition, there is no point in P that lies in the interior of any sphere from DB(P ). The geometric dual of the Delaunay Diagram is the Voronoi Diagram, which consists of a set of polyhedra V 1 V n, one for each point in P. V i is called the Voronoi cell of p i and p i is called the center of V i. Geometrically, V i is the set of points in IR d, whose distance to p i is less than or equal to that of any other point in P. Delaunay triangulation has some desired properties for mesh generation. For example, among all triangulations of a point set in 2D, the Delaunay triangulation maximizes the minimum angle. In any dimension, it always contains the nearest neighbor graph of the point set, i.e. in the Delaunay triangulation, every point is directly connected with its nearest neighbors. The Delaunay triangulation also contains the minimum spanning tree connecting the point set. 2.7 Mesh Generation Method A mesh generator usually does two things: Point set generation: Places Steiner points within or on the boundary of the domain. Element generation: Forms elements of the mesh by triangulating the point set or by using some other element formation procedures. Some mesh generation algorithms construct the point set and then triangulate it, but most mesh generation algorithms merge these two functions, and generate the point set implicitly as a part of the mesh generation phase. We will discuss both of these methods in the next two sections. 16

25 2.7.1 Advancing Front Methods Advancing front methods construct a mesh of a domain by moving a front from its boundary towards its interior. It rst generates an initial front typically by constructing a surface mesh for the boundary of the domain. It then creates new elements one at a time or a layer at a time and updates the front with these created faces [16, 15, 6, 30, 31]: In the one element-at-a-time model, it chooses a face of the current front and introduces a new mesh element with it as the base face. It can use another vertex on the front or insert a new Steiner point in the interior as the additional vertex of the new element. The base face and potentially some other faces on the front (if the additional vertex is an existing one) are removed from the front, and some faces of the new element are added to the front. This process is repeated until the front is empty, i.e., all fronts have merged upon each other and the domain is fully meshed. Hence the method involves the simultaneous generation of eld points and their connectivity. The initial front is constructed by triangulating the boundary of the domain. Note that initial front does not have to be a single component. For example, for a domain with holes, the initial front can be built for the boundary of each hole as well. The selection of the base face and the placement of the new mesh vertex are the two key steps of any advancing front method. These two steps must ensure that the new mesh element is valid and well-shaped and keep the front in good condition to allow the creation of graceful future elements. The faces of the clefts and the small faces are given priority to be picked as the base faces to satisfy these requirements. Hence, once the base face is chosen, we need to decide where to place the new vertex. Recall that in a well-shaped triangular mesh, points must be well-spaced [50, 33], which implies that for each base face, we can only place the Steiner point in a particular region near the base face so that the new element is well-shaped. Call this region the feasible region. Some points in the feasible region will make the new element slightly larger (by a constant factor) than some other points do. This is where the control spacing function can be used. It helps us to decide whether we should go for a larger new element or a smaller one. Paving [6] is one of the popular advancing front methods. It uses a number of operations to tightly controlled the moving front to ensure the mesh validity and quality. These operations include row choice, closure check, row generation, smooth, seam, row adjustment, intersection, 17

26 and cleanup [6]. The size of the elements in the mesh is determined by the spacing of the nodes on the paving boundary as it propagates. The spacing on the paving boundary is initially dened by the xed node spacing on the corresponding exterior boundary. Advancing front methods can be combined with Delaunay or quadtree/octree renements. For instance, these renement techniques can be used to generate a pretty-good domain decomposition of the input domain and then advancing front can be applied to get a mesh for each subdomain. We can also use quadtree/octree renement to generate the set of points for the creation of the new elements Sphere Packing Methods At a high level, the sphere-packing method lls an input domain with a set of spheres whose centers provide a good vertex set for a quality Delaunay mesh. It can be used to generate meshes for various quality conditions. For example, Bern, Mitchell, and Ruppert [5] use sphere packing to triangulate a n-vertex polygonal region (potentially with holes) so that no element has angle larger than =2. They show that one can do so with O(n) triangles, improving a previous result that uses O(n 2 ) triangles [2]. The algorithm rst packs a set of spheres within the domain such that the gaps between them are surrounded by at most four tangent spheres 2. It then denes the mesh points as the union of centers of these spheres, the tangency points, and one point within each gap, and locally triangulates these points. Notice that for nonobtuse triangulation, one does not need to consider the control spacing function. Therefore, their mesh may have elements with very bad aspect ratio. A similar sphere-packing based method has been developed by Bern and Eppstein [3] for quadrilateral meshes. Shimada and Gossard [46] have developed a sphere-packing method called bubble mesh to generate triangular meshes for two and three dimensions. Their packing scheme is based on the simulation of the particles that interact each other with repulsive/attractive forces. They rst dene a proximity based force among the spheres, and then nd a stable conguration by 2 This thesis uses the word sphere in its general meaning; it denotes a circle for two-dimensional domains and a (d? 1)-dimensional sphere for d-dimensional domains. 18

27 moving or deleting spheres. However, their method does not provide a theoretical bound on the time of the algorithm nor the quality of the mesh that they generate. Miller et al. [35, 36] have designed a sphere-packing based meshing method which combines two well-known methods, quadtree and Delaunay renements. First, they apply a balanced quadtree renement to approximate the spacing function f(). Second, they oversample a set of points in the domain to dene a set of overlapping spheres. Then, they compute a maximal set of non-overlapping spheres from this set to obtain a sphere packing. Finally, they compute the Delaunay triangulation of the centers of these spheres. Suppose f() is the desired edge-length or nearest-neighbor function of a well-shaped mesh for a domain. We now introduce some denitions to capture the quality of sphere packing. Let B(x; r) denote the sphere centered at point x with radius r. Denition (-Packing) Let be a positive real constant. A set S of spheres is a - packing with centers P of with respect to a spacing function f() if For each point p of P, B(p; f(p)=2) 2 S; The interiors of any two spheres s 1 and s 2 in S do not overlap; and For each point q 2, there is a sphere in S that overlaps with B(q; f(q)=2). The following structure theorem of Miller, Talmor, and Teng [34] states an equivalence relationship between -sphere packing and well-shaped meshes. Theorem (Sphere Packing and Well-Shaped Meshes) 1. For any positive constant, there exists a constant depending only on such that if f() is a spacing function of Lipschitz constant 1 over a domain and S is a -packing with respect to f(), then the Delaunay triangulation M of the centers of S is an well-shaped mesh; in addition, for each point p in, nn M (p) = (f(p)), where the constant in depends only on. 2. For any positive constant, there exists a constant depending only on such that if M is an well-shaped mesh, then the set of spheres S = fb(p; nn M (p)=2) : for all mesh point p 2 Mg; is a -packing with respect to nn M =2. 19

28 Chapter 3 Graph Partition 3.1 Introduction Identifying enough concurrency in decomposition of data and/or tasks is one of the main objective in parallel algorithm design. The computation and data dependency of a lot of scientic computing problem can be modeled by a graph ( directed graph or undirected graph): the vertices of graph is the basic data unit or computing tasks; two vertices are connected if there are a data dependency between them or there are computation dependency between tasks. Graph partition plays an important role in parallel computing by identifying the concurrency in a given problem. A partition of a graph into subgraphs leads to a decomposition of the data and/or tasks associated with a computational problem and the subgraphs can be mapped to the processors of a multiprocessor. Graph partition also plays an important role in serial algorithm design by means the divide and conquer paradigm. For parallel computing, the ideal assignment of the data and/or tasks to processors is that the work load of every processor are approximately equal and the communication during the computation is minimized. Hence, the following two objectives are usually stated in the partitioning algorithm. First, the subgraphs partitioned have roughly equal number of vertices. Second, there are few edges join dierent subgraphs to each other, i.e., the partition has small cut. In the context of the parallel computation, we assume that every vertex of the original graph denotes the basic unit of the computation overload. Hence the size of a subgraph determines 20

29 the computational work load that a processor has to perform. The number of cut edges is the measure of the communication volume caused by this partition. In a serial algorithm, equalsized subgraphs lead to the lowest worst-case running time, and the number of the cut edges measures the cost of combining the partial solutions to compute the global solution. More general objective functions may need to be considered for many problems. The work associated with a subgraph may be modeled more accurately by attaching a weight to each vertex, and then equipartitioning the weights. The communication costs in the algorithm might be modeled more accurately by the number of subgraphs a given subgraph is connected to, or the number of boundary vertices, or similar variants. In addition, in some algorithms, the shape of the subgraphs may be an important parameter. For example, the convergence of a domain decomposition method dependents on the shape quality of each partition. In some applications, it may be essential to partition into connected subgraphs. In Figure 3.1, 3.2, 3.3, we show the partition of a mesh into sixteen subgraphs computed by the METIS partitioning algorithm. This mesh was generated using the mesh generator written by Xiangyang Li at University of Illinois at Urbana-Champaign. It generates the Delaunay triangulation of an input point set. It also support the constrained edges and holes in the input and also provide the functions to do Delaunay renement, Functional Coarsening and Function Renement idea from the paper [26] of Li et. al.. The Figure shows 3.2 that each subgraph in the partitioned mesh is connected, and it appears to the eye as a good partition of the mesh. Quantitative measures such as the number of edges cut by the partition show that the METIS partition algorithm does generate partitions of good quality for many nite element meshes. 3.2 Background and Good Separators There are two dierent type of partition for a graph G = (V; E): edge separator, vertex separator. A set of edges of E is an edges separator of G, if removal of these edges will partition G to at least two unconnected subgraphs. A set of vertices of V is a vertex separator of G, if after removing these vertices and the edges connected to them, G can be divided into two disconnected subgraphs. Given a graph G = (V; E), and a vertex set B V, let B denote the vertices from V not in B, i.e., V? B. A partition of a connected graph G = (V; E) is a division of its vertices into 21

Quadrilateral Meshing by Circle Packing

Quadrilateral Meshing by Circle Packing Quadrilateral Meshing by Circle Packing Marshall Bern 1 David Eppstein 2 Abstract We use circle-packing methods to generate quadrilateral meshes for polygonal domains, with guaranteed bounds both on the

More information

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem Chapter 8 Voronoi Diagrams 8.1 Post Oce Problem Suppose there are n post oces p 1,... p n in a city. Someone who is located at a position q within the city would like to know which post oce is closest

More information

arxiv:cs/ v1 [cs.cg] 19 Aug 1999

arxiv:cs/ v1 [cs.cg] 19 Aug 1999 Quadrilateral Meshing by Circle Packing Marshall Bern David Eppstein arxiv:cs/9908016v1 [cs.cg] 19 Aug 1999 Abstract We use circle-packing methods to generate quadrilateral meshes for polygonal domains,

More information

Tiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research

Tiling Three-Dimensional Space with Simplices. Shankar Krishnan AT&T Labs - Research Tiling Three-Dimensional Space with Simplices Shankar Krishnan AT&T Labs - Research What is a Tiling? Partition of an infinite space into pieces having a finite number of distinct shapes usually Euclidean

More information

N. Hitschfeld. Blanco Encalada 2120, Santiago, CHILE.

N. Hitschfeld. Blanco Encalada 2120, Santiago, CHILE. Generalization of modied octrees for geometric modeling N. Hitschfeld Dpto. Ciencias de la Computacion, Univ. de Chile Blanco Encalada 2120, Santiago, CHILE E-mail: nancy@dcc.uchile.cl Abstract. This paper

More information

Voronoi diagram and Delaunay triangulation

Voronoi diagram and Delaunay triangulation Voronoi diagram and Delaunay triangulation Ioannis Emiris & Vissarion Fisikopoulos Dept. of Informatics & Telecommunications, University of Athens Computational Geometry, spring 2015 Outline 1 Voronoi

More information

2) For any triangle edge not on the boundary, there is exactly one neighboring

2) For any triangle edge not on the boundary, there is exactly one neighboring Triangulating Trimmed NURBS Surfaces Chang Shu and Pierre Boulanger Abstract. This paper describes techniques for the piecewise linear approximation of trimmed NURBS surfaces. The problem, called surface

More information

Linear Complexity Hexahedral Mesh Generation

Linear Complexity Hexahedral Mesh Generation Linear Complexity Hexahedral Mesh Generation David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 http://www.ics.uci.edu/ eppstein/ Tech. Report 95-51

More information

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality Planar Graphs In the first half of this book, we consider mostly planar graphs and their geometric representations, mostly in the plane. We start with a survey of basic results on planar graphs. This chapter

More information

13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY

13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY 13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY Lecture 23 Dr. W. Cho Prof. N. M. Patrikalakis Copyright c 2003 Massachusetts Institute of Technology Contents 23 F.E. and B.E. Meshing Algorithms 2

More information

Inside hole. Inside wire. Input: and. d y. Inside vertex. Outside loop

Inside hole. Inside wire. Input: and. d y. Inside vertex. Outside loop Energy-Minimizing Approach to Meshing Curved Wire-Frame Models Atsushi Yamada Kenji Shimada Takayuki Itoh Tokyo Research Laboratory, IBM Japan, Ltd., 1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken 242,

More information

Topological Issues in Hexahedral Meshing

Topological Issues in Hexahedral Meshing Topological Issues in Hexahedral Meshing David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science Outline I. What is meshing? Problem statement Types of mesh Quality issues

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

COMPUTING CONSTRAINED DELAUNAY

COMPUTING CONSTRAINED DELAUNAY COMPUTING CONSTRAINED DELAUNAY TRIANGULATIONS IN THE PLANE By Samuel Peterson, University of Minnesota Undergraduate The Goal The Problem The Algorithms The Implementation Applications Acknowledgments

More information

66 III Complexes. R p (r) }.

66 III Complexes. R p (r) }. 66 III Complexes III.4 Alpha Complexes In this section, we use a radius constraint to introduce a family of subcomplexes of the Delaunay complex. These complexes are similar to the Čech complexes but differ

More information

Computational Geometry

Computational Geometry Computational Geometry 600.658 Convexity A set S is convex if for any two points p, q S the line segment pq S. S p S q Not convex Convex? Convexity A set S is convex if it is the intersection of (possibly

More information

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass University of California, Davis, USA http://www.cs.ucdavis.edu/~koehl/ims2017/ What is a shape? A shape is a 2-manifold with a Riemannian

More information

Simplicial Cells in Arrangements of Hyperplanes

Simplicial Cells in Arrangements of Hyperplanes Simplicial Cells in Arrangements of Hyperplanes Christoph Dätwyler 05.01.2013 This paper is a report written due to the authors presentation of a paper written by Shannon [1] in 1977. The presentation

More information

u 0+u 2 new boundary vertex

u 0+u 2 new boundary vertex Combined Subdivision Schemes for the design of surfaces satisfying boundary conditions Adi Levin School of Mathematical Sciences, Tel-Aviv University, Tel-Aviv 69978, Israel. Email:fadilev@math.tau.ac.ilg

More information

Overview of Unstructured Mesh Generation Methods

Overview of Unstructured Mesh Generation Methods Overview of Unstructured Mesh Generation Methods Structured Meshes local mesh points and cells do not depend on their position but are defined by a general rule. Lead to very efficient algorithms and storage.

More information

Voronoi Diagram. Xiao-Ming Fu

Voronoi Diagram. Xiao-Ming Fu Voronoi Diagram Xiao-Ming Fu Outlines Introduction Post Office Problem Voronoi Diagram Duality: Delaunay triangulation Centroidal Voronoi tessellations (CVT) Definition Applications Algorithms Outlines

More information

2 an unstructured hierarchical gradient M 0 ;... ; M k depends on the quality of this gradient [10, 5, 6]. In particular, Chan and Zou provided sucien

2 an unstructured hierarchical gradient M 0 ;... ; M k depends on the quality of this gradient [10, 5, 6]. In particular, Chan and Zou provided sucien 1 Optimal Good-Aspect-Ratio Coarsening for Unstructured Meshes Gary L. Miller Dafna Talmor Shang-Hua Teng y Abstract A hierarchical gradient of an unstructured mesh M 0 is a sequence of meshes M 1 ;...

More information

Pacific Journal of Mathematics

Pacific Journal of Mathematics Pacific Journal of Mathematics SIMPLIFYING TRIANGULATIONS OF S 3 Aleksandar Mijatović Volume 208 No. 2 February 2003 PACIFIC JOURNAL OF MATHEMATICS Vol. 208, No. 2, 2003 SIMPLIFYING TRIANGULATIONS OF S

More information

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139

Enumeration of Full Graphs: Onset of the Asymptotic Region. Department of Mathematics. Massachusetts Institute of Technology. Cambridge, MA 02139 Enumeration of Full Graphs: Onset of the Asymptotic Region L. J. Cowen D. J. Kleitman y F. Lasaga D. E. Sussman Department of Mathematics Massachusetts Institute of Technology Cambridge, MA 02139 Abstract

More information

We consider the problem of rening quadrilateral and hexahedral element meshes. For

We consider the problem of rening quadrilateral and hexahedral element meshes. For Rening quadrilateral and hexahedral element meshes R. Schneiders RWTH Aachen Lehrstuhl fur Angewandte Mathematik, insb. Informatik Ahornstr. 55, 5056 Aachen, F.R. Germany (robert@feanor.informatik.rwth-aachen.de)

More information

Separators in High-Genus Near-Planar Graphs

Separators in High-Genus Near-Planar Graphs Rochester Institute of Technology RIT Scholar Works Theses Thesis/Dissertation Collections 12-2016 Separators in High-Genus Near-Planar Graphs Juraj Culak jc1789@rit.edu Follow this and additional works

More information

1. Meshes. D7013E Lecture 14

1. Meshes. D7013E Lecture 14 D7013E Lecture 14 Quadtrees Mesh Generation 1. Meshes Input: Components in the form of disjoint polygonal objects Integer coordinates, 0, 45, 90, or 135 angles Output: A triangular mesh Conforming: A triangle

More information

Aspect-Ratio Voronoi Diagram with Applications

Aspect-Ratio Voronoi Diagram with Applications Aspect-Ratio Voronoi Diagram with Applications Tetsuo Asano School of Information Science, JAIST (Japan Advanced Institute of Science and Technology), Japan 1-1 Asahidai, Nomi, Ishikawa, 923-1292, Japan

More information

Surface Reconstruction. Gianpaolo Palma

Surface Reconstruction. Gianpaolo Palma Surface Reconstruction Gianpaolo Palma Surface reconstruction Input Point cloud With or without normals Examples: multi-view stereo, union of range scan vertices Range scans Each scan is a triangular mesh

More information

Geometric Modeling in Graphics

Geometric Modeling in Graphics Geometric Modeling in Graphics Part 10: Surface reconstruction Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Curve, surface reconstruction Finding compact connected orientable 2-manifold surface

More information

Möbius Transformations in Scientific Computing. David Eppstein

Möbius Transformations in Scientific Computing. David Eppstein Möbius Transformations in Scientific Computing David Eppstein Univ. of California, Irvine School of Information and Computer Science (including joint work with Marshall Bern from WADS 01 and SODA 03) Outline

More information

May 7: The source code for your project, including instructions for compilation and running, are due today. This portion is worth 80% of your score:

May 7: The source code for your project, including instructions for compilation and running, are due today. This portion is worth 80% of your score: CS 294-74 Mesh Generation and Geometry Processing in Graphics, Engineering, and Modeling Second Project: Mesh Generator, Surface Reconstructor, or Mesh Processing Program 40% of final grade Implement a

More information

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4 Solid Modeling Solid: Boundary + Interior Volume occupied by geometry Solid representation schemes Constructive Solid Geometry (CSG) Boundary representations (B-reps) Space-partition representations Operations

More information

Geometric Computations for Simulation

Geometric Computations for Simulation 1 Geometric Computations for Simulation David E. Johnson I. INTRODUCTION A static virtual world would be boring and unlikely to draw in a user enough to create a sense of immersion. Simulation allows things

More information

Surface Mesh Generation

Surface Mesh Generation Surface Mesh Generation J.-F. Remacle Université catholique de Louvain September 22, 2011 0 3D Model For the description of the mesh generation process, let us consider the CAD model of a propeller presented

More information

Discrete geometry. Lecture 2. Alexander & Michael Bronstein tosca.cs.technion.ac.il/book

Discrete geometry. Lecture 2. Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Discrete geometry Lecture 2 Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry of non-rigid shapes Stanford University, Winter 2009 The world is continuous, but the mind is discrete

More information

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994)

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994) Discrete Comput Geom 12:29-34 (1994) G 6i try 9 1994 Springer-Verlag New York Inc. On the Number of Minimal 1-Steiner Trees* B. Aronov, 1 M. Bern, 2 and D. Eppstein 3 Computer Science Department, Polytechnic

More information

Manipulating the Boundary Mesh

Manipulating the Boundary Mesh Chapter 7. Manipulating the Boundary Mesh The first step in producing an unstructured grid is to define the shape of the domain boundaries. Using a preprocessor (GAMBIT or a third-party CAD package) you

More information

Simplicial Complexes: Second Lecture

Simplicial Complexes: Second Lecture Simplicial Complexes: Second Lecture 4 Nov, 2010 1 Overview Today we have two main goals: Prove that every continuous map between triangulable spaces can be approximated by a simplicial map. To do this,

More information

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry Computational Geometry Algorithm Design (10) Computational Geometry Graduate School of Engineering Takashi Chikayama Algorithms formulated as geometry problems Broad application areas Computer Graphics,

More information

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams in the Plane Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams As important as convex hulls Captures the neighborhood (proximity) information of geometric objects

More information

Lecture 3: Art Gallery Problems and Polygon Triangulation

Lecture 3: Art Gallery Problems and Polygon Triangulation EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified

More information

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS

CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1 UNIT I INTRODUCTION CS6702 GRAPH THEORY AND APPLICATIONS 2 MARKS QUESTIONS AND ANSWERS 1. Define Graph. A graph G = (V, E) consists

More information

Simplicial Hyperbolic Surfaces

Simplicial Hyperbolic Surfaces Simplicial Hyperbolic Surfaces Talk by Ken Bromberg August 21, 2007 1-Lipschitz Surfaces- In this lecture we will discuss geometrically meaningful ways of mapping a surface S into a hyperbolic manifold

More information

Computational Geometry

Computational Geometry Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains

More information

Some Open Problems in Graph Theory and Computational Geometry

Some Open Problems in Graph Theory and Computational Geometry Some Open Problems in Graph Theory and Computational Geometry David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science ICS 269, January 25, 2002 Two Models of Algorithms Research

More information

However, m pq is just an approximation of M pq. As it was pointed out by Lin [2], more precise approximation can be obtained by exact integration of t

However, m pq is just an approximation of M pq. As it was pointed out by Lin [2], more precise approximation can be obtained by exact integration of t FAST CALCULATION OF GEOMETRIC MOMENTS OF BINARY IMAGES Jan Flusser Institute of Information Theory and Automation Academy of Sciences of the Czech Republic Pod vodarenskou vez 4, 82 08 Prague 8, Czech

More information

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the

More information

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics

On a nested refinement of anisotropic tetrahedral grids under Hessian metrics On a nested refinement of anisotropic tetrahedral grids under Hessian metrics Shangyou Zhang Abstract Anisotropic grids, having drastically different grid sizes in different directions, are efficient and

More information

Provably Good Mesh Generation. Abstract. domain with triangles of bounded aspect ratio; how to triangulate a planar point set

Provably Good Mesh Generation. Abstract. domain with triangles of bounded aspect ratio; how to triangulate a planar point set Provably Good Mesh Generation Marshall Bern David Eppstein y John Gilbert Abstract We study several versions of the problem of generating triangular meshes for nite element methods. We show how to triangulate

More information

arxiv:cs/ v1 [cs.cg] 13 Jun 2001

arxiv:cs/ v1 [cs.cg] 13 Jun 2001 Hinged Kite Mirror Dissection David Eppstein arxiv:cs/0106032v1 [cs.cg] 13 Jun 2001 Abstract Any two polygons of equal area can be partitioned into congruent sets of polygonal pieces, and in many cases

More information

Divided-and-Conquer for Voronoi Diagrams Revisited. Supervisor: Ben Galehouse Presenter: Xiaoqi Cao

Divided-and-Conquer for Voronoi Diagrams Revisited. Supervisor: Ben Galehouse Presenter: Xiaoqi Cao Divided-and-Conquer for Voronoi Diagrams Revisited Supervisor: Ben Galehouse Presenter: Xiaoqi Cao Outline Introduction Generalized Voronoi Diagram Algorithm for building generalized Voronoi Diagram Applications

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

Outline of the presentation

Outline of the presentation Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz Outline of the presentation My work up to now Surfaces of Building Practice

More information

Geometric Steiner Trees

Geometric Steiner Trees Geometric Steiner Trees From the book: Optimal Interconnection Trees in the Plane By Marcus Brazil and Martin Zachariasen Part 2: Global properties of Euclidean Steiner Trees and GeoSteiner Marcus Brazil

More information

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions Data In single-program multiple-data (SPMD) parallel programs, global data is partitioned, with a portion of the data assigned to each processing node. Issues relevant to choosing a partitioning strategy

More information

Lecture 16: Voronoi Diagrams and Fortune s Algorithm

Lecture 16: Voronoi Diagrams and Fortune s Algorithm contains q changes as a result of the ith insertion. Let P i denote this probability (where the probability is taken over random insertion orders, irrespective of the choice of q). Since q could fall through

More information

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9. II.4 Surface Simplification 37 II.4 Surface Simplification In applications it is often necessary to simplify the data or its representation. One reason is measurement noise, which we would like to eliminate,

More information

Processing 3D Surface Data

Processing 3D Surface Data Processing 3D Surface Data Computer Animation and Visualisation Lecture 12 Institute for Perception, Action & Behaviour School of Informatics 3D Surfaces 1 3D surface data... where from? Iso-surfacing

More information

Scientific Computing WS 2018/2019. Lecture 12. Jürgen Fuhrmann Lecture 12 Slide 1

Scientific Computing WS 2018/2019. Lecture 12. Jürgen Fuhrmann Lecture 12 Slide 1 Scientific Computing WS 2018/2019 Lecture 12 Jürgen Fuhrmann juergen.fuhrmann@wias-berlin.de Lecture 12 Slide 1 Recap For more discussion of mesh generation, see J.R. Shewchuk: Lecture Notes on Delaunay

More information

THE METHODS OF TRIANGULATION

THE METHODS OF TRIANGULATION THE METHODS OF TRIANGULATION Abstract M. Varshosaz, Assistant Professor, Faculty of Geodesy & Geomatics Eng., K.N. Toosi University of Technology K.N. Toosi University of Technology, Vali_Asr St, Tehran,

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cells

Fully-automated hex-dominant mesh generation with directionality control via packing rectangular solid cells INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING Int. J. Numer. Meth. Engng 2003; 57:2099 2129 (DOI: 10.1002/nme.754) Fully-automated hex-dominant mesh generation with directionality control

More information

1 Automatic Mesh Generation

1 Automatic Mesh Generation 1 AUTOMATIC MESH GENERATION 1 1 Automatic Mesh Generation 1.1 Mesh Definition Mesh M is a discrete representation of geometric model in terms of its geometry G, topology T, and associated attributes A.

More information

Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams

Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams Quadratic and cubic b-splines by generalizing higher-order voronoi diagrams Yuanxin Liu and Jack Snoeyink Joshua Levine April 18, 2007 Computer Science and Engineering, The Ohio State University 1 / 24

More information

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 Reading: Today s materials is presented in part in Computational Geometry: Algorithms and Applications (3rd

More information

Collars and Intestines: Practical Conforming Delaunay Refinement

Collars and Intestines: Practical Conforming Delaunay Refinement Collars and Intestines: Practical Conforming Delaunay Refinement Alexander Rand and Noel Walkington Carnegie Mellon University Summary. While several existing Delaunay refinement algorithms allow acute

More information

Three applications of Euler s formula. Chapter 10

Three applications of Euler s formula. Chapter 10 Three applications of Euler s formula Chapter 10 A graph is planar if it can be drawn in the plane R without crossing edges (or, equivalently, on the -dimensional sphere S ). We talk of a plane graph if

More information

Computational Geometry

Computational Geometry Lecture 1: Introduction and convex hulls Geometry: points, lines,... Geometric objects Geometric relations Combinatorial complexity Computational geometry Plane (two-dimensional), R 2 Space (three-dimensional),

More information

COMPUTATIONAL GEOMETRY

COMPUTATIONAL GEOMETRY Thursday, September 20, 2007 (Ming C. Lin) Review on Computational Geometry & Collision Detection for Convex Polytopes COMPUTATIONAL GEOMETRY (Refer to O'Rourke's and Dutch textbook ) 1. Extreme Points

More information

1 Proximity via Graph Spanners

1 Proximity via Graph Spanners CS273: Algorithms for Structure Handout # 11 and Motion in Biology Stanford University Tuesday, 4 May 2003 Lecture #11: 4 May 2004 Topics: Proximity via Graph Spanners Geometric Models of Molecules, I

More information

Topological Data Analysis - I. Afra Zomorodian Department of Computer Science Dartmouth College

Topological Data Analysis - I. Afra Zomorodian Department of Computer Science Dartmouth College Topological Data Analysis - I Afra Zomorodian Department of Computer Science Dartmouth College September 3, 2007 1 Acquisition Vision: Images (2D) GIS: Terrains (3D) Graphics: Surfaces (3D) Medicine: MRI

More information

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces.

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces. Voronoi Diagrams 4 A city builds a set of post offices, and now needs to determine which houses will be served by which office. It would be wasteful for a postman to go out of their way to make a delivery

More information

CS 532: 3D Computer Vision 14 th Set of Notes

CS 532: 3D Computer Vision 14 th Set of Notes 1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating

More information

Monotone Paths in Geometric Triangulations

Monotone Paths in Geometric Triangulations Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation

More information

We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance.

We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance. Solid geometry We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance. First, note that everything we have proven for the

More information

An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems

An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems An Interface-fitted Mesh Generator and Polytopal Element Methods for Elliptic Interface Problems Long Chen University of California, Irvine chenlong@math.uci.edu Joint work with: Huayi Wei (Xiangtan University),

More information

Lecture 2 September 3

Lecture 2 September 3 EE 381V: Large Scale Optimization Fall 2012 Lecture 2 September 3 Lecturer: Caramanis & Sanghavi Scribe: Hongbo Si, Qiaoyang Ye 2.1 Overview of the last Lecture The focus of the last lecture was to give

More information

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra

[8] that this cannot happen on the projective plane (cf. also [2]) and the results of Robertson, Seymour, and Thomas [5] on linkless embeddings of gra Apex graphs with embeddings of face-width three Bojan Mohar Department of Mathematics University of Ljubljana Jadranska 19, 61111 Ljubljana Slovenia bojan.mohar@uni-lj.si Abstract Aa apex graph is a graph

More information

Hexahedral Mesh Generation using the Embedded Voronoi Graph

Hexahedral Mesh Generation using the Embedded Voronoi Graph Hexahedral Mesh Generation using the Embedded Voronoi Graph Alla Sheffer, Michal Etzion, Ari Rappoport, Michel Bercovier Institute of Computer Science, The Hebrew University, Jerusalem 91904, Israel. sheffa

More information

In this lecture we introduce the Gauss-Bonnet theorem. The required section is The optional sections are

In this lecture we introduce the Gauss-Bonnet theorem. The required section is The optional sections are Math 348 Fall 2017 Lectures 20: The Gauss-Bonnet Theorem II Disclaimer. As we have a textbook, this lecture note is for guidance and supplement only. It should not be relied on when preparing for exams.

More information

Fast marching methods

Fast marching methods 1 Fast marching methods Lecture 3 Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry of non-rigid shapes Stanford University, Winter 2009 Metric discretization 2 Approach I:

More information

Quadtrees and Meshing

Quadtrees and Meshing Computational Geometry Lecture INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Darren Strash 14.12.2015 Motivation: Meshing PC Board Layouts To simulate the heat produced

More information

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018

High-Dimensional Computational Geometry. Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 High-Dimensional Computational Geometry Jingbo Shang University of Illinois at Urbana-Champaign Mar 5, 2018 Outline 3-D vector geometry High-D hyperplane intersections Convex hull & its extension to 3

More information

Adaptive-Mesh-Refinement Pattern

Adaptive-Mesh-Refinement Pattern Adaptive-Mesh-Refinement Pattern I. Problem Data-parallelism is exposed on a geometric mesh structure (either irregular or regular), where each point iteratively communicates with nearby neighboring points

More information

Triangulation and Convex Hull. 8th November 2018

Triangulation and Convex Hull. 8th November 2018 Triangulation and Convex Hull 8th November 2018 Agenda 1. Triangulation. No book, the slides are the curriculum 2. Finding the convex hull. Textbook, 8.6.2 2 Triangulation and terrain models Here we have

More information

Week 7 Convex Hulls in 3D

Week 7 Convex Hulls in 3D 1 Week 7 Convex Hulls in 3D 2 Polyhedra A polyhedron is the natural generalization of a 2D polygon to 3D 3 Closed Polyhedral Surface A closed polyhedral surface is a finite set of interior disjoint polygons

More information

Triangles and Squares David Eppstein, ICS Theory Group, April 20, 2001

Triangles and Squares David Eppstein, ICS Theory Group, April 20, 2001 Triangles and Squares David Eppstein, ICS Theory Group, April 20, 2001 Which unit-side-length convex polygons can be formed by packing together unit squares and unit equilateral triangles? For instance

More information

Reasonably ecient Delaunay based mesh. generator in 3 dimensions. H. Borouchaki, F. Hecht, E. Saltel and P.L. George.

Reasonably ecient Delaunay based mesh. generator in 3 dimensions. H. Borouchaki, F. Hecht, E. Saltel and P.L. George. Reasonably ecient Delaunay based mesh generator in 3 dimensions H. Borouchaki, F. Hecht, E. Saltel and P.L. George August 23, 1995 INRIA, Domaine de Voluceau, Rocquencourt, BP 105, 78153 Le Chesnay Cedex,

More information

The Square Root Phenomenon in Planar Graphs

The Square Root Phenomenon in Planar Graphs 1 The Square Root Phenomenon in Planar Graphs Survey and New Results Dániel Marx Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary Satisfiability

More information

Algorithms for GIS:! Quadtrees

Algorithms for GIS:! Quadtrees Algorithms for GIS: Quadtrees Quadtree A data structure that corresponds to a hierarchical subdivision of the plane Start with a square (containing inside input data) Divide into 4 equal squares (quadrants)

More information

Computational Geometry. Definition, Application Areas, and Course Overview

Computational Geometry. Definition, Application Areas, and Course Overview Computational Geometry Definition, Application Areas, and Course Overview Computational Geometry is a subfield of the Design and Analysis of Algorithms Computational Geometry is a subfield of the Design

More information

Computational Geometry

Computational Geometry Motivation Motivation Polygons and visibility Visibility in polygons Triangulation Proof of the Art gallery theorem Two points in a simple polygon can see each other if their connecting line segment is

More information

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud International Journal of Computer Systems (ISSN: 2394-1065), Volume 03 Issue 02, February, 2016 Available at http://www.ijcsonline.com/ A Constrained Delaunay Triangle Mesh Method for Three-Dimensional

More information

Midpoint Routing algorithms for Delaunay Triangulations

Midpoint Routing algorithms for Delaunay Triangulations Midpoint Routing algorithms for Delaunay Triangulations Weisheng Si and Albert Y. Zomaya Centre for Distributed and High Performance Computing School of Information Technologies Prologue The practical

More information

Geometry I Can Statements I can describe the undefined terms: point, line, and distance along a line in a plane I can describe the undefined terms:

Geometry I Can Statements I can describe the undefined terms: point, line, and distance along a line in a plane I can describe the undefined terms: Geometry I Can Statements I can describe the undefined terms: point, line, and distance along a line in a plane I can describe the undefined terms: point, line, and distance along a line in a plane I can

More information

Tetrahedral Mesh Improvement Using Swapping and Smoothing. Lori A. Freitag. Phone: Fax:

Tetrahedral Mesh Improvement Using Swapping and Smoothing. Lori A. Freitag. Phone: Fax: Tetrahedral Mesh Improvement Using Swapping and Smoothing Lori A. Freitag Mathematics and Computer Science Division Argonne National Laboratory Argonne, Illinois 60439 Phone: 630-252-7246 Fax: 630-252-5986

More information

Chapter 1 Introduction Motivation Approach Significance of Research Overview of Material... 5

Chapter 1 Introduction Motivation Approach Significance of Research Overview of Material... 5 ACKNOWLEDGEMENT First and foremost, I would like to thank my thesis advisor, Dr. A. Lynn Abbott, for his invaluable guidance and patience throughout my entire study at Virginia Tech. Beyond gaining academic

More information

Non-extendible finite polycycles

Non-extendible finite polycycles Izvestiya: Mathematics 70:3 1 18 Izvestiya RAN : Ser. Mat. 70:3 3 22 c 2006 RAS(DoM) and LMS DOI 10.1070/IM2006v170n01ABEH002301 Non-extendible finite polycycles M. Deza, S. V. Shpectorov, M. I. Shtogrin

More information

GEOMETRY MODELING & GRID GENERATION

GEOMETRY MODELING & GRID GENERATION GEOMETRY MODELING & GRID GENERATION Dr.D.Prakash Senior Assistant Professor School of Mechanical Engineering SASTRA University, Thanjavur OBJECTIVE The objectives of this discussion are to relate experiences

More information