# MAGiC un framework orienté objet pour implémenter le Modèle de Topologie Unifiée

Vincent François, Jean-Christophe Cuillière

► To cite this version:

Vincent François, Jean-Christophe Cuillière. MAGiC un framework orienté objet pour implémenter le Modèle de Topologie Unifiée. 12e Colloque national en calcul des structures, CSMA, May 2015, Giens, France. hal-01706199

HAL Id: hal-01706199

https://hal.science/hal-01706199v1

Submitted on 10 Feb 2018

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC0 1.0 - Universal - International License
# MAGiC un framework orienté objet pour implémenter le MTU

Vincent François, Jean-Christophe Cuillière

ERICCA, Département de génie mécanique, UQTR, Trois-Rivières G9A 5H7, [francois,cuillier]@uqtr.ca

**Résumé** — Ce papier présente un framework de recherche voué au développement d'outils d'intégration de la méthode des éléments finis et des méthodes d'optimisation au sein du processus de développement de produits par la CAO. Cet environnement utilise avantageusement les concepts d'héritage, de polymorphisme et d'encapsulation des langages orienté-objets afin de mettre en place une structure de données proche de la norme ISO10303 tout en permettant une intégration facile et efficace de nouveaux outils développés par notre équipe.

**Mots clés** — BREP, ISO10303, CAO, Éléments-finis

## 1. Introduction

Depuis les années 90, l'Équipe de Recherche en Intégration CAO-CAlculs (ERICCA) de l'Université du Québec à Trois-Rivières travaille sur l'intégration de la méthode des éléments finis et des méthodes d'optimisation au sein du processus de développement de produits par la CAO. D'abord essentiellement centrés sur la recherche dans le domaine du maillage automatique, les travaux de notre équipe se sont généralisés à toutes les problématiques d'intégration entre les modèles géométriques et les modèles de calcul. L'objectif est de pouvoir créer et adapter le plus rapidement et efficacement possible des modèles d'éléments finis à partir de modèles CAO de produits. Au début des années 2000, afin de faciliter la coordination et l'intégration entre tous nos projets de recherche dans ce domaine, nous avons commencé à mettre en œuvre un framework orienté-objet. Ce framework, baptisé MAGiC (Mailleur Automatique de Géométries issues de la CAO) est construit sur les bases d'un modèle conceptuel d'unification de topologie. Nous faisons référence à ce modèle conceptuel en utilisant la terminologie Modèle de Topologie Unifiée (MTU) en français et Unified Topological Model (UTM) en anglais [1]. L'objectif de cet article est de présenter cet environnement de développement ainsi que les concepts fondamentaux du MTU.

## 2. Le Modèle de Topologie Unifiée

Lors de nos premiers travaux, la construction des maquettes de validation des concepts proposés était essentiellement basée sur l'utilisation d'outils intégrés au sein de plateformes commerciales de CAO. Un changement de plateforme ou un changement de version de plateforme entrainait, pratiquement de manière systématique, la reprogrammation d'une partie considérable de ces maquettes de validation alors que, conceptuellement parlant, il n'y avait pas de réel changement aux algorithmes. Suite à une série de mauvaises expériences de ce type, afin d'éviter la réécriture fréquente de code, nous avons eu l'idée de mettre en place notre propre structure de données et de baser nos maquettes sur cette structure. Les fondements de cette structure sont établis sur la base de la structure du modèle BREP [2]. Dans ce cadre, nous nous sommes assurés de définir un modèle de topologie qui soit le plus proche possible de la norme ISO10303 [3, 4] et de faire en sorte que tous nos travaux passés et futurs puissent s'intégrer harmonieusement avec cette structure (figure 1). Ce framework, tel qu'il est utilisé aujourd'hui, est notamment couplé avec Code_Aster [5] et OpenCascade [6] pour une intégration complète CAO/éléments-finis.
<figure><img src="image_2.png" /><figcaption>Figure 2 – Architecture du MTU.</figcaption></figure>

Comme décrit plus loin, un des principes fondamentaux qui sous-tendent le MTU est que les fonctions associées au BREP qui sont de nature calculatoire n'ont pas besoin d'être programmées puisque la structure du MTU permet d'encapsuler facilement des fonctions extérieures (figure 2).

<figure><img src="image_3.png" /><figcaption>Figure 2 – Principe de base du MTU</figcaption></figure>

Ces fonctions de nature calculatoire sont essentiellement reliées à la dimension géométrique du BREP. Ainsi, en utilisant adéquatement certains concepts de programmation orientée-objet, il est possible d'utiliser directement les équations qui définissent la géométrie au sein des modeleurs. En procédant de cette manière, un changement de plateforme peut se faire très facilement car il ne
nécessite qu'un minimum de changements dans le code. L'utilisation d'un nouveau modeleur extérieur se réduit, au niveau du code, à écrire quatre objets dans une section du framework complètement indépendante des algorithmes (figure 3). Ainsi, utiliser ces algorithmes avec n'importe quel modeleur ne nécessite que l'écriture de 4 classes. Dans un changement de plateforme, la dimension topologique du BREP ne change pas. Ainsi, dans le MTU la structure topologique reste fixe et la définition de la géométrie découle de l'intégration de modeleurs extérieurs. Ceci est rendu possible par l'utilisation des concepts d'héritage, de polymorphisme et d'encapsulation des langages orienté-objets [7].

