HOMARD® : Adaptive Meshing Software by Refinement and Unrefinement

French version

 

Balle rouge Introduction

The HOMARD® software carries out the adaptation of 2D/3D meshes by refinement and unrefinement techniques. The main characteristics of HOMARD® are :


Guided Tour


 

Red ball General catenation of a calculation with adaptation

In a standard calculation with finite elements, meshing is immutable. However, very often the initial meshing is not the most suitable for the calculation conditions for at least two reasons :
. the mesh generator did not manage to make a fine description of a geometry ; for instance, given the limitation on meshing size
. conditions change during calculation ; for instance, the areas requiring fine meshing may move during a transient calculation.
Using an adaptive meshing technique during calculation with finite elements consists in modifying the meshing along the process so that it best matches the expected results.

At the beginning of the iterative process, the meshing is that provided by a mesh generator, as in any calculation with finite elements. Then iteration number k of adaptive meshing is as follows :

  1. Problem solving on Mk meshing using the usual process. The solution thus provided is noted as uk.
  2. Calculation of a local error indicator I(t,uk,...) for any element t of the current Mk meshing.
  3. Determine an overall error estimator after the event, usually by integrating local indicators.
  4. If the error estimate is over the expected accuracy, move on to step 5. Otherwise, there are two possibilities : in steday-state phenomena, the calculation is stopped, but in transient phenomena, the calculation continues using the same Mk meshing ; go back to step 1.
  5. Determine areas to refine or unrefine using the local indicator I(t,uk, ...).
  6. Meshing modification.
  7. Move to the next iteration : step 1 where k = k + 1

A few comments about the catenation :
. Error indicator I(t,uk,...) is a local quantity,i.e. it is defined by element. It is calculated based on the numerical analysis of the equations of the problem to be solved. It depends on the value of the numerical solution uk in element t, or even on its neighbors.
. An overall error estimator, i.e. it provides an estimate of the error integrated over the whole domain. This value is roughly the overall accuracy : the solution obtained numerically is x% right. To calculate this estimate, the quadratic standard of local error indicators is often used.
. The method for determining the areas to be refined or unrefined is linked to the technique used to modify the meshing. If the future meshing is built by a adaptive mesh generator, area classification is carried out by providing a desirable element size on each point of the domain. The mesh generator should try to comply with this constraint. If the future meshing is built by element splitting -- as with HOMARD® -- the decision to split an element is made by comparing the indicator on the element with a threshold.

Broadly speaking, an iteration for meshing adaptation is as shown on the figure below. The finite element software calculates the numerical solution on meshing Mk, then, from that, deduces the values for the error indicator over the whole meshing. Based on the knowledge of meshing #k and indicator #k, HOMARD® generates a new meshing #k+1.

Scheme of adaptive iteration

The complete chain starts from the initial meshing, then incorporates successive links (calculation of indicator / adaptation). For time-stationary problems, this means a succession of independent calculations over different meshings. For transient problems, the calculation is suspended at a given time ; after meshing adaptation, calculation is resumed at the same time.

Complete chain

[ Top | Splitting | Linking | Algorithm | Softwares | Home page ]


 

Red ball Methods for Splitting Elements

All in all, the process of meshing adaptation by splitting elements is a two-tier process. First, all elements specified by the error indicator are split. The resulting meshing is uncorrect : nodes are pending at the junction between areas to be refined, and an area to be retained. The second stage aims at solving all of these compliance problems.
There are different splitting methods for the two phases. During the first phase, all of the elements are split in the same manner ; this is standard splitting. During the second phase, some of the meshing compliance conflicts in the junction area are settled by the same standard splitting of elements, while others are settled by special splitting.
The various splitting modes have been choosen to preserve the mesh quality, all along the adaptive process.

- Standard Splitting

Standard element splitting is carried out with a view to restricting the number of cases. Thus, edges are split into two equal sections.

To split a triangle, the three edges are split into two sections each, thus producing four similar triangles. They retain the same quality. Splitting 1

To split a quadrangle, the four edges are split into two sections each, thus producing four non-similar quadrangles with different quality. Splitting qua 1

Tetrahedrons are split in eight. First, each of the triangular faces is split into 4 similar triangular faces. Splitting 2

Face splitting produces four tetrahedrons at the angles of the initial tetrahedron. It should be noted that the four new tetrahedrons are homothetic to the initial tetrahedron. Therefore, they retain the same qualities. Splitting 3

