450 likes | 583 Views
A M odular D esign for a P arallel M ultifrontal M esh G enerator. J.P. Boufflet, P. Breitkopf, C. Longeau, A. Rassineux, P. Villon. Université de Technologie de Compiègne. UMR CNRS 6599 HeuDiaSyC (department of computer science)
E N D
AModular Design for a Parallel Multifrontal Mesh Generator J.P. Boufflet, P. Breitkopf, C. Longeau, A. Rassineux, P. Villon Université de Technologie de Compiègne UMR CNRS 6599 HeuDiaSyC (department of computer science) UMR CNRS 6066 Roberval (department of computational mechanics)
Parallel volume mesh generator: • parallelize a mesh generation code • decompose the data Two strategies are possible: Re-use of an existing sequential volume mesh generator
The sequential volume mesh generator used • the initial data: a triangular surface mesh • needs a closed envelope • generates the internal tetrahedrons • less initial data than generated data
Splitting of a closed envelope (1) • based on a Moving Least Square technique • updating the cutting plane P position and direction • by using an attenuation function only the points « close enough » to the current cutting plane P are taken into account • balance the number of surface node P
Splitting of a closed envelope (2) P We obtain a cutting plane P splitting the initial triangular surface mesh into two parts having roughly the same number of nodes
Module 1 geometric decomposition Triangular surface mesh (the domain envelope)
Interface mesh generation (1) • define the interface surface nodes close to P • with this boundary area define a border line C • project the surface nodes of C to P • generate a surface mesh using this geometry with a standard 2D mesh generator • fit this new surface mesh to initials coordinates of the interface surface nodes
Interface mesh generation (2)define the interface surface nodes close to P (1) S1the triangular finite elements on one side of P P S3the triangular finite elements near P e distance criterion the boundary area S2the triangular finite elements on the other side of P We obtain two open subdomains and a boundary area near the cutting planeP
Interface mesh generation (3)define the interface surface nodes close to P (2) We assign the triangular finite elements of the boundary area P “crown”
Interface mesh generation (4)define the interface surface nodes close to P (3) C P That defines a border line Ccomposed of interface surface nodessplitting the initial triangular surface mesh into two open subdomains
Interface mesh generation (4) • project the surface nodes of C to P • generate a surface mesh using this geometry with a standard 2D mesh generator We obtain a new plane surface mesh
Interface mesh generation (5)fit this new surface mesh to the initial coordinates of the interface surface nodes By restoring the initial coordinates of the surface nodes of C Merge this new surface mesh with the two open subdomains
Interface mesh generation (6) We obtain two new triangular surface meshes corresponding to two closed envelopes compatible with the sequential volume mesh generator used
interface mesh generator Module 2 geometric decomposition Triangular surface mesh (the domain envelope)
Sequential volume mesh generator We apply the sequential volume mesh generator on each closed envelope of each subdomain We obtain two volume meshes
interface mesh generator sequential volume mesh generator Module 3 geometric decomposition Triangular surface mesh (the domain envelope)
Volume mesh merging The interface surface mesh is the same
interface mesh generator sequential volume mesh generator Module 4 geometric decomposition volume mesh merging Triangular surface mesh (the domain envelope) 3D volume mesh
interface mesh generator sequential volume mesh generator Module 5 scheduler n=2 h geometric decomposition volume mesh merging Triangular surface mesh (the domain envelope) 3D volume mesh
More complex geometry (intersection with P) • Multiple contour • Contour with hole inside • we know where is the material • detection of the connected components • re-assigning strategy for small parts
Two examples of interface mesh generated with two different P
interface mesh generator sequential volume mesh generator scheduler geometric decomposition volume mesh merging Triangular surface mesh (the domain envelope) 3D volume mesh
Conclusion • the preliminary results have to be confirmed on other benchmarks • the results have to be compared with the meshes computed with the sequential volume mesh generator alone • several issues have to be addressed : • piloting strategy for the cutting plane P according to the attenuation function and the shape of the initial surface mesh • the behavior of each module has to be studied
Future works • design of the scheduler • coupling the parallel volume mesh generation with a solver
Clue (1.0)piloting strategy for the cutting plane P according to the attenuation function and the shape of the initial surface mesh X the first center of gravity Pthe first cutting plane Two boundary areas material athe first normal vector
Clue (1.1) We compute the weight: wi=wref(distance(h(Xi),X)/r) Where : • h(Xi) is the projection of surface node Xi to the normal of P • ris a radius (area of influence) • wref(d) is an attenuation function where : wref(d) = 0.5 (1+cos(pd)) if d [0,1] and 0 otherwise
Clue (1.2) • detect the two boundary area • for each, compute a new center of gravity • for each boundary area, adjust a new quantity r according to each local geometry • run the partitioning algorithm on each part
Clue (1.3) X2 X1 r1 r2 P P a a
Clue (1.4) r1 X2 X1 r2 P1 a1 P2 a2