6. Contrôle de la qualité#

De façon générale, la qualité globale d’une étude dépend de plusieurs facteurs. Parmi les causes qui peuvent altérer la qualité d’une étude, on peut distinguer en particulier:

  • les incertitudes sur les données,

  • les choix de modélisation (passage de la physique au numérique),

  • les erreurs de discrétisation, une fois les données établies et la modélisation choisies.

6.1. Incertitudes sur les données#

Sur ce point les incertitudes peuvent être multiples car elles peuvent concerner chacun des aspects suivants.

  • Les données matériau: une fois la loi de comportement choisie, et ses paramètres correctement identifiés sur des essais de caractérisation appropriés, il peut subsister une incertitude sur les valeurs des paramètres de cette loi, due à la variabilité des matériaux.

  • La géométrie exacte de la structure à modéliser peut comporter des incertitudes: les dimensions réelles ne sont pas celles prévues à la conception, ou bien la dégradation de la forme d’un pièce conduit à une géométrie mal maîtrisée (en dehors de tout aspect de discrétisation).

  • Les chargements (y compris thermiques ou dus à d’autres variables de commandes: irradiation, hydratation, séchage, etc..) et les conditions aux limites peuvent présenter de nombreuses incertitudes.

  • Les conditions initiales, en particulier celles dues à fabrication (contraintes résiduelles, écrouissage initial).

Pour chacun des paramètres incertains évoqués ci-dessus, il sera parfois nécessaire d’effectuer une analyse de sensibilité:

  • soit l’utilisateur effectue quelques simulations pour des valeurs extrêmes des paramètres incertains, ce qui suffit dans le cas d’une variation monotone du résultat à ces paramètres (mais ce n’est pas toujours le cas: par exemple la dépendance des contraintes aux valeurs extrêmes de température, avec des coefficients matériau qui en sont fonction, c’est pas triviale.)

