Top Banner
ELSEVIER Finite Elements in Analysis and Design 25 (1997) 275-295 FINITE ELEMENTS IN ANALYSIS AND DESIGN Adaptive mesh generation using a normal offsetting technique John M. Sullivan Jr."'*, James Qingyang Zhang b Mechanical Engineering Department, University (?f Vermont, Burlington, VT 05405, USA b Baystate Technologies, 33 Boston Post Road West, Marlborough, MA 01752, USA Abstract A fully automatic adaptive remeshing approach is presented for two-dimensional applications. The approach uses a normal offsetting technique to deploy nodes followed by Delaunay triangulation with a mesh resolution function based on the physics and problem geometry. The method can handle multi-connected boundaries and multiple material regions. The mesh density function, based on a given problem, provides the mechanism for automatic refinement in regions of strong gradients and coarsens elements where gradients are mild to give appropriate mesh densities throughout the domain. As a consequence, one can reach a desired level of accuracy with reduced computational efforts. 1. Introduction Domain discretization plays an important role in finite element analysis. During early develop- ment stages of the finite element method the greatest effort was focused upon developing improved methods of formulating and solving problems. The result was that pre- and post-processing techniques received limited attention. In recent years the Finite Element Method (FEM) and Boundary Element Method (BEM) have become integral components in the design/synthesis process in virtually all engineering sciences. However, the widespread incorporation of these analysis tools is hampered by the data preparation associated with discretizing complicated multi-dimensional geometries for numerical analysis. Owing to mesh generation's increasing role as a bottleneck in the finite element modelling and analysis, much attention has been focused on the problem of finite element mesh generation in the last few decades. Thacker [1] and Ho-Le [2] have published excellent reviews of the literature through 1982. Shephard [-3] and Baker [4] have published independent comprehensive reviews which include the current two- and three-dimen- sional techniques through the late 1980s. Much of the work of Lo and Lee in the 1990s has been * Corresponding author. 0168-874X/97/$17.00 @ 1997 Elsevier Science B.V. All rights reserved PII $0 1 68-874X(96)00056-X
21

Adaptive Mesh Generation Using a Normal Offsetting Technique

Nov 08, 2014

Download

Documents

Sara

Adaptive mesh generation using a normal offsetting technique
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Adaptive Mesh Generation Using a Normal Offsetting Technique

ELSEVIER Finite Elements in Analysis and Design 25 (1997) 275-295

FINITE ELEMENTS IN ANALYSIS AND DESIGN

Adaptive mesh generation using a normal offsetting technique

J o h n M. Sul l ivan Jr."'*, J a m e s Q i n g y a n g Z h a n g b

