• Aucun résultat trouvé

B Algorithme de création d’une règle d’intégration

entre deux maillages

Afin d’évaluer des termes faisant intervenir des champs définis sur différents espaces (un domaine Ω1 et un domaine Ω2), il est nécessaire de générer un maillage ou une règle d’intégration spécifique. Posons l’expression d’un champ Eipxq, appartenant au domaine Ωi, telle que :

Ý

Ñeipxq  Nipxq Ei (B.1)

Avec Nipxq, les fonctions de forme du maillage Ti et Ei, le vecteur des inconnues nodales. Fixons l’écriture d’un terme, faisant intervenir des champs définis sur différents maillages, telle que :

» E1T N1Tpxq. N2pxq E2dv ¸ DePT » De E1T N1Tpxq. N2pxq E2dv (B.2)

En pratique, ce terme (B.2) est évalué par un assemblage de calculs effectués sur des domaines sous-découpés, issus de l’intersection entre les maillages des espaces relatifs. Dé-finissons le maillage T1, relatif au domaine Ω1, constitué d’éléments D1e et le maillage T2, relatif au domaine Ω2, constitué d’éléments De

2. Ainsi, pour évaluer l’intégrale sur un élé-ment De1utilisant des fonctions de formes issues des éléments d’un autre maillage T2, il faut morceler l’élément D1e. En effet, le champ ÝÑe2 n’est pas, en général, régulier sur l’élément De

1. Il n’existe pas d’approximation polynomiale du champ issu du maillage T2. La solution pour évaluer correctement le terme (B.2) consiste à découper l’élément De1 en fonction du maillage T2 pour obtenir les sous-éléments Dpe formant un nouveau maillage Tp (cf figure

B.1). ¸ De pPTp » De p E1T N1Tpxq N2pxq E2dv (B.3)

Les produits des fonctions de base N1pxq et N2pxq deviennent réguliers sur les éléments De

A B A B

(a) (b)

(a) (c)

g D1e

D

pe Dze Dez De2

Figure B.1 — Définition des sous-éléments Dzed’intersection entre des élément De1et De2en 2D.

propre, on les redécoupe en éléments triangles ou tétraèdres Dze dont on connaît facilement une règle d’intégration (cf figureB.1).

¸ De zPTz » De z E1T N1Tpxq N2pxq E2dv (B.4)

La règle complète revient à définir l’ensemble des coordonnées et les poids (g, ρg) des points d’intégration des sous-éléments De

zqui permettent d’intégrer les fonctions de base des autres triangulations . ¸ De zPTz ¸ gPDe z ρgE1T N1Tpgq N2pgqE2dv (B.5)

L’ensemble de cette procédure, qui génère les données des points d’intégration, est réalisé à l’aide d’un algorithme (B.1) qui définit la règle d’intégration associée aux éléments De

1. Cet algorithme permet de créer la règle d’intersection pour des maillages basés sur des éléments convexes.

