commit:2017:08_31
Table of Contents
Commit 2017-08-31
Nettoyage structure matériau : Episode 1
Nettoyage structure matériau :
- Dans le cadre de HPC4WE, il est nécessaire de rendre les classes matériau thread-safe (afin de pouvoir faire des calculs Thermomécaniques en parallèle)
- Le gros du travail va être de construire une structure de données parallèle aux matériaux contenant les propriétés matériaux, pouvant être dupliquée pour chaque thread, et dont on peut recalculer les valeurs en fonction de l'état du point d'intégration (classe PRMat).
- En amont de ce travail, la lecture du code m'a déjà amené à effectuer l'un ou l'autre nettoyage (objet de ce premier commit d'une, hélas, longue série)
mtMaterials :
- Density : regroupement de la lecture de la densité au niveau de MechanicalMaterial (elle était faite à 4 ou 5 endroits différents). Qui plus est, j'ai supprimé la loi de dépendance de la densité (vu que la masse est précalculée et que en ALE, le recalcul de la matrice de masse se fait via tranfert des déterminants de jacobiens, même en thermique). Il serait possible assez facilement d'initialiser une matrice de masse à densité variable dans l'espace (je pense aux os de Cedric) de la même manière que l'initialisation des axes d'orthotropie (mais dans ce cas quid de l'ALE !!!). Ca ne change rien à la dépendance de la densité à la température dans les équations de la thermique.
- suppression de
OrthoAxes
(plus utilisé depuis l'adaptation de l'initialisation des axes d'orthotropie par Geoffrey) - renommage du coefficient de compressibilité tangent pour la matrice de raideur : GKState.coefMat → GKState.K
- ContinuousDamageEvpIsoHHypoMaterial : Calcul et stoquage du coefficient de compressibilité tangent dans GK.setK1) et utilisation de getK() dans la MRT (pas d'update prmat en calcul de MRT → le K de prmat peut être faux en TM)
mtThixo :
- Déplacement des sources de mtThixo vers mtThixo/src (adaptation des CMakeLists en conséquence)
- Déplacement des tests thixo de apps/* vers mtThixo
- suppression du fichier Metafor_mtThixo (qui ne faisait que “from mtThixo import *” : très utile!!!)
AEJ:
- Renommage des classes pour suivre la règle de génération de nom de classe en fonction de la dérivation : “nom de classe dérivée” = “specialisation” + “nom de classe mère”
Fichiers ajoutés/supprimés
Deleting: oo_meta\mtFEMBase\Material.inl Moved : oo_meta/mtThixo/* -> oo_meta/mtThixo/src Moved : oo_meta/apps/thixo -> oo_meta/mtThixo/tests/thixo Moved : oo_meta/apps/monosMaterials/*thixo* -> oo_meta/mtThixo/tests/monosMaterials Moved : oo_meta/apps/monosMaterials2/*thixo* -> oo_meta/mtThixo/tests/monosMaterials2 Moved : oo_meta/apps/remeshing2/baseTests/filageExtrusion.py -> oo_meta/mtThixo/tests/remeshing2/baseTests/filageExtrusion.py Moved : oo_meta/apps/remeshing2/baseTests/hExtrusion.py -> oo_meta/mtThixo/tests/remeshing2/baseTests/hExtrusion.py Moved : oo_meta/apps/remeshing2/fullAuto/filageExtrusionRemeshing.py -> oo_meta/mtThixo/tests/remeshing2/fullAuto/filageExtrusionRemeshing.py Moved : oo_meta/apps/remeshing2/fullAuto/hExtrusionRemeshing.py -> oo_meta/mtThixo/tests/remeshing2/fullAuto/hExtrusionRemeshing.py Renamed : oo_meta\mtElements\aej\methods\CauchyMechAejIntegMeth.h -> CauchyAejMechIntegMeth.h Renamed : oo_meta\mtElements\aej\methods\CauchyMechAejIntegMeth.inl -> CauchyAejMechIntegMeth.inl Renamed : oo_meta\mtElements\aej\methods\Mechanical2DAejIntegrationMethods.cpp -> AejMechanical2DIntegrationMethods.cpp Renamed : oo_meta\mtElements\aej\methods\Mechanical2DAejIntegrationMethods.h -> AejMechanical2DIntegrationMethods.h Renamed : oo_meta\mtElements\aej\methods\Mechanical3DAejIntegrationMethods.cpp -> AejMechanical3DIntegrationMethods.cpp Renamed : oo_meta\mtElements\aej\methods\Mechanical3DAejIntegrationMethods.h -> AejMechanical3DIntegrationMethods.h Renamed : oo_meta\mtElements\aej\methods\MechanicalAejIntegrationMethods.h -> AejMechanicalIntegrationMethods.h Renamed : oo_meta\mtElements\aej\methods\MechanicalAejIntegrationMethods.inl -> AejMechanicalIntegrationMethods.inl Renamed : oo_meta\mtElements\aej\methods\Pk2MechAejIntegMeth.h -> Pk2AejMechIntegMeth.h Renamed : oo_meta\mtElements\aej\methods\Pk2MechAejIntegMeth.inl -> Pk2AejMechIntegMeth.inl
Tests ajoutés/supprimés
A
— Luc Papeleux 2017/08/30
1)
1.0-mcce*damageNew) * getK(
commit/2017/08_31.txt · Last modified: 2018/05/04 16:45 by boman