Mechanical Engineering Department, University (?f Vermont, Burlington, VT 05405, USA b Baystate Technologies, 33 Boston Post Road West, Marlborough, MA 01752, USA

Abstract

A fully automatic adaptive remeshing approach is presented for two-dimensional applications. The approach uses a normal offsetting technique to deploy nodes followed by Delaunay triangulation with a mesh resolution function based on the physics and problem geometry. The method can handle multi-connected boundaries and multiple material regions. The mesh density function, based on a given problem, provides the mechanism for automatic refinement in regions of strong gradients and coarsens elements where gradients are mild to give appropriate mesh densities throughout the domain. As a consequence, one can reach a desired level of accuracy with reduced computational efforts.

1. Introduction

Domain discretization plays an important role in finite element analysis. During early develop- ment stages of the finite element method the greatest effort was focused upon developing improved methods of formulating and solving problems. The result was that pre- and post-processing techniques received limited attention. In recent years the Finite Element Method (FEM) and Boundary Element Method (BEM) have become integral components in the design/synthesis process in virtually all engineering sciences. However, the widespread incorporation of these analysis tools is hampered by the data preparat ion associated with discretizing complicated multi-dimensional geometries for numerical analysis. Owing to mesh generation's increasing role as a bott leneck in the finite element modelling and analysis, much attention has been focused on the problem of finite element mesh generation in the last few decades. Thacker [1] and Ho-Le [2] have published excellent reviews of the literature through 1982. Shephard [-3] and Baker [4] have published independent comprehensive reviews which include the current two- and three-dimen- sional techniques through the late 1980s. Much of the work of Lo and Lee in the 1990s has been

* Corresponding author.

0168-874X/97/$17.00 @ 1997 Elsevier Science B.V. All rights reserved PII $0 1 6 8 - 8 7 4 X ( 9 6 ) 0 0 0 5 6 - X

Page 2: Adaptive Mesh Generation Using a Normal Offsetting Technique

276 J.M. Sullit,an, J.Q. Zhan~! Finite Elements in AnalvsL~' and Design 25 /1997) 275-295

focused on adaptive mesh generation [5-9]. Our work has stressed unstructured mesh generation in deforming and adaptive situations [10 15].

Most mesh generation strategies are based on the geometry of the objects. A typical domain discretization process creates equally spaced nodes yielding a uniform structured mesh distribution with local mesh refinement introduced in certain regions according to the user's experiences. This methodology is adopted frequently by commercial software systems. However, the finite element solution error is related to the size and distribution of the elements in the mesh as well as the problem specific physics. In fact, for the same physical problem but different boundary conditions, significantly different mesh requirements can exist. Generally, in FEM as the mesh is refined the accuracy of the solution, as well as its cost. increases. Excessive or ineffective refinement of domains consumes computational resources unnecessarily.

Traditionally, mesh refinement was the task of the numerical analyst. They were responsible for converting a CAD geometry into a valid numerical model and solving the set of governing equations via FEM or an alternate numerical solution strategy. However, with the integration of FEM into the design/synthesis process much of this work is streamlined. A numerical model can be created transparent to the user. In this mode of operation, procedures are required to address the appropriateness of the numerical model. Consequently, adaptive finite element methods have been the focus of considerable research efforts for the last few years. Therein, a procedure is provided in which the finite element model is created simultaneously with the solution. Frequently, it uses the solution from a previous mesh to create a new mesh. An objective of adaptive FEM is to obtain the best solution of physical phenomena for a given computational effort, that is, a mesh structure that allows one to achieve the correct level of accuracy to a problem in the minimum time and/or computational effort.

1.1. Adapti~'e mesh generation

In recent years, a significant effort has been dew,ted to adaptive mesh generation [5 10, 16-23]. These methods can be classified in two categories of adaptivity for FEM analysis:

1. h-method: The elements of the initial mesh are subdivided into smaller elements or merged into larger elements.

2. p-method: The order of the polynomial used for the element interpolation function is in- creased or decreased while keeping the geometry of the element constant,

Simultaneous use of both types of refinement, or h-p adaptivity, tries to take advantage of both strategies.

Implementation of the p-method is more complicated than the h-method, because extensive modifications of the analysis program are required. Additionally, higher-order polynomials can introduce artificial oscillations in the solution. The h-method is applicable to all existing codes. Although, the degrees of freedom of the problem can increase significantly relative to the p-method.

Several mesh-enrichment methods retain the original node locations and add or remove nodes based on this original template. An attractive alternative is a complete mesh regeneration, which can be guided by specified mesh density requirements [19]. We concur with this latter mesh generation approach and have coupled it with a h-method adaptive process for a robust, general application solver.

Page 3: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements' in Analysis and Design 25 (1997) 275-295 277

2. The normal offsetting technique

2.1. Overview

The normal offsetting technique has been shown to be an effective mesh generation strategy in two and three dimensions [13, 14]. We review briefly the basis of this approach as presented earlier in [13] and expand its robustness by adding multiple material capabilities and enhanced multiple boundary configurations. The mesh generation method is divided into several steps. The user enters the boundary geometry, composed of line segments, at the desired boundary resolution. Nodes are deployed in the domain by offsetting the initial array of nodes located on the boundary inward along vectors normal to the boundary geometry and processing the resulting new points to determine new nodal locations. These new nodal locations are offset initiating another cycle. This sequence of offset-process-offset continues until nodes are deployed throughout the domain. Finally, an element connection via Delaunay triangulation is applied to produce the final mesh.

The term layer is used to describe a set of points that are related by their similar depth toward the interior of the domain from the boundary. The term points is used to refer to the discrete offset locations in a layer before the locations are processed to determine their final locations. Nodes are the final, processed locations that make up the actual mesh. A row is represented by line segments which connect the points in a layer to form a continuous closed loop(s). The layer of nodes upon which the offsetting process is currently performed is the active layer and the resulting offset point locations is called a new layer. The active layer is referred to as the parent of the new layer. A complete cycle of offsetting an active layer to create a new layer and processing the new layer to determine nodal locations is referred to as a step. At the end of each step the new layer is ready to become the parent layer for the next step. Portions of the domain in which nodes have been deployed are referred to as meshed regions. Those regions in which no nodes have yet been deployed are unmeshed.

Initially, the unmeshed domain consists of the entire region within the geometric boundary. Following an offset step, the new layer of nodal locations forms a new interior boundary surrounding a new domain of unmeshed space. This new bounding layer, and the unmeshed domain, are conceptually and structurally identical to the original boundary and domain and may be passed through the offset process again to form yet another layer of nodes. The process is repeated in sequence until the offset layer converges in the interior and the domain is filled with nodes. During offsetting, the shape of the new offset layer will not be the same as that of its parent layer or of the original boundary. The mesh density function gives local control over the deployment. Additionally, offsetting along vectors normal to curved boundaries causes conver- gence in concave regions and divergence in convex regions. These factors coupled with loop intersections change the shape of the working layer.

A sequence of tests, which increase in computational complexity, are used during the offsetting process. Neighbor distance tolerance checking is followed by an angle tolerance check with a loop intersection check performed thereafter. This test sequence rectifies each new layer to ensure an appropriate node deployment in the domain.

Page 4: Adaptive Mesh Generation Using a Normal Offsetting Technique

278 .I,M. Sulliran. ,I.Q. Zhang l, Tnite Elemenls m Analysis and Design 25 (1997) 275-295

2.2. Mesh densiO,./imctio,

One advantage of the normal oft~etting technique is its ability to control the density and gradation of element sizes from one location within the domain to another. Proper distribution of mesh density can increase the accuracy of the analysis solution in a specific area without massively increasing the total mesh, which is an objective of adaptive mesh generation. The source of mesh density information differs greatly for different applications. In transient and iterative situations, results from a previous analysis iteration often form the basis for adjusting local mesh density. In this normal offsetting package, mesh density is an external function independent of the mesh generator itself. Consequently, it offers the user the flexibility to tailor a mesh density for each application.

The only requirement for a mesh density function is that it be able to return a unique density value for any arbitrary point in the domain. The density value can be a function of geometry and/or any interested physical properties, such as potential gradient or strain energy.

2.3. The normal q~.s'etti,g

The calculation of point locations associated with an offset layer requires three components: an initial layer of locations, offset directions, and offset distances. The initial locations are provided by the active layer nodes. The offset directions, Vi, are normal to the active layer at each particular node, Ni, of the active layer. This normal value is calculated directly from the normals of the two attached line segments, Fig. 1.

The offset distance along this normal vector is determined from two components: a characteristic element size and a mesh density value at a given point. The characteristic element size, which defines a offset distance with unit mesh density, could be given by the user or defaults to the maximum element size on the boundal y. The local mesh density value is obtained by a query to an external function which returns a scalar value for a given coordinate location. The mesh density is a function of domain geometry and/or physical properties of the system.

Once the new offset point location has been determined, the mesh density value is checked at this location. If this density value differs significantly from the density value at the parent node, then a new offset distance and a new offset point location are calculated using the new density value. This process is repeated until the offset location converges.

Offsel distance

. ' / \ rJl[ ~ , . ~ " ~ I'-,\ , ~ Offset or

Fig. 1. Calculations of offset point locations. ITaken from Ref. [13]).