En terme de performance, on vérifie que l’on intègre avec une très bonne précision puisque l’erreur relative mesurée est de l’ordre de 1010, montrant ainsi que les problèmes d’arrondis numériques, qui se produisent massivement lors de ce type d’opérations, n’ont pratiquement aucune influence sur la qualité de la règle d’intégration fournie. En ce qui concerne le temps CPU, ce type d’opérations, quand même coûteuses, suit une évolution quasi-linéaire en n.plogpnqq voir même n. Le temps passé dans l’algorithme étant concentré sur le calcul des intersections arrêtes{éléments qui reste lié linéairement au nombre d’élé-ments et à leur connectivité moyenne. Le temps requis n’étant pas actuellement excessi-vement limitant par rapport au temps consacré au calcul, il n’a pas été jugé nécessaire de multi-threader cet algorithme, même si sa parallélisation est directe. L’évolution des temps requis en deux dimensions est fonction de la taille des maillages (B.2) comme pour le cas tridimensionnel (B.3).

143

Algorithme B.1 Algorithme de création de la règle d’intégration pour les maillages. 1: bb_tree_maillage_2Ñ BB_tree

2: tu Ñ integration

3: pour i t0 . . . nb_elempmaillage_1qu faire 4: maillage_1.elementris Ñ elem_1

5: BB_tree.find_in_boxpenglobepelem_1qq Ñ list_elem 6: tu Ñ integration_i

7: pour j t0 . . . nb_elemplist_elemqu faire 8: list_elemrjs Ñ elem_2

9: tu Ñ list_inter

10: elem_1.edgesÑ list_edge

11: pour k  t0 . . . nb_edgeplist_edgequ faire 12: list_edgerks Ñ edge

13: intersection_edge_elempedge, elem_2, list_interq1 14: fin pour

15: elem_2.edgesÑ list_edge

16: pour k  t0 . . . nb_edgeplist_edgequ faire 17: list_edgerks Ñ edge

18: intersection_edge_elempedge, elem_1, list_interq1 19: fin pour

20: cleanduplicatesplist_inter, toleranceq 21: QHULL.build_hullplist_interq Ñ hull_faces 22: si hull_faces.no_degenerate alors

23: hull_faces.centerÑ center_node

24: pour k  t0 . . . nb_facephull_facesqu faire

25: build_simplexptcenter_node, hull_facesrks.nodesuq Ñ simplex 26: pour h t0 . . . simplex.nb_GPu faire

27: simplex.GP_real_weightpkq Ñ w_GP

28: elem_1.find_ref_pospsimplex.GP_real_pospkqq Ñ xi_1 29: elem_2.find_ref_pospsimplex.GP_real_pospkqq Ñ xi_2 30: intersection_i.addptelem_2.id, w_GP, xi_1, xi_2uq

31: fin pour

32: fin pour 33: fin si

34: intersection.addptelem_1.id, intersection_iuq 35: fin pour

Figure B.2 — Évolution des temps CPU pour un calcul des intersections 2D.

Nos travaux concernent la mise en oeuvre d’une méthode multiéchelle pour faciliter la simulation numérique de structures complexes, appliquée à la modélisation de composants aéronautiques (notamment pour les pièces tournantes de turboréacteur et des structures composites stratifiées).

Ces développements sont basés autour de la méthode Arlequin qui permet d’enrichir des modélisations numériques, à l’aide de patchs, autour de zones d’intérêt où des phénomènes complexes se produisent. Cette méthode est mise en oeuvre dans un cadre général permettant la superposition de maillages incompatibles au sein du code de calcul Z-set/Zébulon, en utilisant une formulation optimale des opérateurs de couplage. La précision et la robustesse de cette approche ont été évaluées sur différents problèmes numériques.

Afin d’accroître les performances de la méthode Arlequin, un solveur spécifique basé sur les techniques de décomposition de domaine a été développé pour bénéficier des capacités de calcul offertes par les machines à architectures parallèles. Ces performances ont été évaluées sur différents cas tests académiques et quasi-industriels.

Enfin, ces développements ont été appliqué à la simulation de problèmes de structures composites stratifiées.

Mots-clés : METHODE ARLEQUIN ; MULTIECHELLE ; DECOMPOSITION DOMAINE ; MAILLAGE INCOMPATIBLE ; STRUCTURE STRATIFIEE ; ENDOMMAGEMENT COMPOSITE

Multiscale/multimodel computational approach to the degradation o composite materials

Our work concerns the implementation of a method for convenient multiscale numerical simulation of complex structures, applied to the modeling of aircraft components (including rotating parts made of jet engine from laminate composite structures).

These developments are based on the Arlequin method which allows to enrich numerical modeling, using patches around areas of interest where complex phenomena occur. This method is implemented in a general framework in order to link made of incompatible meshes in the Z-set/Zébulon finite element code, using an optimal formulation of the coupling operators. The accuracy and robustness of this approach were evaluated on various numerical problems.

To increase the performance of the Arlequin method, a specific solver based on domain decomposition techniques has been developed to take advantage of computing capabilities offered by parallel machine architectures. Its performance has been evaluated on different numerical assessments from academic to industrial tests.

Finally, these developments have been applied to the simulation of problems made of laminate composite structures.

Keywords :ARLEQUIN METHOD ; MULTISCALE ; DOMAIN DECOMPOSITION ; NON CONFORM MESHES ;

LAMINATE STRUCTURE ; DAMAGE COMPOSITE

Office National d'Études et de Recherches Aérospatiales BP 72 - 29 avenue de la Division Leclerc

92322 CHATILLON CEDEX

Tél. : +33 1 46 73 40 40 - Fax : +33 1 46 73 41 41 http://www.onera.fr

Documents relatifs