Automatic mesh generation based on expert-system-methods

  • View

  • Download

Embed Size (px)



    K. Reichert, J. Skoczylas, T. Tarnhuvud Department of Electrical MachineJ,

    Swiss Federal Institute of Technology (ETH), CH-8092 Zurich, Switzerland

    A h s t r n r i - In this paper the mesh generation process for two- dimensional problems is discussed. A new mesh generator based on expert-system methods i s presented. For every corner of a closed polygon the corner-angle conditions are analysed and dif- ferent types of mesh primitives are generated. In every step of the mesh generation the conflict with the existing mesh is recognized and an optimal action wil l be chosen. Thus, any area surrounded by a polygon even wi th a very sophisticated contour can be suc- cessfuly covered with a basis mesh. This mesh is further improved by side-swapping and node-shifting algorithms, both optimizing the shape of the elements and the location o f the nodes. Problem- oriented adaptive mesh refinement algorithms provide further op- t imization according t o suitable criteria.

    INTRODUCTION Any CAD-System produces a set of geometry primitives such as points, lines, arcs, circles, ... specifying the material interfaces and the boundaries of a device. The finite element mesh has t o be f i t ted t o this geometry in an optimal sense. This requires a powerful mesh generator and also methods for optimizing and for refining an existing mesh in order t o achieve higher accuracy. Thus, the ful l mesh generation process consists of the following tasks:

    Mesh generation

    Mesh optimization

    0 Adaptive mesh refinement

    Before going into detail in the following sections, some definitions o f the mesh primitives must be given (see fig. 1):

    Node - the common point of some mesh-elements or two node-chains.

    Node-chain - The line joining two nodes, both lying on the interface boundary between two types of materials or on a geometric boundary.

    Edge - The line joining two nodes of the actual polygon considered for meshing. At the beginning of the mesh gen- eration the edges are identical with the node-chains. during the generation they are identical with the element sides.

    Polygon - A closed contour of edges defining the actual area t o be meshed, i.e. t o be covered with finite elements.

    Element - finite element: triangle or quadrangle, determined by nodes and edges.

    Corner - an area between two edges with a common node as a corner point.

    MESH GENERATION The basis for the finite element mesh generation are node-chains being often irregularly distributed on the geometry. As the shape of the devices may be of great complexity, having many corners


    Figure 1: hlesli prirnit ives

    with roundings, long and straight edges and any sharp curvatures, the distribution of nodes can be strongly nonuniform. The mesh generator must therefore be flexible and robust enough t o handle

    any sophisticated geometry and produce an optimal mesh. This mesh should have the following features:

    0 The number of elements should be as small as possible for a desired accuracy of the solution.

    0 The triangles should differ as l i t t le as possible from equilat- ' erals. This provides the required high quality of the approx- ima t ion.

    A constant decay of the elements density should be provided to bridge the gap between areas wi th course density of node- chains and areas with high density.

    ~ _ _ _ _ ~ ~ Basic functions

    The meshing problem t o be solved within irregular polygons can be formulated in general as follows:

    0 Gitwn: A polygon wi th 77 edges o f lenght ~!(i). n nodes wi th coordinates r(z) ,y(z) , and 17 corner angles ~ ( i ) (see Fig 2).

    To bc d e t e r m i n e d : An optimal sequence of single genera- t ion actions f rom all possible actions, satisfying the following conditions:

    the new polygon resulting f rom the generation o f a sin- gle element should be more uniform, i.e. approaching the shape o f a circle,

    the number of edges should decrease,

    the area o f the element being created should be as small as possible,

    elements growth should be uniform,

    elements should be as equilateral as possible.

    This problem IS being solved by means o f E r y c r t - S y . ~ / r n ~ Alrfhods. The mesh generation process is controlled by a series o f " r d c s ' ' of the following type

    IF ( " rond i / io7 i" k ) THEN " m c s h g c i i c i u l i o t i u c t ~ o t i " k

    0018-9464/91$01.00 0 1991 IEEE


  • 4198

    The general structure of such a " r i i / c " k i s as follows:

    set init ial conditions for the search o f an optimal triangle t o be generated

    DO for all the n corners of the actual polygon:

    - IF "condition for rule I; at corner i" THEN * create new triangles by means o f the lcfh action

    * write new node ( i f defined ) and new triangle

    1: modify the pointer vector z v ( i ) determining the

    * set new conditions at the new edges.

    a t the ith corner and at adjacent edges,

    datas into the finite element data structure.

    new sequence o f edges,



    Figure 2: FE-mesh geiierat i on in ail i rregular polygon.

    The following "cot~diiions" have to be implemented in the mesh generation process:

    Corner angle condi t ions: The angle a(i) of the ill1 corner and all angles o f the triangles being generated in this corner should satisfy specified angle conditions. The purpose

    of this criteria is to avoid very slender triangles and t o select optimal ones in the process. conditions: From all possible actions those generating triangles wi th minimum area and minimum length of edges should be selected. Thus, the mesh grows uniformly from those parts of the polygon with the most dense seg- mentation by node-chains.

    Afi77i7nt~rn grourth co~tdc i ions: Since many actions of the type "cut-off element" are possible at the same time, there exists the problem t o select the most favourable one. The rat io of the areas of the new triangle being cutted- off and the last triangle has t o be l imited, thus ensuring a smooth growth of the mesh.

    )Yoit - i t l l c r f r r c i t c c c o ~ t d i i i o i ~ ~ ~ : be created if:

    A new triangle can not

    - i t wil l cover any other existing triangle, - it wil l cross any edge of existing triangles or the bound-

    ary of the polygon,

    below a certain l imit (see Fig. 3). - it 's distance t o any edge of the actual polygon wil l be


    new edges

    Figure 3: Non- in t erferencc roridit ions.

    N o t - ~ a c i i r i t y conditions: In order t o avoid the mesh generation activity expanding f rom just one edge of the actual polygon, every new edge is being inactivated as long as other actions at old active edges are possible. In case there is no solution action possible all edges o f the polygon are reactivated.

    From the experience wi th the algorithms, the following actions of mesh generation are considered t o be necessary t o achieve an optimal generation process (see Fig. 4):

    Cut-off one corner by generating one triangle

    Cut-off one corner by generating two triangles

    Cut-off two corners by generating three triangles

    Generating one equilateral triangle

    Generating one right-angled triangle

    Generating two triangles

    Fig. 4 gives more details on these actions including their specific if -conditions.

    a) Cut-off one corner by generating one triangle

    "If- Condif ions ": 30" < a , < 115". 30" < P t , P > + i - Minimum area F,, 1, > ~ l , , ~ or 1 ,+1 > xl,

    b) Cut-off one corner by generating two triangles

    (y, "If- Coiiditions ": -. I 70" < a,tl < 125"

    150" < Q,, a , + z <

    "Dcs igtc ": P, on diagonal o f rhombus: c = 0 . 7 f l z

    c) Cut-off two corners by generating three triangles

    "11- ( IO7Ldl t107ZS "1


    I+ 1

  • 4199

    DO WHILE 71 > '{ and triangles may be generated without violat- tng the interference conditions

    Cut-off all corners by generating three triangles ( action c) ) Cut-off triangles ( action a) ) at the new corners Generate a new triangle ( action d). e) or f ) )

    Cut-off triangles ( action b) ) wi th minimal area 1; as long as the condition F, < 1 81; i s true

    END DO


    d) Generating one equilateral triangle

    "If- Cotid i / i o i i .S ": 119- < n,. a,,, < 295", Minimum of l , ,

    "Ursigi i": equilateral triangle

    e) Generating one right-angled triangle

    "If- Colldl l lol ls " I,,,, > 31",,,, and I , 5 I .

    a i-1

    f ) Generating two triangles

    "If- Coiidafioizs "

    129" < a, < 295". Minimum o f I , ,

    go" < a$+, < 140",

    " D C S lqll'l equal-sided triangle on I , . cut-off-triangle I', - Pa

    Figurr 4: The i ~c l i o i i s of tircsli gencrn(ioii.

    The angles conditions for the above specified actions have been determined more or less heuristically.

    T h e a l g o r i t h m for a u t o m a t i c - mesh g e n e r a t i o n ill i r r e g u l a r polygons

    All functions of the mesh generation shown above have to be integrated hierarchically in an expert decision process, consisting

    of three phases

    ~ _ _ _ - _. _-___ -_

    Preparation phase ~~

    The purpose of this phase is t o equalize the corners of the init ial Dolveon and


View more >