Page 5: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements in Analysis and Design 25 (1997) 275-295 279

2.4. Distance tolerance checking

As each layer of nodes is offset, the overall length of the layer changes, even though the initial number of points in an offset layer is the same as that of the nodes in the parent layer. Thus, the spacing along the new layer must be checked and adjusted to ensure acceptable mesh density. Only the tangential spacing within the layer needs to be checked since the normal spacing between layers is ensured during the calculation of the offset distance. The spacing between adjacent points is compared with the spacing specified by the local mesh density at that particular location. If the spacing between two adjacent points is less than a given percentage of the specified spacing they are snapped together to form a single point at the average coordinate. If the spacing between point pairs exceeds this ideal spacing by a given percentage, a new point is inserted into the layer connectivity at the midpoint.

2.5. Angle tolerance checking

In areas of high concave curvature, sharp corners will form in the advancing layer of offset points. This situation results in unacceptable spacing between non-adjacent points, Fig. 2. The

Extra point in diverging region

\ I

Comer collapsed, j Connectivity rerouted

Points snapped.in I ~ I ~' / 1 j ~ ' 1 c°nvergmg regmn

~ ~ k ~ ~ Sharp angle in J R'i R, advancing front

1

a)

7 ,y I I \ / / v ~ ~ I

\

1

b)

Fig, 2. (a) Sharp angle identified in working layer. (b) Vertex point is removed from advancing layer but is retained as a valid Node in data structure (Taken from Ref. [13]),

Page 6: Adaptive Mesh Generation Using a Normal Offsetting Technique

280 J.M. Sulliz'an. J.Q. Zhan.q/ Finite Elements in Ana/vsis and Design 25 (1997) 275 295

interior angle formed by each series of three nodes is calculated and checked against two criteria. If the interior angle is less than a certain value then the vertex point is removed from the layer connectivity. The vertex is maintained in the layer data structure as a secondary point for which a node will be created but which will not be offset in the next step. If the interior angle is less than a minimum value then the two end points are snapped together as well. Implemented values of 60 for the first criterion and 45 for the second limit have worked well.

2.6. Intersection checking

Two separate situations are handled by this process: single-loop intersections and multi-loop intersections. A single-loop intersection occurs when two opposite or distinct parts of the same row meet and advance over each other. This situation must be detected and the row modified to maintain acceptable nodal spacing and suitable row geometry for subsequent steps. Multi-loop intersection checking is required for geometries with multi-connected boundaries, or holes, in the domain. The boundary of each hole is treated as a separated section of the layer. Each section represents a closed loop of points and is processed separately through the offsetting procedure. Since the normals associated with the nodes around the hole will point 'outward' from the hole into the region to be meshed, this section of the row will expand exactly as a convex region does until a collision with the inward moving exterior section or the outward section from another hole is detected. In this situation a Boolean operation is applied to form new loop sections for subsequent offsetting steps.

2.6.1. SelJ~intersection checking Each line segment of the current row is checked with the other line segments in the row using

a simple line intersection test. The type of intersection, terminal or overlap, is determined by stepping from one intersection to the next along the row. If the same intersection is encountered twice in sequence, a terminal loop has been detected. If distinct intersections are found in sequence, a collision overlap has been found.

