Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2017:08_31

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