Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Code_Aster default
Titre : Conseils de mise en uvre de calculs non-linaires Date : 25/02/2014 Page : 1/15
Responsable : GNIAUT Samuel Cl : U2.04.02 Rvision :
112317bb069c
Rsum
Lobjectif de cet document est de donner des conseils un utilisateur souhaitant raliser des calculs non-
linaires avec Code_Aster. L'utilisateur de calculs linaires y trouvera aussi des informations et des conseils
utiles.
1 Maillage et modlisation
Le choix des lments finis influe directement sur la solution. Par choix, on entend le choix du degr
de l'approximation lments-finis ainsi que le choix d'une formulation. Le degr de l'approximation
tant gnralement reli au degr des mailles, les paragraphes suivant traitent du choix du degr du
maillage et le choix d'une formulation lments-finis, avec un point particulier pour les problmes
d'incompressibilit.
Le choix des lments finis est ralis dans la commande AFFE_MODELE. En thermique, il est
conseill d'utiliser des lments lumps (_DIAG). En mcanique, les lments finis classiquement
utiliss sont les lments iso-paramtriques (3D, D_PLAN, C_PLAN, AXIS). Cependant, ces lments
sont mal adapts aux problmes quasi-incompressibles. Le choix d'une formulation rpondant ce
problme fait l'objet du paragraphe suivant.
Pour plus de dtails, voir [U2.01.10] Notice d'utilisation sur le choix des lments finis
Toutes les formulations sont compatibles avec les modlisations 3D, D_PLAN et AXIS mais en
contraintes planes (C_PLAN) seule la formulation sous-intgre (_SI) est possible.
Dans le cas gnral, il est donc ncessaire de mixer diffrentes formulations pour couvrir tous les
types de mailles (par exemple, comme aucune formulation ne gre les mailles PYRAM13, il faut aussi
affecter une modlisation iso-paramtrique).
Dans le cas o on reste en petites dformations, il est conseill d'utiliser un mlange de formulations
(le maillage pouvant comporter plusieurs types de mailles) :
qualit cot
Pour plus de dtails, voir [U2.01.10] Notice d'utilisation sur le choix des lments finis
En ce qui concerne les conditions aux limites, il s'agit souvent d'en introduire le minimum pour bloquer
les dplacements de solide rigide, donc pour viter d'avoir des corps flottants dans la structure, ce qui
provoquerait un pivot nul ou une matrice singulire lors de la rsolution.
Certaines conditions aux limites sont non-linaires, par exemple le contact unilatral. Leur vrification
ne peut donc tre faite l'aide d'un premier calcul linaire ( MECA_STATIQUE ) : les diffrents objets
en contact ne doivent pas avoir de mouvement de corps rigide [U2.04.04] Notice d'utilisation du
contact. Si c'est le cas, on peut viter les pivots nuls en ajoutant des lments discrets (ressorts) de
faible rigidit.
Les chargements (autre que les blocages) peuvent consister soit en conditions de dplacement
imposs, soit en efforts imposs, soit de type champ initial impos.
Dans tous les cas, il importe de bien reprsenter la ralit. On pourra utiliser avec profit les conditions
de symtrie ou d'antisymtrie [1].
De faon gnrale, une condition de type dplacement impos ne fournit pas les mmes rsultats
qu'une condition de type force impose : un dplacement impos sur une partie de la frontire impose
que le dplacement (impos) soit constant en espace sur cette partie, donc apporte de la rigidit,
voire des singularits. Prenons l'exemple du poinonnement d'un massif : le dplacement impos sur
le bord du poinon induit des singularits de contraintes de mme nature que celles qui sont
rencontres au fond d'une fissure.
De plus, pour les calculs non linaires, la conduite du calcul n'est pas la mme : en cas
d'adoucissement ou de charge limite, le chargement force impose peut tre illicite (au-del du
chargement limite). Prenons par exemple le poinonnement (voir Figure 2.1-1 et Figure 2.1-2 ) : la
rponse en termes de force rsultante sur le poinon en fonction du dplacement montre que plus la
force impose s'approche de la charge limite, plus la convergence sera difficile, jusqu' tre
impossible au-del de la charge limite. Si la modlisation correcte ncessite d'appliquer une force
impose, le problme peut tre rsolu via le pilotage de la force impose par rapport au dplacement
d'un point ou d'un ensemble de points (mthode de continuation ou de longueur d'arc) (voir [R5.03.80]
Mthodes de pilotage du chargement ).
Les documentations d'utilisation relatives l'application des chargements et conditions aux limites
sont [U4.44.01] AFFE_CHAR_MECA et [U4.44.03] AFFE_CHAR_CINE .
Pour les milieux continus 2D, 3D, l'utilisation de forces ponctuelles (FORCE_NODALE) est proscrire,
car elle entrane toujours des singularits.
Dans le cas o les chargements sont de type dplacements imposs, ceux-ci peuvent tre introduits
soit par AFFE_CHAR_MECA(_F), soit par AFFE_CHAR_CINE(_F). L'utilisation de cette dernire
commande permet un gain de temps calcul qui peut tre apprciable en non-linaire (car elle n'ajoute
pas de multiplicateurs de Lagrange, il y a donc moins d'quations rsoudre).
Les variables de commandes ne font pas partie des commandes AFFE_CHAR_MECA(_F). Elles sont
pourtant, dans beaucoup de modlisations, assimilables des chargements : par exemple la dilatation
thermique peut elle seule engendrer des tats de contraintes et de dformations conduisant des
non-linarits de comportement. Les variables de commandes sont appliques via AFFE_MATERIAU.
Il faut toutefois signaler ici une prcaution de modlisation concernant ces variables de commande :
en effet, ds que le calcul est incrmental, STAT_NON_LINE utilise chaque pas de temps
l'incrment de variable de commande pour calculer les dformations correspondantes (cf. par
exemple [R5.03.02] Intgration des relations de comportement lasto-plastique de Von Mises). En
gnral, il est prfrable qu linstant initial, la structure soit non contrainte, non dforme. Si ce n'est
pas le cas, il faut ajouter un instant prliminaire o la structure est au repos, voir par exemple le test
FORMA30 [V7.20.101] FORMA30 - Cylindre creux thermolastique. En cas de dtection de
contraintes dues aux variables de commandes l'instant initial on obtient l'alarme :
----------------------------------------------------------------------------
<A> <MECANONLINE2_97> :
-> Les variables de commandes initiales induisent des contraintes incompatibles :
l'tat initial (avant le premier instant de calcul) est tel que les variables de commande
(temprature, hydratation, schage...) conduisent des contraintes non quilibres.
-> Risque & Conseil : dans le cas d'une rsolution incrmentale, on ne considre que la
variation des variables de commande entre l'instant prcdent et l'instant actuel. On ne prend
donc pas en compte d'ventuelles contraintes incompatibles dues ces variables de commande
initiales.
Pour tenir compte de ces contraintes vous pouvez :
partir d'un instant fictif antrieur o toutes les variables de commande sont nulles ou
gales aux valeurs de rfrence
Manuel d'utilisation Fascicule u2.04: Mcanique non linaire
Un conseil mthodologique : il est toujours prfrable d'appliquer les conditions aux limites sur des
groupes de mailles plutt que sur des groupes de nuds ou des listes de nuds ou de mailles. En
effet, les groupes de mailles correspondent des zones gomtriques, et sont conservs lors d'un
raffinement du maillage (manuel ou l'aide de Homard), alors que les groupes de nuds sont
modifis. C'est pourquoi dans AFFE_CHAR_MECA les mot-cls DDL_IMPO, FACE_IMPO,
LIAISON_UNIF, ainsi que tous les mots cls de AFFE_CHAR_CINE comportent le mot cl GROUP_MA,
privilgier donc.
Il est parfois ncessaire d'imposer des relations linaires entre degrs de libert. Les mots-cls
LIAISON_* de AFFE_CHAR_MECA permettent d'introduire ce type de relation. Les relations
lmentaires peuvent tre dfinies l'aide de LIAISON_DDL, mais cela devient fastidieux si les
quations crire sont nombreuses. Des fonctionnalits de plus haut niveau sont disponibles, par
exemple :
LIAISON_SOLIDE pour rigidifier une partie de la structure, (en petites dformations et petits
dplacements uniquement) [R3.03.02] Conditions de liaison de corps solide ;
LIAISON_UNIF pour assurer qu'une partie de la frontire gardera le mme dplacement
(inconnu a priori) ; [U4.44.01] AFFE_CHAR_MECA
LIAISON_MAIL, LIAISON_GROUP pour relier deux bords,
et d'autres mots cls spcifiques de AFFE_CHAR_MECA.
De plus il est possible de raccorder (au sens nergtique) des modlisations de natures diffrentes,
via LIAISON_ELEM et plusieurs options (en petites dformations et petits dplacements uniquement)
'2D_POU','3D_POU', poutres ou discrets avec lments 2D ou 3D [R3.03.03] Raccords
2D-poutre et 3D-poutre;
'COQ_TUYAU','3D_TUYAU', lments tuyau avec avec plaques et coques, 3D ;
'COQ_POU', poutres ou discrets avec plaques et coques [R3.03.06] Liaison coque-poutre.
Remarque : dans certains cas, les conditions aux limites ou les chargements de type dplacement
impos ne conviennent pas car ils apportent trop de rigidit locale. Il peut tre intressant de
remplacer ces conditions par une liaison entre la partie de la frontire concerne et un lment
discret, sur lequel seront appliques les conditions de dplacement imposs ou un torseur d'efforts
imposs. Cela signifie que les dplacements de la frontire seront gaux en moyenne au
dplacement de l'lment discret, sans introduire de contraintes parasites. Par contre, ce procd
introduit des degrs de libert supplmentaires (multiplicateurs de Lagrange), la rsolution des
systmes linaires peut donc tre plus coteuse.
Le contact unilatral, avec ou sans frottement, est un type de conditions aux limites particulier. Il est
fortement non linaire, et son traitement dans STAT_NON_LINE / DYNA_NON_LINE ncessite des
itrations supplmentaires pour obtenir la convergence. Il est fortement conseill de consulter le
document [U2.04.04 Notice d'utilisation du contact ] pour modliser correctement ces phnomnes.
Il ne faut pas confondre ces chargements et les dformations et contraintes initiales utilises en non
linaire, car ces quantits n'interviennent pas directement dans l'expression de la loi de
comportement, mais seulement au second membre.
Les champs de contraintes, dplacements et variables internes initiaux sont fournir directement
dans STAT_NON_LINE (mot cl ETAT_INIT). Pour construire ces champs, il peut tre utile de
consulter le document [U2.01.09] Dfinition analytique d'un champ de contraintes et d'un champ de
variables internes initiaux.
3 Matriaux et comportements
Ce mot-cl permet de dfinir les hypothses utilises pour le calcul des dformations : par dfaut, on
considre de petits dplacements et petites dformations. Le type de dformation utilis peut avoir
une grande influence sur le calcul ds qu'une composante des dformations dpasse quelques %
(typiquement 5%).
GROT_GDEP : permet de traiter les grandes rotations et les grands dplacements, mais en restant
en petites dformations. Ceci est particulirement utile pour les structures lances (modlises
en poutres, coques, ou 3D) et l'tude du flambement (voir par exemple le test [V6.02.134]
SSNL134 - Ruine lasto-plastique du portique de Lee ).
En ce qui concerne les lois hyper-lastiques de type ELAS_VMIS , elles ne sont pas adaptes aux
grandes dformations (perte d' existence de la solution, voir le 2,1 de [R5.03.20] Relation de
comportement lastique non linaire en grands dplacements ). Il faut utiliser soit un modle de
grandes dformations avec VMIS_ISOT , soit le comportement ELAS_HYPER .
Permet de prciser le type de schma d'intgration pour rsoudre l'quation ou le systme d'quations
non-linaires form par les quations constitutives des modles de comportement variables
internes. Une mthode de rsolution par dfaut est prvue pour chaque comportement. Toutefois, il
est possible de modifier la mthode de rsolution par dfaut pour un certain nombre de
comportements (voir [U4.51.11]).
Dans le cas d'une rsolution itrative (c'est dire si ALGO_INTE n'est pas ANALYTIQUE), les mots-
cls ITER_INTE_MAXI et RESI_INTE_RELA dfinissent le nombre maximum d'itrations et le rsidu
relatif pour intgrer le comportement. Si cette intgration choue, il est possible de subdiviser le pas
de temps, soit localement (mot-cl ITER_INTE_PAS) soit globalement (commande
DEFI_LIST_INST). La valeur par dfaut de ITER_INTE_MAXI est 20. Cela peut tre insuffisant pour
certains comportements (MONOCRISTAL par exemple). Ne pas hsiter dans ce cas augmenter ce
paramtre (100 par exemple). Par contre il est fortement dconseill d'augmenter RESI_INTE_RELA
( 106 par dfaut), sous peine d'obtenir des solutions non converges.
La subdivision locale du pas de temps est moyen d'amliorer la robustesse de l'intgration locale, par
contre elle ne permet pas de fournir une matrice tangente cohrente (perte de la convergence
quadratique du problme global).
3.2.3 POST_ITER='CRIT_RUPT'
Dfinition d'un critre de rupture en contrainte critique en post-traitement des itrations de Newton,
chaque pas de temps. Si la plus grande contrainte principale moyenne dans un lment dpasse un
seuil donn c , le module d'Young est divis au pas de temps suivant par un coefficient. Ces deux
coefficients sont dfinis sous le mot- cl CRIT_RUPT de l'oprateur DEFI_MATERIAU.
3.2.4 RESI_RADI_RELA
Ce critre est oprationnel pour les comportements lastoplastiques de Von Mises crouissage
isotrope, cinmatique linaire et mixte et pour les comportements lasto-visco-plastiques de
Chaboche.
4 Rsolution non-linaire
Les 3 grands types de non-linarits dans Code_Aster sont les suivants :
non-linarit lie au comportement du matriau (par exemple plastique) ;
non-linarit lie la gomtrie (par exemple en grands dplacements) ;
non-linarit lie au contact-frottant.
Les conseils gnraux de rsolution de problmes non-linaires font l'objet d'un document spcifique
dont on recommande fortement la lecture : [U2.04.01] Conseils d'utilisation de STAT_NON_LINE .
Avant tout calcul non-linaire, il est indispensable de s'assurer que le calcul fonctionne correctement
en lasticit linaire. Les non-linarits pourront alors tre ajoutes les unes aprs les autres.
On rappelle brivement les conseils majeurs sur la discrtisation temporelle et les paramtres
numriques de rsolution non-linaire dans les paragraphes suivants.
Pour vrifier la cohrence des donnes (systme d'units, conditions aux limites, caractristiques
lmentaires, effet des variables de commandes), il est toujours utile d'effectuer un premier calcul
lastique linaire (STAT_NON_LINE/RELATION='ELAS', ou MECA_STATIQUE), avant toute tude
non linaire, puis d'ajouter les non linarits les unes aprs les autres.
Il est conseill d'utiliser une matrice tangente ractualise chaque itration de Newton :
REAC_ITER=1 afin de faciliter la convergence de l'algorithme (voir le paragraphe 2.2 du document
[U2.04.01]).
Remarques :
Pour des problmes adoucissants, Code_Aster offre la possibilit d'utiliser une mthode
alternative la mthode Newton-Raphson : c'est la mthode IMPLEX qui est une mthode
robuste mais approche (voir le paragraphe 4.5 du document [U2.04.01]).
Pour une optimisation du temps de calcul, Code_Aster offre la possibilit d'utiliser une
mthode de Newton inexacte ( condition que le solveur linaire choisi soit un solveur
itratif) : c'est la mthode NEWTON_KRYLOV.
De toute manire, la taille des systmes linaires est affiche chaque rsolution dans le fichier
.mess : nombre total d'quations ou la matrice est de taille n quations. Il est
important de connatre ce nombre (bien qu' lui seul, il ne soit pas toujours un indicateur totalement
fiable, car la mmoire et le temps ncessaire la rsolution d'un systme linaire dpend de bien
d'autres paramtres : taille de la largeur de bande, nombre de termes non nuls dans la matrice,
renumroteur... mais cela nous emmnerait trop loin). Donc si on ne sait pas estimer la taille du
systme linaire, il est intressant de lancer une premire fois l'tude en mode dgrad : lecture
du maillage, affectation des lments-finis, du matriau et rsolution (MECA_STATIQUE ou
STAT_NON_LINE) avec le solveur direct MUMPS. Lancer l'tude simplifie en mode interactif avec
suivi interactif, puis arrter le calcul une fois l'information sur la taille du systme connue.
Dans l'idal1, il faut disposer d'environ 30 Go pour faire passer un calcul un million de degrs de
libert (cas du cube maill en HEXA8, dont une face est encastre par dualisation), la mmoire
minimale 2 tant 9 Go. Le tableau ci-dessous donne des ordres de grandeur de la mmoire idale
(ou optimale) et minimale pour rsoudre un systme de taille donne (avec le solveur direct MUMPS).
Une fois la mmoire ncessaire estime, on peut lancer le calcul complet avec le solveur direct
MUMPS. A la suite de ce 1er calcul, il est trs intressant de regarder :
Dans le fichier .mess la mmoire totale (JEVEUX + python + librairies externes) utilise par
le calcul : cette information est affiche la fin du fichier : voir MAXIMUM DE MEMOIRE
UTILISEE PAR LE PROCESSUS ;
Dans le fichier .resu : le temps de rsolution (MECA_STATIQUE / STAT_NON_LINE) par
rapport au temps total du calcul.
5.2 Optimisation d'un calcul
L'optimisation d'un calcul sur les aspects temps et mmoire est une opration intressante mais un
peu dlicate car il n'existe pas de recette miracle. D'ailleurs il n'est pas toujours facile de faire la
distinction entre optimisation de la mmoire et optimisation du temps de calcul, donc dans les
paragraphes suivants, on donne des pistes d'optimisation au sens large et on renvoie vers les
documents adquats.
Le paralllisme
L'utilisation du paralllisme est certainement la solution la plus facile et la plus sre pour diminuer le
temps de calcul (et parfois aussi la mmoire ncessaire). Le paralllisme consiste excuter des
oprations sur plusieurs processeurs en mme temps. La mise en place du paralllisme n'est efficace
que si le temps pass dans STAT_NON_LINE est prpondrant par rapport au temps total du calcul.
Pour cela, il suffit de choisir un solveur adquat (exemple : MUMPS, PETSC), une version MPI de
Code_Aster et de spcifier le nombre de processeurs dans Astk (menu Options/mpi_nbcpu). Sur
le serveur centralis aster4, on conseille de commencer par choisir mpi_nbcpu=2, d'observer le
gain en temps puis de recommencer avec mpi_nbcpu=4, puis ventuellement mpi_nbcpu=8. Il est
possible de choisir mpi_nbcpu=16 mais on risque d'attendre longtemps avant que tous ces
processeurs soient disponibles, donc avant que le calcul ne dmarre (tout dpend de la charge
machine !).
De nombreux conseils sur le paralllisme sont donns dans le document [U2.08.06] Notice
d'utilisation du paralllisme . Des informations plus fines sur les temps passs dans chaque partie de
la rsolution sont galement affiches, et peuvent servir mieux paramtrer le calcul (temps,
mmoire, nombre de processeurs...). On renvoie pour cela la documentation [U1.03.03]
Indicateurs de performance d'un calcul (temps/mmoire) .
Le solveur linaire
Suivant la taille de la matrice, l'utilisation d'un solveur itratif (comme PETSC) la place d'un solveur
direct permettra un gain en temps. titre d'information, on considre qu'un solveur itratif est plus
rapide qu'un solveur direct (par dfaut) partir d'environ 200 000 quations en 3d. Mais cela dpend
du type de structure3. La contre-partie de l'utilisation d'un solveur itratif est une robustesse non
garantie. Il est noter que l'utilisation de PETSC ncessite une version MPI de Code_Aster (mme si
on n'utilise qu'un seul processeur). A partir d'une certaine taille de problme (quelques millions de
ddls), l'utilisation d'un solveur direct devient impossible et il est indispensable d'utiliser un solveur
itratif.
En cas d'chec de la rsolution par un solveur itratif, les leviers d'actions sont le choix d'un autre
prconditionneur (prconditionneur direct simple prcision par dfaut LDLT_SP, prconditionneur
incomplet LDLT_INC, ), le choix d'un autre algorithme itratif (GMRES par dfaut, CG, CR, ).
De nombreux conseils sur le choix du solveur sont donns dans [U2.08.03] Notice d'utilisation des
solveurs linaires .
3 Un cube est pnalisant pour le solveur direct, alors qu'une structure mince ou lance donne un avantage au solveur direct
Manuel d'utilisation Fascicule u2.04: Mcanique non linaire
champs exclure (commande EXTR_RESU). L'extraction peut aussi se faire sur une partie du maillage
ou du modle. La commande DETRUIRE peut aussi tre utilise pour dtruire un concept. Suite ces
oprations d'extraction ou de suppression, il faut spcifier RETASSAGE='OUI' dans la commande
FIN afin de rcuprer effectivement l'espace disque associe la base globale.
Pour rduire la taille des fichiers rsultat au format MED (.rmed) : utiliser IMPR_RESU/RESTREINT.
Dans un objectif d'une poursuite, on peut dans certains cas remplacer la base par l'impression de
champs MED. La poursuite dbutera alors par les commandes DEBUT puis LIRE_RESU.
6 Contrle de la qualit
De faon gnrale, la qualit globale dune tude dpend de plusieurs facteurs. Parmi les causes qui
peuvent altrer la qualit d'une tude, on peut distinguer en particulier :
les incertitudes sur les donnes,
les choix de modlisation (passage de la physique au numrique),
les erreurs de discrtisation, une fois les donnes tablies et la modlisation choisies.
Les donnes matriau : une fois la loi de comportement choisie, et ses paramtres correctement
identifis sur des essais de caractrisation appropris, il peut subsister une incertitude sur les
valeurs des paramtres de cette loi, due la variabilit des matriaux.
La gomtrie exacte de la structure modliser peut comporter des incertitudes : les dimensions
relles ne sont pas celles prvues la conception, ou bien la dgradation de la forme d'un pice
conduit une gomtrie mal matrise (en dehors de tout aspect de discrtisation).
Les chargements (y compris thermiques ou dus d'autres variables de commandes : irradiation,
hydratation, schage, etc..) et les conditions aux limites peuvent prsenter de nombreuses
incertitudes.
Les conditions initiales, en particulier celles dues fabrication (contraintes rsiduelles,
crouissage initial).
Pour chacun des paramtres incertains voqus ci-dessus, il sera parfois ncessaire d'effectuer une
analyse de sensibilit :
soit l'utilisateur effectue quelques simulations pour des valeurs extrmes des paramtres
incertains, ce qui suffit dans le cas d'une variation monotone du rsultat ces paramtres (mais
ce n'est pas toujours le cas : par exemple la dpendance des contraintes aux valeurs extrmes
de temprature, avec des coefficients matriau qui en sont fonction, c'est pas triviale.)
Signalons ce propos la possibilit d'effectuer trs simplement des calculs paramtriques avec
Code_Aster (cf. [U2.08.07] Distribution de calculs paramtriques)
soit dans le cas de paramtres hautement variables, il effectue une analyse mcanofiabiliste,
avec OpenTurns (http://www.openturns.org) coupl Code_Aster, dans la plate-forme Salome-
Meca [SV1.04.01] Gestionnaire d'tude chane Openturns/Aster).
Au del du maillage, il peut tre utile de vrifier les donnes du calcul, comme par exemple,
visualiser les conditions aux limites et chargements (sens et lieu d'application), les affectations
des matriaux, et des caractristiques lmentaires (orientation des poutres, paisseurs,
sections). Pour cela, utiliser IMPR_RESU/CONCEPT.
D'autres vrifications peuvent tre effectues directement dans le fichier de commandes ; par
exemple, vrifier la cohrence du systme d'units, les conditions aux limites, les caractristiques
lmentaires, il est toujours utile d'effectuer un premier calcul lastique, avant toute tude non
linaire.
Pour vrifier les donnes matriau, il peut tre utile d'effectuer avec la mise en donnes de
Code_Aster un essai plus simple que l'tude, par exemple sur point matriel (SIMU_POINT_MAT).
Retrouve-t-on la courbe de traction-compression ?
Manuel d'utilisation Fascicule u2.04: Mcanique non linaire
Le calcul de la masse (ou du volume) de la structure fait galement partie des vrifications
simples mais parfois utiles.
Pour matriser plus facilement l'effet de la qualit du maillage, une stratgie automatique d'adaptation
de maillage est oprationnelle : 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 dun champ dun lment lautre. Plusieurs motivations apparaissent pour
adapter un maillage :
Le maillage est trs compliqu raliser : on part dune version simple et on confie un
processus automatique la charge de laffiner.
On veut sassurer de la convergence de la solution numrique : plutt que de raliser la main
des maillages de plus en plus fins, on laisse le logiciel chercher lui-mme les endroits o il
faudrait affiner le maillage pour augmenter la prcision du rsultat.
Les conditions du calcul changent au cours de son droulement : les zones qui doivent tre
mailles finement se dplacent. Si on maille fin partout ds le dbut, le maillage est trop gros. En
adaptant au fur et mesure, (raffinement - draffinement) le maillage ne sera fin quaux endroits
ncessaires : sa taille sera rduite et la qualit de la solution sera bonne.
Soit avec un indicateur derreur. Notons que les plus simples (ZZ1, de type Zhu-Zienkiewicz) sont
trs robustes, disponibles en 2D et 3D, et mme s'ils ne fournissent pas les meilleurs majorants
de l'erreur, leurs variations suffisent piloter l'adaptation. Les estimateurs en quantit d'intrt
sont plus pertinents pour fournir une borne de l'erreur commise.
Soit avec un champ (dformation, variable interne) pertinent. Attention, en plasticit, la contrainte
de Von Mises ne l'est pas toujours. On peut utiliser :
soit les valeurs extrmes de ce champ (par exemple demander de raffiner les 5% d'lments
qui ont la valeurs la plus forte),
soit piloter l'adaptation par le saut des valeurs de ce champ la frontire entre deux
lements finis.
Soit par des botes (raffinement uniforme dans des zones gomtriques).
Pour plus d'information, voir [U2.08.01] Utilisation des indicateurs derreur et stratgies dadaptation
de maillages associes
La solution la plus simple est similaire au raffinement uniforme pour l'adaptation de maillage : elle
consiste raffiner uniformment le pas de temps sur tout le transitoire et relancer STAT_NON_LINE.
Ceci peut tre automatis grce une fonctionnalit de DEFI_LIST_INST (voir [U2.04.01] et
[U4.34.03]).
Un autre critre de matrise du pas de temps est la subdivision en fonction d'une grandeur d'intrt :
DEFI_LIST_INST / DELTA_GRANDEUR permet en effet de redcouper le pas de temps si la
variation maximum d'une quantit donne (par exemple une composante de dformation plastique)
est suprieure un seuil fourni.
De plus, pour les comportements lastoplastiques, il est possible d'estimer directement l'erreur due
la discrtisation en temps, de faon analogue RESI_RADI_RELA (cf.3.2.4). Si ce critre 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'intgration.
7 Rfrences
[1] Mcanique des structures , p.658, F.Voldoire ; Y.Bamberger, Presses de l'ENPC 2008.