The area enclosed by the loop or overlap is collapsed, resulting in a series of points approxim- ately along the "centerline" of the area. If any of the collapsed positions fall within a tolerance of the previous row then the spacing between the sides of the previous row is already acceptable and the point is eliminated. This tolerance is taken as 1/3 of the expected nodal spacing, as obtained from the base element size and mesh density function. As with the distance tolerance check, the criterion ensures a reasonable nodal deployment. The collapsed points are then checked with the distance criteria and snapped together if they fall within the distance tolerance.

The connectivity of the row is adjusted to bypass points in the overlap region in the next offsetting cycle. As with the collapsed angles, the bypassed points are kept as secondary points and nodes generated for their locations. For terminal loops the collapsed section is bypassed by adjusting the row connectivity around the collapsed points. For overlap collisions the connectivity must be rerouted at both ends of the collapsed region. The result is that the row is effectively split into independent loops, or sections.

Page 7: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements in Analysis and Design 25 (1997) 275-295 281

2.6.2. Multi-loop intersection Boolean operations have been added to treat multi-loop intersections. The checking is processed

based on loop pairs. Two types of loop intersections can occur in normal offsetting. For intersec- tions between two outward loops, i.e. internal holes expanding outward, a union operation is applied which merges the loops into a single outward loop. For the intersection of an inward (exterior) loop with an outward (interior) loop, a difference operation is applied to form new valid row sections for normal offsetting. The checking goes on for each loop in the active row paired with the other loops in the row. An example of this multi-loop intersection is presented in Fig. 3. In Fig. 3(a) the original boundaries are displayed showing two internal holes (or other material regions). The first offset vector directions are shown in Fig. 3(b). These new locations are processed for neighbor distance checks and angle checks prior to the intersection checking routines, Fig. 3(c). After the intersection checks the two internal holes have merged creating a small, centrally located island, that will be meshed, surrounded by a single loop expanding outward, Fig. 3(d). After 4 offset

(a)

(c)

@ (b)

(d)

(e) (f)

Fig. 3. Multiple loops intersect, join, and split based on boolean operations.

Page 8: Adaptive Mesh Generation Using a Normal Offsetting Technique

282 J.M. Sullivan, J.Q. Zhan.q / Finite Element.s in Analysis and Design 25 (1997) 275 295

layers the expanding interior loop intersects the inward driving exterior loop, Fig. 3(e). These intersections create two separated crescent shaped loops that will proceed independently. Another two offsets and the left loop splits again~ Fig. 3(f). The process terminated after seven offsets.

2. 7. Convergence and termination

The off'setting process advances step by step into the interior of the domain. Eventually, the layer converges and the domain is filled with an acceptable array of nodes. At this point the convergence must be recognized and the offsetting process terminated. In general, termination occurs when the insertion of additional nodes within the bounds of current layer either degrades mesh quality or produces an inappropriate mesh density in the region. To detect convergence a series of simple tests are performed on the layer alter each step.

First, the number of points remaining in the layer is checked. This number must be at least one more than the minimum number of nodes in the type of element to be used in the mesh. If the number of nodes equals the number of nodes in an element then those nodes must form an acceptable element since the nodal spacing, and thus the element geometry, is checked during processing. If the number of remaining points is less than the number of nodes in an element, the layer can no longer form a closed boundary.

Next the oriented area of the remaining section is checked. If the oriented area enclosed by the active row is negative then the row has completely overlapped. Two possibilities exist in this case. If the absolute area inside the current row is larger than the area inside the previous row, then the current row has on average expanded beyond the perimeter of the previous row and back into meshed areas. In this case the row is terminated without saving any of the points. If the absolute area is less than the previous row, the current row is still, for the most part, within the bounds of the previous row. In this case the row is collapsed and processed as an overlap collision area and the remaining points are added to the mesh database.

2.8. Multi-material regions

The offset normal process is based on a front advancing from the boundaries, internal or external, into the domain. We have implemented preprocessor that decomposes each material region into independent zones coupled at the interfacial boundaries only as shown in Fig. 4. After deploying nodes in each single material domain by normal offsetting, a post-processor eliminates those duplicate nodes on interior boundaries and creates a final output of the finite element mesh. This implementation is robust and its data structure handles arbitrary complex geometries.

2. 9. Mesh smoothing

Mesh smoothing is a technique to improve mesh quality by postprocessing. One of the most common methods is Laplacian smoothing, which attempts to reposition each interior node at the centroid of the polygon formed by its connected neighbors in order to improve element shape. The raw mesh produced by the normal offsetting mesh generator is of sufficient quality to be used directly. Hence, all examples presented are not postprocessed.

Page 9: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhany / Finite Elements in Analysis and Design 25 (1997) 275-295 283

Material 3

Material 2 ~ Material 4

Material 1

0 [] @

<meshl.pre> <mesh2.pre> <mesh3.pre> <mesh4.pre>

Fig. 4. Each material region is meshed independently and then merged to form one contiguous, nonoverlapping mesh.

3. Adaptive implementation

3.1. Overview

The normal offsetting mesh generator is used in an adaptive mesh generation system composed of six modules: (1) a data input module, (2) a preprocessing unit, (3) the mesh generation routine, (4) a postprocessor for FEM model formatting, (5) a FEM solver, and (6) a Contour display and Assessment routine, Fig. 5. A description of each follows.

