Gadgets

A mesh adaptation framework for dealing with large deforming meshes

Description
A mesh adaptation framework for dealing with large deforming meshes
Categories
Published
of 25
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
  INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING  Int. J. Numer. Meth. Engng 2010; 82 :843–867Published online 23 November 2009 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/nme.2788 A mesh adaptation framework for dealing with largedeforming meshes Ga¨etan Comp`ere 1 , ∗ , † , Jean-Franc¸ois Remacle 1 , 2 , Johan Jansson 3 and Johan Hoffman 3 1  Department of Civil Engineering , Universit ´ e catholique de Louvain , Place du Levant 1 , 1348 Louvain-la-Neuve , Belgium 2 Center for Systems Engineering and Applied Mechanics ( CESAME  ), Universit´ e catholique de Louvain , 1348 Louvain-la-Neuve , Belgium 3  Royal Institute of Technology , Computational Technology Laboratory , Stockholm , Sweden SUMMARYIn this paper, we identify and propose solutions for several issues encountered when designing a meshadaptation package, such as mesh-to-mesh projections and mesh database design, and we describe analgorithm to integrate a mesh adaptation procedure in a physics solver. The open-source MAdLib packageis presented as an example of such a mesh adaptation library. A new technique combining global noderepositioning and mesh optimization in order to perform arbitrarily large deformations is also proposed.We then present several test cases to evaluate the performances of the proposed techniques and to showtheir applicability to fluid–structure interaction problems with arbitrarily large deformations. Copyright q 2009 John Wiley & Sons, Ltd. Received 15 September 2009; Accepted 2 October 2009KEY WORDS : mesh adaptation; local modifications; large deformations; open source; fluid–structureinteraction 1. INTRODUCTIONMesh motion due to a moving interface or boundary is an essential component in many modernfinite element procedures [ 1–3 ] , with applications in many domains, and in particular the numericalcomputation of fluid–structure interactions (FSI). ∗ Correspondence to: Ga¨etan Comp`ere, Department of Civil Engineering, Universit´e catholique de Louvain, Place du Levant 1, 1348 Louvain-la-Neuve, Belgium. † E-mail: gaetan.compere@uclouvain.beContract / grant sponsor: Fonds National de la Recherche ScientifiqueContract / grant sponsor: The Swedish Foundation for Strategic ResearchContract / grant sponsor: European Research CouncilCopyright q 2009 John Wiley & Sons, Ltd.  844 G. COMP`ERE ET AL. The mesh motion algorithm, or r-adaptivity , is a crucial ingredient of FSI computations. Thestandard mesh motion algorithm moves mesh points classified on moving / deforming interfaces.Then some kind of mesh smoothing is applied to the remainder of the mesh in order to maintain areasonable mesh quality. The topology of the mesh is not modified during this process, which meansthat the underlying graph of the mesh remains unchanged. However, this approach is not generaland fails for even simple motions such as large rigid body translation and rotation. Furthermore,although the mesh topology may be preserved for simple mesh motions, such a procedure giveslittle control of the mesh size field  ( x , t  ) : some cells may be compressed or stretched undesirablydue to the mesh motion and smoothing, likely leading to large error in the solution.As regard to large deforming domains, only a few works can be found in the literature aboutthe mesh adaptation methods. The first achievements made to supply r  -adaptive methods withthe local mesh modifications consisted in applying refinement / coarsening procedures accordingto both shape and deformation measures of the elements [ 4,5 ] . The robustness of the methodwas improved recently by adding edge and face swaps to eliminate sliver elements [ 6,7 ] . In [ 8 ] ,a procedure based on local mesh modifications with a more robust sliver elimination algorithmis extended to the case of large domain deformations. Other authors [ 9 ] use Delaunnay pointinsertions to provide anisotropic deforming meshes. However, all these procedures are not infalliblesince a very large domain deformation can still cause the node repositioning algorithm to fail.The aim of our mesh adaptation process is, as usual, twofold: (i) to satisfy a prescribed meshsize field  ( x , t  ) and (ii) to maximize mesh quality. In this paper, we detail the design choices thathave been made to build a general mesh adaptation procedure applied to large mesh deformationsfrom the mesh adaptation method and a node repositioning procedure based on an elastic analogy.In particular, we present a new technique to allow arbitrarily large domain deformations byapplying mesh modifications during the node repositioning step itself instead of only adapting themesh between two repositionings. Applying mesh modifications at this stage avoids the apparitionof poorly shaped or tangled elements, which highly increases the robustness of the technique.A global procedure that allows general mesh motion is then presented. The procedure is basedboth on standard local mesh modification operators (edge splits, edge collapses and edge swaps)and the proposed node repositioning technique.Finite element formulations in the time domain allow the mesh to vary in time. For vertexmotions, formulations are usually written in the arbitrary Lagrangian–Eulerian (ALE) frame-work. When topological modifications are performed, mesh-to-mesh interpolations are usuallyused [ 10,11 ] . Disappointingly, most of the state-of-the-art finite element implementations onlyallow a limited set of operations. For example, implementations in [ 12–14 ] only allow local meshrefinement (no coarsening). However, several authors have proposed more general methods forlocal mesh adaptation. These methods either use local remeshing [ 15 ] or rely on a larger setof mesh modifications [ 16–19 ] , leading to a well-proven [ 10,20–24 ] class of mesh adaptationmethods for fixed domain boundaries. But no open-source implementation of such a method isavailable. Finally, some packages allow global remeshing using closed and ad hoc mesh generationsoftwares, as suggested in various works [ 25–27 ] .This paper can be seen as the technical companion of the M esh Ad aptation Lib rary (MAdLib)library. We have decided to distribute MAdLib as free software under the LGPL license. Wehope to build a community around MAdLib, in the same manner as we have already done forGmsh [ 28 ] . In our opinion, there are only good reasons for distributing such a code as an opensource. First, mesh adaptation procedures are very technical, in the sense that their robustness isextremely sensitive to their implementation. Mesh-related codes need time and users to become Copyright q 2009 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 82 :843–867DOI: 10.1002/nme  A MESH ADAPTATION FRAMEWORK 845usable. Therefore, distributing MAdLib will allow researchers to use an already stable version of mesh adaptation routines. On the other hand, the bigger the community is, the faster the remainingproblems will be resolved. Another good reason for going open source is that we are convincedthat adaptive procedures have not reached a sufficient impact in engineering design. We believethat one of the reasons of that relative success is that there are too few freely available solutions.Finally, mesh generation / adaptation in a scientific project is generally not an aim in itself: it isa tool that lies in the same category as linear system solvers or linear algebra packages. For thatreason, research on meshing is done by relatively few research teams in comparison to the researchthat is done in finite element analysis. Therefore, mesh generation researchers should make theirresearch as widely available as possible to accelerate scientific development.The present paper has several goals: to explain the key points in the design of a mesh adaptationprocedure that enables to deal with large mesh deformations, to discuss the most generic aspectsof the implementation of a mesh adaptation package, and to show the efficiency and robustnessof the proposed method and implementation by solving some non-trivial test cases. To this end,some test problems are presented:1. A rotating propeller. This test shows the robustness of the mesh adaptation algorithm andanalyzes the quality of the resulting meshes regarding the prescribed element quality. Theefficiency of the implementation is also analyzed in terms of CPU time and memory consump-tion.2. Two rigid spheres that fall in a viscous fluid. This example demonstrates the coupling of mesh adaptation with a fluid solver. In particular, the relative cost of mesh adaptation isstudied.3. A 3D turbulent fluid–structure flag problem representing a problem we can expect in real-world applications, where we compare standard mesh smoothing with mesh smoothing plusmesh adaptation.The first section recalls the definition of the size field and the mesh adaptation by local modifi-cations, and presents the global procedure for controlling a mesh with moving boundaries. Someefficiency aspects of the method are also reached. The next section describes the adaptive meshdatabase. The general coupling scheme with a physics solver is then described, including the issuesrelated to the handling of projection algorithms through the adaptation process. The last sectionprovides results from the application of the method to the different test cases.2. MESH ADAPTATIONThere are basically two kind of techniques that enable to adapt a mesh. Remeshing techniquesconsist in removing the existing mesh and replacing it by an adapted one. In the context of transientcomputations, this approach has two important drawbacks: (i) complete remeshing introduces a lotof numerical diffusion in the mesh-to-mesh interpolation procedure and (ii) remeshing approachesare difficult to be applied when the computation is done in parallel. The alternative way to domesh adaptation is to use local mesh modifications. The latter technique is (surprisingly) knownto be slower than remeshing. Yet, it can be applied in parallel and it usually introduces much lessnumerical dissipation [ 10 ] .In this section, we start by briefly recalling the general concepts governing the mesh adaptationmethods based on local modifications. The interested reader can refer to [ 19,29 ] for more complete Copyright q 2009 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 82 :843–867DOI: 10.1002/nme  846 G. COMP`ERE ET AL. descriptions of the adaptation methods for fixed domains, and to [ 8,9 ] for previous applicationsof the method to large deformations. We then present a new technique to perform arbitrarily largedomain deformations, and we finish with the considerations about efficiency intended to improvethe performances of the mesh adaptation procedure.  Mesh size field: The mesh size field is a standard way of prescribing mesh sizes. It consists indefining a function  ( x , t  ) that describes optimal mesh sizes at any point x of the domain and atany time t  of the possibly time-dependant simulation, see for instance [ 25,29 ] .Using the size field, it is possible to define the non-dimensional length L e of edge e as  L e ( t  ) =   e  − 1 ( x , t  ) d l . An edge with a non-dimensional size of  L e = 1 is an edge with an optimal size. It is usuallyimpossible to build meshes for which edges have the optimal size everywhere. Therefore, a range [  L low ,  L up ] of acceptable sizes has to be defined: an edge for which L e <  L low is a short edgewhereas an edge with L e >  L up is a long edge. This range of acceptable edge lengths is a verysensitive parameter of the adaptation process.  Local mesh modifications : Consider a mesh M ={  M  1 ,...,  M   N  } composed of  N  elements M   j ,  j = 1 ...,  N  . A cavity C ={  M  k  1 ,...,  M  k  n } is a subset of  M  that forms a simply connected domain.For example, all mesh elements connected to one mesh edge or to one mesh vertex form a cavity.Local mesh modifications consist in removing elements from a cavity C and replacing them by anew submesh C  with elements that conform to the boundary of  C . Formally, we write M  = M − C + C  . We use a finite set of local mesh modifications. Elementary local mesh modifications are • The edge split operator (see Figure 1(a)) that consists in splitting one edge of the mesh. • The vertex collapse [ 30 ] operator (see Figure 1(b)) that consists in removing one vertex fromthe mesh. • The edge swap [ 31 ] (see Figure 1(c)) for which one edge is removed from the mesh. • The face swap [ 31 ] (see Figure 1(d)) for which one triangular face is removed from the mesh. (a) (b)(c)(d) (e)(f) Figure 1. The mesh modification operators: (a) edge split; (b) edge collapse; (c) edge swap; (d) face swap;(e) face collapse; and (f) region collapse. Copyright q 2009 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 82 :843–867DOI: 10.1002/nme  A MESH ADAPTATION FRAMEWORK 847Swap operators (edge swaps and face swaps) aim at improving locally the quality of the elements.Splits and collapses are there to control the mesh size: long edges are split whereas one of the twovertices of short edges is collapsed [ 8,30 ] .Compound operators are also defined: • The face collapse operator [ 30 ] (see Figure 1(e)) for which an edge of the face is split andthe new vertex is collapsed on the opposite vertex, or the opposite vertex is collapsed on thenew one. • The double edge split collapse [ 30 ] (see Figure 1(f)) for which two opposite edges of atetrahedron are split and one of the new vertices is collapsed on the other one.Compound operators are usually designed to eliminate sliver elements [ 8,30 ] , i.e. elements witha very poor quality but no short or long edge.Some authors also use template refinement [ 30 ] : long edges are all split at once and templatesare defined that enable to divide one tetrahedron that has one to six split edges. In our work,we have found out that the use of templates was not necessarily a good idea, for three mainreasons: (i) the use of the edge split operator only is more efficient in terms of CPU time than thetemplate refinement, (ii) the implementation of template refinement is extremely tedious and (iii)template refinement introduces non-tetrahedrizable polyedra (Sch¨onhardt polyedra, [ 32 ] ) so thatthe introduction of unwanted extra points (Steiner points) is mandatory.Starting from an initial mesh, the adaptation procedure applies sequentially edge splits, vertexcollapses and swaps. Compound operators are finally used for eliminating sliver tetrahedra. Allthe ingredients of the recipe are known. Yet, obtaining the good recipe is difficult. The followingissues have to be addressed: • What is the optimal sequence of operators? Here, we apply collapses first, in order to reducethe size of the mesh before producing new nodes. This avoids memory peaks. Then, the mostcostly operations, swaps and slivers elimination are applied whereas the size of the meshis minimal, and finally edge splits are performed. The sequence is then reproduced until nomodification occurs. • How do we define the range [  L low ,  L up ] of acceptable edge lengths? A sharp range willcertainly introduce infinite loops between edge splits and collapses. A wider range will producesub-optimal meshes [ 8 ] . Here, we use [ 1 √  3 , √  3 ] . • How do we deal with slivers? Looking at edge lengths is, in 3D, not sufficient to controltetrahedra’s volumes. The elimination of slivers is a hard task. Slivers can be classified intodifferent categories (see [ 30 ] ). For each category, a specific sequence of operators [ 8 ] isapplied that maximizes the probability of the removal of the sliver.  Mesh adaptation on a deforming domain : In the case of deforming domains, the mesh adaptationprocedure generally combines two steps:1. A global node repositioning step: nodes of the deforming boundaries are moved and thedisplacement of those nodes are propagated using an elliptic PDE. A common choice for thePDE is to use an elastic analogy [ 33,34 ] . The node repositioning stage may be sufficient forsmall deformations.2. When large deformations occur, a local mesh modification procedure like the one describedin the previous paragraph enables to extend the applicability of the adaptation to arbitrarilylarge deformations. A mesh adaptation procedure is usually called between two repositioningsin order to optimize the mesh and ‘prepare it’ for the next motion. Copyright q 2009 John Wiley & Sons, Ltd. Int. J. Numer. Meth. Engng 2010; 82 :843–867DOI: 10.1002/nme
Search
Tags
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks