Assistance #316
question sur calcul invariants du tenseur déformation en loi contraintes plane
Description
Gérard,
je me pose la question du calcul des invariants du tenseur de déformation entre le cas d'une loi 3D et le cas d'une loi contrainte plane (que ce soit directe comme par exemple ISOELAS2D_C ou une loi LOI_CONTRAINTES_PLANES).
ci-joint un exemple en traction avec loi Favier pour illustrer (il n'y a qu'à lancer le fichier gnu)
En gros, si je fais un calcul 2D et un calcul 3D avec une loi Favier => j'obtiens le meme resutat. Donc parfait.
Mais si je trace la deformation def_duale_mises, les 2 calculs ne me donnent pas le meme résultat (car dans le cas 2D, Herezh doit surement considérer une déformation égale à 0 dans l'épaisseur).
Or, la loi Favier utilise la déformation mises (plus exactement Q_eps, donc pareil à un coef 2/3 près).
et donc comment ça se fait que la def duale mises est différente mais qu'une loi qui utilise cet invariant est identique (comme attendu) entre 2D et 3D.
pour l'instant, je constate un comportement identique entre 2D et 3D à loi égale. Mais ce cas Favier est assez simple.
Plus généralement, qu'en est-il des autres invariants :
- par exemple : angle de Lode COS3PHI_EPS
- ou bien : les invariants de B pour les lois mooney-rivlin, maheo_hyper, etc...
- est-ce que les invariants utilisés dans des lois de mélanges seront corrects en 2D même si leur sortie dans un .maple parait erronée ?
merci d'avance,
Julien
Fichiers
Mis à jour par Gérard Rio il y a plus de 2 ans
- Statut changé de Nouveau à En cours
- % réalisé changé de 0 à 50
Julien,
dans ton calcul, tu utilises la même loi en 3D:
- en 3D c'est direct
- en 2D contrainte plane, cela passe par l'encapsulage "contrainte plane" de la même loi 3D
Donc c'est normale que l'on obtienne les mêmes résultats si les déformations sont identiques dans les 2 cas.
Pendant le calcul des grandeurs "finales" utilisées aux pti, en particulier les différentes def, les tenseurs utilisés dépendent de la dimension: si l'on est en 2D (contraintes planes ou def planes) les tenseurs sont de dim 2 et en 3D de dim 3, et en 1D de dim 1.
La formule utilisée est la même dans les 3 cas, par exemple pour la def equi :
sqrt(2./3. * ( ((*epsBH) && (*epsBH)) - Sqr(epsBH->Trace()) /3. ))
Ce qui revient effectivement à dire que par rapport au cas 3D:
- en 2D on ne calcule que ce qui se passe dans le plan
- en 1D on en calcule que ce qui se passe dans la ligne.
C'est ce qui est indiqué dans la documentation: "88.11 Significations des grandeurs disponibles" ( voir également toutes les autres grandeurs associées à la def: ex: Qeps ).
Il s'agit là des grandeurs qui sont stockées au pti, indépendamment de la loi utilisée: c-a-d les grandeurs qui sont uniquement liées à la dimension. C'est ces grandeurs que tu obtiens directement en post-traitement par défaut.
Concernant l'angle de Lode:
- en post-traitement on a :
double Qepsilon = ( (Q_eps!=NULL) ? *Q_eps : sqrt(eps_barreHB->II));
double Qepsilon3 = Qepsilon * Qepsilon * Qepsilon;
if (Qepsilon > mini_Q )
{ // on peut calculer un cos3phi pas débile
double bIIIb = eps_barreHB->III / 3.;
tab_ret(it) = 3. * sqrt(6.) * bIIIb/ Qepsilon3;
}
else tab_ret(it)=0.; // sinon on le met à 0
On voit que le résultat dépend de la dimension: car eps_barreHB a la dimension de la géométrie.
- spécifiquement dans les lois de Grenoble (Favier, Orgéas etc.), j'avais déjà donné l'info à Laurent Mahéo:
il faut regarder les méthodes: Hyper3D::Invariant0QepsCosphi Hyper3D::Invariant0Specif(... et Hyper3D::Invariants(...
Pour faire court: c'est globalement les mêmes calculs avec une gestion en plus des cas particuliers et du facteur de régularisation.
Ces calculs sont spécifique aux cas 3D.
Si on demande les grandeurs spécifiques utilisées dans la loi de comp, on aura accès aux infos calculées par Hyper3D, et donc utilisées directement par la loi (ce ne sont pas ce qui sont post-traitées.
Donc si on sort en post traitement, en "contrainte plane" le Qeps par défaut (donc 2D), et d'autre part le Qeps utilisé par la loi de comportement Favier (donc 3D), ils seront différents car ils ne représentent pas les mêmes infos: le premier représente le Qeps de ce qui se passe dans le plan 2D géométrique, le second représente le Qeps dans la matière 3D.
C'est un choix arbitraire, qui est un peu compliqué.
Concernant les lois de type Mooney-Rivlin, la différence importante avec les lois de Grenoble est que les invariants sont calculés à partir des métriques, contrairement au cas des lois de grenoble pour lesquels les invariants sont calculés à partir des déformations d'Almansi.
1) Les invariants I_B II_B et III_B ainsi que les Ji correspondant, ne sont pas stockés aux pti,
2) ces invariants ne sont pas directement accessibles en post-traitement. Pour les récupérer dans les sorties d'exécution, il faut utiliser un niveau d'affichage important (> 4).
On peut aussi utiliser une loi externe qui ne fait rien ...
3) les invariants sont calculés au moment de l'utilisation de la loi.
NB: en contrainte plane + plis cela pose un pb, car la métrique que l'on génère pour utiliser la loi 3D, par construction n'est pas en cohérence avec les déformations que j'ai appelées "mécaniques"
Mis à jour par Julien Troufflard il y a plus de 2 ans
merci pour les explications.
Malgré le temps de calcul supplémentaire, c'est donc plutôt une bonne chose que de passer par une loi contrainte planes qui permet de rester sur les mêmes invariants que son équivalent 3D. Bon à savoir quand on souhaite faire par exemple une loi de mélange qui dépend de l'angle de lode eps ou de la déformation mises. Car en 2D_C, ces grandeurs perdent alors leur vrai sens.
merci également pour le rappel sur la non-compatibilité en loi B et critère pli. J'avais oublié ce point. Bien dommage, je voulais utiliser une loi HYPER_EXTERNE_W pour justement éviter de faire une loi de mélange.
Mis à jour par Gérard Rio il y a plus de 2 ans
- Tracker changé de Anomalie à Assistance
- Statut changé de En cours à Résolu
- % réalisé changé de 50 à 100
OK,