Module 1: DATA_INPUT Through this module, the user interactively defines the problem statement and geometry outline.

The physical geometry, boundary conditions, material regions, material properties, source loca- tions and strengths, if any, are specified, Fig. 6.

An interactive X-window based graphics module was developed for construction and display of geometric entities and other system parameters. Here one interactively builds rectangle, circle, poly-line/are and B-spline geometric entities. Alternately, a more sophisticated CAD modeler can be used to build the geometry saving the entities in an IGES format datafile. Thereafter, the physical attributes and boundary conditions can be applied using the DATA INPUT module.

Module 2: PRE_ PROCESS This module decomposes the geometry datafile into a set of boundary definition files based on

different material regions for mesh generation. During preprocessing all closed loops on the domain boundary are determined and ranked in order of decreasing area. A search of the loop list is made to identify any nested loops. If such loops exist they are treated as holes during the node deployment of the bounding loop. A schematic example was presented in Fig. 4. If sources exist in the domain, a source list is created for later use.

Module 3: MESH2D A single material domain is represented by linear line segments connected sequentially to form

closed loops that bound the material regions completely and exclusively. The normal of each loop

Page 10: Adaptive Mesh Generation Using a Normal Offsetting Technique

284 J.M. Sullivan, J.Q. Zlmml. fTnite Elements m Anah'sis and Design 25 (1997) 275-295

Module 1 Data_Input

Model Definition ] i

<xxx.dat> Geometry I ~.

Boundary Conditions I Sources

Materials

Module 2 Pre Process

Generate Independent Offsetting Data Files

PARA.SYS

Module 6

Module 3 Mesh2d

main.pre Mesh Generation I meshl .pre First pass: Ii mesh2.pre~ Geometry density I

. Subsequent passes: meshn.pre Geo&Physics den

Background Meshl Physics-Based Density Array

No

Convergence ]

nodel.pos eleml .pos

noden.pos elemn.pos

1 Contour Display I Current

and I Mesh Mesh Resolution 4 Assessment Solver Solution

Module 4 Post_Process

Synthesis Renumber

Identify Bdys & Sources

l grid.out

Module 5

Fem2D

Banded 2D Matrix

Solver

Fig. 5. Adaptive modules for automatic mesh gcneration and physics solver.

segment points inward to the domain following a right-hand coordinate convention. This situation requires outer loops to have a clockwise orientation (CW) whereas inner loops are orientated counter clockwise, CCW.

The density calculation is based on the geometry and/or physics of the problem. A mesh node density flag in the user-specified datafile directs the density options. If no information is available based on the physics or other guiding mechanism the program calculates a density function at each boundary node based on the spacing of the adjacent boundary line segments. The program then triangulates the boundary nodes using the Delaunay method to create a background mesh. During the offsetting process the density function for any interior location is interpolated from this background mesh. The interpolation routine uses the same finite element basis functions as does the finite element solver. This geometry-based interpolation provides the mesh resolution specifica- tions for the initial mesh.

During adaptive remeshing, a solution field exists on the current mesh. As part of the input process the user specified the level of discretization via a single integer value. This input dictates how many nodes should be deployed along the solution path. If the temperature ranged from 0 to 100 ° and the user specified a resolution of 20 then nodes would be deployed approximately every 5 ; barring any geometry constraints. If a 10 change existed across an element in the current solution, the physics-based density value would double from its current setting for the next iteration. The density routine combines the geometric- and physics-density values for an adaptive nodal density value, p;, determined via

~)i = (WgDgi ~- WpDpi), (1)

where Dgi is the geometric density at point i, Ppi is the physics density at point i, Wg is the weight for geometric density and W o is the weight for physics density.

Page 11: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements in Analysis and Design 25 (1997) 275-295 285

ml Finished

i" i Extract

Geometric EntitiesB.C.s,

& System Parameters

I CreateFiles PARA,SYS

& <xxx.dat>

Create New File

k

I Geometries

Create Geometric Entities

Geometric Entities

Display options

Readln IGES

File

Declare

Conditions

Dirichlet

Neumarm

Catchy

EditExisting Data_Inpt~

File

,11

Declare Sources

Location

Strength

I System Parameters

h i l~mity Mode

Implicitness

Tolerance

FourieNo.

Material Values

Resolulion f(AT)

I

Fig. 6. Input module for interactive definition of problem geometry and boundary conditions.

In this work Wg was set to 0.75 for the first offset layer, and 0.0 thereafter. The mesh density value determines the offset distance from the node with respect to the maximum boundary nodal spacing. An offset distance is calculated by multiplying the mesh density value at a given node with the default boundary nodal spacing. The new row formed by offsetting is then subjected to the distance tolerance checks, angle tolerance checks, and intersection checks, as discussed previously. Follow- ing nodal deployment a Delaunay triangulation establishes a new topology in the single material domain.

Module 4: POST_ PROCESS The output files from MESH2D are merged into a single node and element file of the entire

geometry. All redundant interfacial nodes are coalesced with appropriate node and element resequencing. A global bandwidth reduction is performed. The boundary conditions and source terms determined in the D A T A _ I N P U T module are matched to the global mesh and appended to the general grid file.

