Preparant la nouvelle structure des paramètres matériaux pour les matériaux Thixotropes, je me suis rendu compte que leur implémentation n'était absolument pas threadSafe (même en mécanique).
Pour limiter le passage de variables d'évolution du matériau à travers les fonctions du matériau, j'avais à l'époque (Sabca) utilisé des variables locales dans les matérialLaws. Méthode, absolument pas ThreadSafe, reprise ici.
Il est indispensable de supprimer ces variables locales (Fraction Liquide, Fraction Liquide Effective, Lambda, …) dans les matérialLaws, de faire remonter les valeurs dans le matériau et de les repasser au MaterialLaw. Chose faite …
J'en ai profité pour ajouter des gardiens à chaque division par “dt” (car parfois dt == 0), ainsi que des gardiens “dEvpl>0” pour éviter des exposants négatifs de valeurs nulles ⇒ plus de FPE dans la batterie Thixo…
Remplacement de la classe ShimaOyaneMaterialIsotropicHardening
par ShimaOyaneMaterialLaw
: c'est un effet de modification de l'écrouissage isotrope en fonction de l'évolution metallurgique, pas un écrouissage isotrope. Les interfaces ne correspondaient pas … Vu la manière dont c'est implémenté, ca pourrait à mon avis, directement rentrer dans la ThixoYieldStress. A voir en fonction de la théorie…
Utilisation des fonctions (computeStress, computePlasticCorrection) de ThixoEvpIsoHHypoMaterial
dans ThixoTmEvpIsoHHypoMaterial
: pour éviter les copier/coller qui dérivent dans le temps!!!
Ajout du transfert de champ de la FractionLiquide en
ALE en MecaniquePure (c'était fait en TM ⇒ comme j'ai unifié. Sur le fond, je ne crois pas que cette variable doive être transféré)
Il faut encore renommer ThixoTmEvpIsoHHypoMaterial
en TmThixoEvpIsoHHypoMaterial
J'ai aussi ajouté quelques TSC dans les tests pour être mieux à même de les débugger !!!
ATTENTION : il est fondamental si quelqu'un veut réutiliser ces matériaux de faire au préalable une VRAIE batterie de tests DISCRIMINANTS sur TOUTES les lois matérielles et dans TOUTES les configurations (meca, TM,
ALE, …). Il est aussi fondamental de faire des MESURES qui ont du sens dans tous ces tests …