<figure><img src="image_4.png" /><figcaption>Figure 3 – Intégration d'un modeleur extérieur par l'écriture de quatre objets.</figcaption></figure>

## 3. Utilisation du Modèle de Topologie Unifiée

Différents outils ont été développés à l'aide de cet environnement :

* Pré-optimisation de maillages : ce concept consiste à utiliser les caractéristiques du modèle CAO afin de déterminer a priori (avant tout calcul) une carte de taille que devrait satisfaire le maillage de calcul par éléments finis afin de minimiser l'erreur de calcul [8].

* Maillage automatique tridimensionnel : un mailleur de géométries 3D, basé sur les méthodes frontales, a été développé [9]. Il fonctionne à partir d'un modèle CAO et d'une carte de taille définie a priori et suit la structure hiérarchie du BREP (maillage des sommets, des arêtes, des faces puis du volume).

* Simplification automatique de modèles CAO pour le calcul : les modèles CAO de produit sont en général trop détaillés pour être utilisés directement pour le calcul par éléments finis. Un module de simplification automatique de géométrie [10] a été développé afin de supprimer tous les détails dont la taille est inférieure à un seuil qui est exprimé sous la forme d'une carte de taille, c'est-à-dire un seuil qui est susceptible de varier dans l'espace. La mise en œuvre de ce processus a notamment nécessité le développement d'un mailleur frontal spécifique qui permette de mailler les arêtes et les faces d'un volume dans un contexte de topologie virtuelle [11].

* Maillage automatique multidimensionnel : pour des raisons évidentes, tous les modèles de calcul ne peuvent pas être uniquement constitués d'éléments finis volumiques. Les modèles multidimensionnels mélangent les éléments de poutres, de coques et de volume. La
connexion de ces divers éléments implique des discontinuités géométriques et des discontinuités de formulation. Un mailleur multidimensionnel a été développé afin de solutionner ces deux types de discontinuités en agissant uniquement au niveau géométrique et en utilisant des éléments finis standards [12].

* Comparaison automatique entre modèles et remaillage automatique : le développement de produits implique de nombreuses itérations de calcul et de modification de géométrie. L'idée de base de ce projet est de détecter automatiquement les modifications entre les versions successives de conception et de limiter les calculs en tenant compte des résultats de la version précédente [13].

* Optimisation de topologie : une plateforme complète d'optimisation de topologie depuis le modèle CAO vers un modèle CAO optimisé est intégrée au framework. Cette plateforme d'optimisation est basée sur la méthode SIMP [14] et nos travaux sont axés sur l'intégration de cette méthode au processus de CAO [11, 15].

## 4. Conclusion

La mise en œuvre du MTU nous a permis d'intégrer et de gérer l'évolution de tous nos travaux de recherche de manière simple et efficace. Ce cadre permet d'accroître la productivité de notre équipe de manière très significative car il permet non seulement d'intégrer plus facilement les nouveaux développements mais également de les rendre accessibles à tous afin et d'en faire bénéficier tous les membres de notre équipe ainsi que nos collaborateurs.

## 5. Références bibliographiques

1. Cuillière, J.C. and V. Francois, *Integration of CAD, FEA and Topology Optimization through a Unified Topological Model*. Computer-Aided Design and Applications, 2014. **11**(5): p. 1-15.

2. Mortenson, M.E., *Geometric Modeling*, ed. Wiley. 1985.

3. ISO. *Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation*. 2003. Norme ISO10303.

4. ISO. *Industrial automation systems and integration - Product data representation and exchange - Part 203: Application protocol: Configuration controlled 3D designs of mechanical parts and assemblies*. 2003. Norme ISO10303.

5. *Code Aster*. Disponible depuis : http://www.code-aster.org/.

6. *OpenCascade*. Disponible depuis : http://www.opencascade.org/.

7. Silverio, N., *Language C++.* 1999: p. 605.

8. Francois, V. and J.-C. Cuilliere, *Automatic mesh pre-optimization based on the geometric discretization error*. Advances in Engineering Software, 2000. **31**(10): p. 763-774.

9. Francois, V. and J.-C. Cuilliere, *Un mailleur frontal 3D à densité variable intègre aux modèles solides*. in *IDMME*. 2002. Clermont-Ferrand, France.

10. Foucault, G., et al., *Adaptation of CAD model topology for Finite Element Analysis*. Computer Aided Design, 2008. **40**(2): p. 176-196.

11. Foucault, G., et al., *Generalizing the advancing front method to composite surfaces in the context of meshing constraints topology*. Computer-Aided Design, 2013. **45**(11): p. 1408-1425.

12. Cuillière, J.-C., S. Bournival, and V. François, *A mesh-geometry-based solution to mixed-dimensional coupling*. Computer-Aided Design, 2010. **42**(6): p. 509-522.

13. Cuillière, J.-C., et al., *Automatic comparison and remeshing applied to CAD model modification*. Computer-Aided Design, 2011. **43**(12): p. 1545-1560.

14. Bendsoe, M.P. and O. Sigmund, *Topology optimization - Theory, Methods and Applications*. 2nd ed. 2003, Berlin: Springer. 370.

15. Cuillière, J.C., V. Francois, and J.M. Drouet, *Towards the Integration of Topology Optimization into the CAD Process*. Computer-Aided Design and Applications, 2014. **11**(2): p. 120-140.