Page 12: Adaptive Mesh Generation Using a Normal Offsetting Technique

286 J.M. Sullit~an, J.Q. Zhan~t,, [~Tnite Elements in Analysis and Design 25 (1997) 275 295

M o d u l e 5: FEM2D The geometry and boundary conditions are read, via the grid file, into this finite element solver

module. The material properties and other system parameter options are stored in the system definition file which was built in the DATA INPUT module. A numerical solution is obtained using a banded direct matrix solver.

M o d u l e 6: CONTO UR and ASSESSMENT This postaudit routine graphically displays the temperature field (or other potential function) on

the current mesh. The FEM2D solution is used to assess the quality of the mesh. For this work the temperature gradient at each node is determined from the FEM2D solution. This calculated gradient and the target resolution, specified by the user in Module 1, are used to determine the local physics-based node density value. This new nodal density array is compared to the previous physics-based density array, interpolated to the current mesh if it exists, for convergence.

If the physics-based density array has converged within tolerance the final mesh and solution are written to output files. Otherwise, the new density array and the current mesh (updating the previous background mesh) are passed to Module 3.

4. Problem statement

A two-dimensional transient heat conduction problem was taken as the physical model for this work. The governing equation has the form

aT C~-~ = V' IKVT) + S (2)

C I

with possible boundary conditions of

Dirichlet: T = T(specified), Neumann: q n = - K V T n,

Cauchy: q . n = h ( T - T ~ m ~ ) = a T + h ,

where c is the volumetric specific heat capacity of the material, k is the thermal conductivity of the material, q is the heat flux, S is the line heat source (or sink) term, h is an external heat transfer coefficient and Tamb is the ambient temperature.

A numerical solution of(2) is obtained using a direct banded matrix solver strategy. For transient situations the user specifies the degree of implicitness (0 ~< 0 ~< 1) and the nondimensional Fourier number.

5. Results

Three examples are presented in this section to demonstrate the performance of the adaptive remeshing approach using a normal offsetting technique coupled with a variety of mesh density options. These examples show that the method can deal with arbitrary geometries, multi-connected boundaries and multiple material regions.

Page 13: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J,Q. Zhang / Finite Elements' in Analysis and Design 25 (1997) 275-295 287

The first example is a 2D slice, from a stereolithography rapid prototyping operation, of a circular plate with several interior holes. An IGES datafile was read for geometry definitions as displayed in Fig. 7. No physics or boundary conditions were specified. A resolution of 50 was entered, which in the absence of physics defaults to the node count spanning a bounding perimeter. The resulting mesh is displayed in Fig. 8. A rerun of this situation with a node resolution of 85 is displayed in Fig. 9. These figures show the ability to discretize arbitrary domains exhibiting convex, concave, and slender sections with well shaped elements.

The second example is a cross section of a fixed blade with two interior holes in which coolant flows. The steady-state, dimensionless form of (2) without sources was used with Dirichlet boundary conditions. A nondimensional temperature T = 1.0 was specified on the outer boundary and a T = 0.2 was specified about the interior holes. A background mesh was created based on the boundary resolution and is displayed in Fig. 10. Module 4 of the adaptive mesh generation system invoked a bandwidth minimization routine and assigned the boundary nodes and values automati- cally. The solution field was superimposed on this background mesh in Fig. 11. Note that the gradients circa the holes are quite strong relative to the midsection of the blade. Module 6 assessed that the resolution was insufficient virtually everywhere based on a resolution of 8 specified in Module 1. The adaptive system iterated once on the problem. A refined mesh was produced automatically in which the temperature drop across each element was uniform. This refined mesh is displayed in Fig. 12. Note the increased resolution in the vicinity of the interior holes and the slight increased sparceness in the blade's midsection relative to the default background mesh. An enlarged view of the nose section in Fig. 13 shows well formed elements and a node resolution of 8 along gradient lines. Elements adjacent to each boundary receive weighted contributions from both geometry and physics density routines as discussed previously.

Fig. 7. Boundary definition of a circular plate with mul- Fig. 8. Prototype meshed with a 50 node resolution per tiple complex geometries, range extent.

Page 14: Adaptive Mesh Generation Using a Normal Offsetting Technique

288 J.M. Sullivan. J.Q. Zhan~l. Finite Eleme~ts in Anah,sis and Design 25 (1997) 275-295

Fig. 9. Prototype meshed with an 85 node resolution per range extent.

Fig. 10. Initial geometry-based mesh created by adaptive mesh generation system.

The third example is taken from a digitized CAT scan of a human body which consists of multiple material regions as shown in Fig. 14. A brief summary of the situation surrounding this example is as follows. It has been shown that elevating the temperature of a cancerous tumor may have therapeutic results. However, only a small temperature range exists where the cancerous cells

Page 15: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements in Analysis and Design 25 (1997) 275 295 289

Fig. 11. Solution field overlaid on background mesh.

Fig. 12. Automatically refined mesh based on problem physics and boundary discretization.

die without sacrificing normal body tissue cells. Consequently, investigators are trying to locally elevate the temperature of cancerous tumors. One possible heating strategy is to insert microwave antenna probes into the tumor. Unfortunately, the power requirements are unknown due to the complex heat transport physics. A general approach to the solution of this problem is to solve the

Page 16: Adaptive Mesh Generation Using a Normal Offsetting Technique

290 J.M. Sullil'an, J.Q. Zhanq. fTnite Elements in And&sis and Design 25 (1997) 275- 295

Fig. 13. Enlarged view from nose section of blade showing approximately 8 nodes along the gradient path.

. External Boundar), "- .... / / - T = 0 ~ ' N /,/~B.._ ~"~Nondimensional )