Signalons à ce propos la possibilité d’effectuer très simplement des calculs paramétriques avec Code_Aster (cf.

u2.08.07)

  • soit dans le cas de paramètres hautement variables, il effectue une analyse mécano–fiabiliste, avec OpenTurns ( http://www.openturns.org) couplé à Code_Aster , dans la plate-forme Salome-Meca sv1.04.01).

6.2. Choix de modélisation et vérification des données#

Même si les données sont fiables, la qualité des résultats dépend aussi de choix effectués par l’utilisateur relatifs à la simulation à effectuer. Les paragraphes précédent décrivent ces choix. Rappelons quelques conseils généraux:

  • Au delà du maillage, il peut être utile de vérifier les données du calcul, comme par exemple, visualiser les conditions aux limites et chargements (sens et lieu d’application), les affectations des matériaux, et des caractéristiques élémentaires (orientation des poutres, épaisseurs, sections). Pour cela, utiliser IMPR_RESU/CONCEPT.

  • D’autres vérifications peuvent être effectuées directement dans le fichier de commandes; par exemple, vérifier la cohérence du système d’unités, les conditions aux limites, les caractéristiques élémentaires, il est toujours utile d’effectuer un premier calcul élastique, avant toute étude non linéaire.

  • Pour vérifier les données matériau, il peut être utile d’effectuer avec la mise en données de Code_Aster un essai plus simple que l’étude, par exemple sur point matériel (SIMU_POINT_MAT). Retrouve-t-on la courbe de traction-compression ?

  • Le calcul de la masse (ou du volume) de la structure fait également partie des vérifications simples mais parfois utiles.

6.3. Maîtriser les erreurs dues à la discrétisation spatiale#

Sur ce point, nous rappelons ici quelques généralités, mais la lecture de u2.08.01 est plus que conseillée.

Indépendamment de tout désir de réaliser de l’adaptation de maillage, nous conseillons de vérifier le maillage initial avec la commande MACR_INFO_MAIL u7.03.02 u7.03.02. Cette commande permet de réaliser, à peu de frais, les vérifications suivantes:

  • vérifier la concordance du maillage avec la géométrie initiale (en dimension, en volume);

  • lister les GROUP_MA et GROUP_NO, pour une bonne modélisation des conditions aux limites;

  • diagnostiquer d’éventuels problèmes (connexité, trous, interpénétration de mailles);

  • fournir des critères de qualité des mailles (évalués maille par maille).

Pour maîtriser plus facilement l’effet de la qualité du maillage, une stratégie automatique d’adaptation de maillage est opérationnelle: elle s’appuie sur le logiciel d’adaptation de maillage Homard, qui peut être appelé directement depuis le fichier de commandes de Code_Aster ou dans la plate-forme Salome-Meca, et utilise soit des indicateurs d’erreur permettant de piloter l’adaptation, soit les valeurs d’un champ, soit le saut d’un champ d’un élément à l’autre. Plusieurs motivations apparaissent pour adapter un maillage:

  • Le maillage est très compliqué à réaliser: on part d’une version simple et on confie à un processus automatique la charge de l’affiner.

  • On veut s’assurer de la convergence de la solution numérique: plutôt que de réaliser à la main des maillages de plus en plus fins, on laisse le logiciel chercher lui-même les endroits où il faudrait affiner le maillage pour augmenter la précision du résultat.

  • Les conditions du calcul changent au cours de son déroulement: les zones qui doivent être maillées finement se déplacent. Si on maille fin partout dès le début, le maillage est trop gros. En adaptant au fur et à mesure, (raffinement - déraffinement) le maillage ne sera fin qu’aux endroits nécessaires: sa taille sera réduite et la qualité de la solution sera bonne.

Les zones à raffiner peuvent être repérées:

  • Soit avec un indicateur d’erreur. Notons que les plus simples (ZZ1, de type Zhu-Zienkiewicz) sont très robustes, disponibles en 2D et 3D, et même s’ils ne fournissent pas les meilleurs majorants de l’erreur, leurs variations suffisent à piloter l’adaptation. Les estimateurs en quantité d’intérêt sont plus pertinents pour fournir une borne de l’erreur commise.

  • Soit avec un champ (déformation, variable interne) pertinent. Attention, en plasticité, la contrainte de Von Mises ne l’est pas toujours. On peut utiliser:

  • soit les valeurs extrêmes de ce champ (par exemple demander de raffiner les 5% d’éléments qui ont la valeurs la plus forte),

  • soit piloter l’adaptation par le saut des valeurs de ce champ à la frontière entre deux élements finis.

  • Soit par des boîtes (raffinement uniforme dans des zones géométriques).

Pour plus d’information, voir u2.08.01

6.4. Erreurs de discrétisation en temps#

Pour la plupart des non linéarités (comportement, contact, grandes déformations) la discrétisation temporelle influence le résultat. Des résultats de convergence existent (fort heureusement) dans tous les cas classiques (élasto-visco-plasticité, contact), mais il reste néanmoins à s’assurer que pour un pas de temps choisi la solution est suffisamment proche de la solution continue en temps.

La solution la plus simple est similaire au raffinement uniforme pour l’adaptation de maillage: elle consiste à raffiner uniformément le pas de temps sur tout le transitoire et relancer STAT_NON_LINE. Ceci peut être automatisé grâce à une fonctionnalité de DEFI_LIST_INST (voir u2.04.01`et :ref:`u4.34.03).

Un autre critère de maîtrise du pas de temps est la subdivision en fonction d’une grandeur d’intérêt: DEFI_LIST_INST / DELTA_GRANDEUR permet en effet de redécouper le pas de temps si la variation maximum d’une quantité donnée (par exemple une composante de déformation plastique) est supérieure à un seuil fourni.

De plus, pour les comportements élastoplastiques, il est possible d’estimer directement l’erreur due à la discrétisation en temps, de façon analogue à RESI_RADI_RELA (cf. 3.2.4 ). Si ce critère n’a pas été pris en compte lors du calcul, il est possible de le calculer en post-traitement, dans CALC_CHAMP: la composante ERR_RADI de l’option DERA_ELGA contient l’estimation d’erreur à chaque instant et en chaque point d’intégration.