At the core of the tetrahedron, there remains a block shaped like two pyramids joined at their bases. An edge is generated using one of the three possible diagonals, then the four faces containing the edge, and two external edges. Splitting 4

This, in turn, creates 4 new tetrahedrons. It should be noted that they are similar two by two but that they can never be similar to the initial tetrahedron. They can therefore never have the same quality as the initial tetrahedron. However, different results are obtained, depending on the diagonal selected for splitting the internal pyramidal block. Where quality is concerned, it is always best to select the smallest of the three possible diagonals. Splitting 5

- Splitting for Compliance

Splitting for compliance is applicable to triangles or quadrangles with a split edge, and to tetrahedrons with 1, 2 or 3 split edges. Such splitting produces elements of lower quality compared to the initial elements, and in the general algorithm, one sees how this drawback is reckoned with to reduce its consequences.

For triangles, one of the three edges is split in two. Its middle is joined to the opposite vertex to form two additional triangles. Splitting 6

For quadrangles, one of the four edges is split in two. Its middle is joined to the opposite vertex to form three triangles. The mesh obtained is then mixed. Splitting qua 2

For a tetrahedron with three split edges, this is possible only if the edges are concurrent. Therefore, one of the four faces is split in four. The middles of the split edges are joined to the opposite vertexes. The three other faces are thus split in two, and four tetrahedrons are created. Splitting 7

For a tetrahedron with two split edges, this is possible only if the edges are opposite. All the middles of these edges are joined to the other apexes, as well as the edge middles. The four faces are split in two, and four tetrahedrons are created. Splitting 8

For a tetrahedron with one split edge, the middle of the split edge is joined to the opposite apex, and two tetrahedrons are created. Splitting 9


Guided Tour


[ Top | Splitting | Linking | Algorithm | Softwares | Home page ]

 

Red ball Algorithm Implemented

The strategy adopted for HOMARD®'s algorithms consists in forcing splitting in four for all triangles with two points of non compliance. Eventually, only the triangles with non compliance points are triangle where one and only edge is split. The simplest possible solution is thus used for compliance : splitting the triangles in two, the tetrahedrons in two or four. The latter stage of compliance introduces elements of lesser quality compared to that of the elements it originated from. This drawback remains under control as we have chosen to grant a temporary status to the compliance elements : they exist to produce a meshing acceptable by the calculation softwares, but they disappear if they are required to be further split. As a consequence, quality loss does not propagate along iterations of meshing adaptation, and remains restricted in value as well as in number of elements concerned. The selected splitting method is such that after standard splitting, a tetrahedron has 0, 1 or 4 split faces but never 2 or 3 ; i.e. a triangle has 0, 1 or 3 edges but never 2. This applies both for triangles that are elements, and for triangles which are a face of a tetrahedron. The compliance rules on triangles can therefore be transferred to tetrahedrons, to propose the following algorithm :

  1. Transfer of refining or coarsening indications over elements into decisions to split or group edges, triangles and quadrangles.
  2. Removal of temporary compliance elements.
  3. By considering all triangles and quadrangles from the lowest splitting level to the highest splitting level, conflict solving on coarsening using the basic rules.
  4. By considering all triangles and quadrangles from the lowest splitting level to the highest splitting level, conflict solving on refining using the basic rules.
  5. Effective generation of new meshing : standard splitting, compliance tracking.

Besides the new meshing, all of the related information needs to be updated, namely the data for boundary conditions. The solution adopted consists in converting the data on nodes and elements into membership to families of identical behavior in the calculation. As splitting occurs, family membership is transmitted by legacy. When creating a new meshing, the HOMARD® software package translates family membership into an encoding specific to the calculation software. This operates quite well provided that the calculation software manages a description with sufficient information on the boundaries of domains.

[ Top | Splitting | Linking | Algorithm | Softwares | Home page ]


 

Red ball Softwares of calculation with HOMARD®

HOMARD® was originally designed for the calculation softwares of Electricité de France :

HOMARD® is presently interfaced with Code_Aster®, Code_Saturne for fluid mechanics and Athena for elastodynamics. It can also be used with any software dealing with triangle/tetraedron meshes, by designing one's own interface files. It has been done by license buyers. All of these methods of use are documented.

To get a license, click here.

[ Top | Splitting | Linking | Algorithm | Softwares ]


Logo droit [ Home page | Presentation | Images | User Guide | Documentation | Contact ] Logo gauche

© EDF Electricité de France 1996, 1997, 2001, 2005. All rights reserved.