,/ Smooth \ Muscle 7/ T ~\\

/ ]

; / / Bladder ',,,. \ \ P e l v i c / ] , , P e l v i c )

\~ Bone (/ i ~ Bone } \ '! i

\ \ \

Cancerous ~ • Source / ,, Tumor ~ Loc \\ '\ •

..... . - > / / /

Fig. 14. Internal and external boundary definition of body from CT scan.

Bioheat transfer e q u a t i o n which can be represented in d i m e n s i o n l e s s form as [24]

a T C ~ 7 = V . ( K V T ) - m T + S, (3)

where the n o n d i m e n s i o n a l term m a c c o u n t s for the b lood f low perpendicu lar to the test domain .

Page 17: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhang / Finite Elements in Analysis and Design 25 (1997) 275-295 29l

For the simulations presented m was set to 1 with c = 0.6 and k -- 0.003 in muscle c = 1.0 and k = 0.004 in bladder c = 0.6 and k = 0.006 in bone, and c = 0.5 and k = 0.003 in the tumor.

T is the dimensionless temperature, with a target range of 0 ~< T ~< 1 where T = 1 corresponds to a temperature 6°C above the normal basal temperature in dimensional space and T = 0 corres- ponds to normal body temperature. For successful hyperthermic treatment the entire tumor must be elevated 4.5°C with an upper safety limit of 6°C. The source term S accounts for the microwave antenna power. The power value is unknown and must be solved iteratively based on the developed temperature field.

The system automatically meshes the domain outlined in Fig. 14 using the offsetting normal strategy and the boundary discretizations. Dirichlet boundary conditions on the external boundary (T = 0) and a source strength were specified in Module 1. This initial mesh is shown in Fig. 15. Note that all internal boundaries are preserved with fidelity. No elements cross physical

Fig. 15. Geometry-resolved mesh with contours ranging from 0 at the external boundary through 1.5 at the upper source in increments of 0.25. The mesh preserved all boundaries.

Page 18: Adaptive Mesh Generation Using a Normal Offsetting Technique

292 J.M. Sullil~an, J.Q. Zhan# / Finite Elements in Analysis and Design 25 (1997) 275~95

boundaries. This mesh generation feature facilitates the application of material specific thermal properties.

The initial solution from Module 5 is superimposed in Fig. 15. This initial mesh was based on geometry considerations only. Note that in the regions distant from the source locations approxim- ately 5 elements exists between contour lines. However, in the vicinity of the sources less than one element spans a contour line. Module 6 of the system assesses the physical density requirements based on a desired resolution of 8 and returns to Module 3 fore remeshing.

We deactivated the geometry weighting function temporarily and created a new mesh based on physics only (as well as the boundary resolution constraints). This solution field is displayed in Fig. 16. Note that the thermal activity far from the sources are quite mild. The internal geometry resolution exceeds the physics based requirements which results in somewhat slender elements at the top of the figure. Reinstating the geometry based density weighting function the adaptive mesh created smooths the transitions from the boundaries as shown in Fig. 17. Immediately apparent are the well shaped elements, the continuous change in element size as one approaches area of high

/j'/

Fig. 16. Physics-resolved mesh with contours ranging from 0 at the external boundary through 1.5 at each source in increments of 0.25. The mesh has all internal boundaries preserved.

Page 19: Adaptive Mesh Generation Using a Normal Offsetting Technique

J,M. Sullivan, J.Q. Zhanf / Finite Elements in Analysis and Design 25 (1997) 275-295 293

Fig. 17. Geometry and Physics resolved mesh with contours ranging from 0 at the external boundary through 1.5 at two of the sources in increments of 0.25. The mesh has all internal boundaries preserved.

thermal gradients and the preservation of the material boundaries. The resolution of each physical boundary is not changed during the simulation.

Conclusions

A fully automatic adaptive remeshing approach was presented for two-dimensional applications. The approach used a normal offsetting technique to deploy nodes followed by Dclaunay triangula- tion with a mesh resolution function based on the physics and problem geometry. The method handled multi-connected boundaries and multiple material regions. The mesh density function, based on a given problem, provided the mechanism for automatic refinement in regions of strong gradients and coarsened elements where gradients were mild to give appropriate mesh densities throughout the domain. All numerical meshes preserved the physical boundaries with fidelity. As a consequence, this form of adaptive finite element solvers is well suited for incorporation into CAD systems which integrate FE analysis into their packages. It allows the meshes to be created

Page 20: Adaptive Mesh Generation Using a Normal Offsetting Technique

294 J.M. Sulli~an, J.Q. Zhang Finite Elements in Analysis and Design 25 (1997) 275-295

transparent to the user and it has a methodology to address the appropriateness of the numerical model.

Acknowledgements

This work was sponsored in part by the NIH Grant # 5 R01 CA37245-08

References

[1] W.C. Thacker. "'A brief review of methods used for generating irregular computational grids", Int. J. Numer. Methods En.q. 15, pp. 1355-1341, 1980.

[2] K. Ho-Le. "'Finite element mesh generation methods: A review and classification", Comput. Aided Des. 20, pp. 27 38, 1988.

[3] M.S. Shephard, "Approaches to the automatic generation and control of finite element meshes", Appl. Mech. Rer. 41, pp. 169 184, 1988.

[4] T. Baker, "Developments and trends in three dimensional mesh generation", J. Appl. Math. 5, pp. 275 304, 1989. [5] S.H. Lo, "'Automatic mesh generation and adaptation by using contours", Int. J. Numer. Methods En~l. 31, pp. N4,

1991. [6] C.K. Lee and S.H. Lo, "An automatic adaptive refinement finite element procedure for 21) elastostatic analysis".

Int. J. Numer. Methods En~l. 35, 1992. [7] S.H. Lo and C.K. Lee, "Solving crack problems by an adaptive refinement procedure", En.q. Fracture Mech. 43,

1992. [8] S.H. Lo and C.K. Lee, "'On using meshes of mixed element types in adaptive finite element analysis", FEAD 11,

1992. [9] C.K. Lee and S.H. Lo. "An automatic ~tdaptive refinement procedure using triangular and quadrilateral meshes",

Enq. Fracture Mech. 50, 1995. [10] J.M. Sullivan..lr. and D.R. Lynch, "Grid generation for dendritic growth simulations on deforming elements", in:

R.W. Lewis et al. (eds.), Numerical Methods in Thermal Prohlems, Vol. 5, Pineridge Press, Swansea, pp. 5 14, 1987. [11] J.M. Sullivan, Jr., "Automated mesh generation for simulations exhibiting extreme geometric change", in: B. Prasad

{ed.), CAD~CAM Robotic and Faetm'ies (~f the Future, Springer, Berlin, pp. 60-64, 1989. [12] B.P. Johnson, J.M. Sullivan, Jr. and A. Kwasnik, "'Automatic conversion of triangular finite element meshes to

quadrilateral elements", Int. J. Numer. Methods En~l. 31, pp. 67-84, 1991. [13] B.P. Johnson and J.M. Sulliwm, Jr.. "'Fully automatic two dimensional mesh generation using normal offsetting",

Int. J. Numer. Methods En~l. 33, pp. 425 442, 1992. [14] B.P. Johnston and J.M. Sulliwm, Jr., "A normal offsetting technique for the fully automatic generation of meshes in

three dimensions", Int. J. Numer. Methods En~l. 36, pp. 1717 1734, 1993. [15] ,I.M. Sulliwm, Jr.. G. Charron and K.D. Paulsen, "'A three dimensional mesh generator for arbitrary, multiple

material domains", submitted. [I 6] O.C. Zienkiewicz and J.Z. Zhu, "'Adaptivity and mesh generation", Int. J. Numer. Methods Eng. 32, pp. 783 810,

1991, [17] H. Jin and N.E. Wibe,g, "Two-dimensional mesh generation, adaptive remeshing and refinement", Int. J. Numer.

Methods Enq. pp. 1501 1526, 1990. [18] M.C. Rivara, "Selective refinement/derefinement algorithms for sequences of nested triangulations", Int, J. Numer.

Methods Enq. 28, pp. 892 906, 1989. [19] E.A. Thornton and G.R. Vemaganti, "'Adaptive remeshing method for finite-element thermal analysis ~', J. Ther-

mophys, and Heat Transji, r 4, pp. 211 220, 1990. [20] P. Roberti and M.A. Melkanofl; "Self-adaptive stress analysis based on stress convergence", Int. J. Numer. Methods

En,q. 24, pp. 1973 1992, 1987.

Page 21: Adaptive Mesh Generation Using a Normal Offsetting Technique

J.M. Sullivan, J.Q. Zhanq / Finite Elements in Analysis and Design 25 (1997) 275-295 295

1-21] M.K. Georges and M.S. Shephard, "Automated adaptive two-dimensional system for the hp-version of the finite element method", lnt. J. Numer. Methods Eng. 32, pp. 867-893, 1991.

[22] R.V. Nambiar, R.S. Valera, K.L. Lawrence, R.B. Morgan and D. Amil, "An algorithm for adaptive refinement of triangular element meshes", lnt, J. Numer. Methods Eng. 36, pp. 499-509, 1993.

[23] O.C. Zienkiewicz and J.Z. Zhu, "A simple error estimator and adaptive procedure for practical engineering analysis", Int. J. Numer. Methods Eng. 24, pp. 337-357, 1987.

[24] J.W. Strohbehn, K.D. Paulsen and D.K. Lynch, "Use of the finite element method in computerized thermal dosimetry", in: J.W. Hand and J.R. James (eds.), Handbook of Techniques.6~r Clinical Hyperthermia, Research Studies Press, UK, 1986.