Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2011:10_13

Commit 2011-10-13

Nouvelle batterie de tests des matériaux…

Modifs

Ancienne procédure

  • plein de monos dans un seul test
  • un test par “cas de charge”
  • le fait que un matériaux pouvait ne pas converger et voir le test “aller au bout”
  • si il n'allait pas au bout, rendait le debug compliqué
  • en séparant les cas de charge dans divers test, on avait des paramètres différents dans divers chargement (pas toujours justifié)
    • divers matériaux devraient être testés avec des amplitudes de tests différents
    • pas de test des méthodes d'intégration
    • des extracteurs identiques pour tout (souvent proches de 0 (e-14) ⇒ une diff significative est noyée dans la masse de diffs non significatives!!!
  • Conclusion : la procédure n'était pas fiable !!!

Nouvelle procédure “orientée objet”

  • La procédure se trouve dans le fichier : oo_meta/apps/toolbox/materialTesting.py
  • Le test de chaque matériau trouvent dans oo_meta/apps/monosMaterials2/*.py
  • 1 fichier par matériau (qui dérive de familles de matériau)
  • la procédure complète execute +- une 100 aine de tests (selon le type de matériau) passant en revue :
    • une série de chargements : Traction-Compression, Traction-Compression Pure, Traction Pure maintenue (pour voir les effet visqueux), Traction pure suivie d'une rotation rigide (validation de l'objectivité), Cisaillement (alterné), Cisaillement pur (alterné), Cisaillement pur maintenu, Cisaillement simple (pour valider Jaumann-GreenNagdii)
    • 3 dimensions (2D Etat plan de défo, 2D Axisymétrique, 3D)
    • 3 méthodes de calcul de la matrice de raideur (Analytique, numérique, semi-numérique)
    • 3 méthodes d'integration de l'élément (SRI, SRIPR, EAS)
    • 1 seul élément : Quad ou hexa (faudra étendre au triangle et tetras, …)
  • Pour chaque chargement / matériau, les extracteurs sont choisis de manière à éviter des valeurs proches de 0 (qui donnent des 1.e-14 en pagaille)
  • possibilité de facilement executer 1 test ou une série réduite de tests (voir par exemple GreenNagdii, Hill48, …)
  • Execution en interactif avec visualisation de l'évolution des grandeurs intéressantes pour le test en question (matériau & loading)

Matériaux

  • Remise en état du PythonIsotropicHardening
  • Correction de AsaroKinematicHardening & AsaroMarquisKinematicHardening
  • suppression de la dérivation “virtuelle” 'EvpIsoHDamageMoriTanakaHypoMaterial au profit de la dénomination EvpIsoHDamageHypoMaterial * Accès à la température “Point de Gauss” pour les matériaux mécaniques (pour extractors) * Ajout de qq “#ifndef SWIG Divers * Suppression d'un “ratio” des schémas conservatifs pas utilisé (dans les éléments) * Algo : les timeIntegrators renvoyent un bool (== True si l'integration a été au bout, False sinon) * TestSuiteChecker : Ajout d'une variable ShortName'' permettant de différencier les différents tests executés dans le même fichier

ToDo

  • Résoudre tous les failed (plein de tests individuels ne convergent pas !!!)
  • repasser un coup sur les YieldStress : gestion des données
  • vérifier chaque matériau “spéciaux” (bone / thixo, …) au niveau des chargements / elementType / valeur des paramètres représentatifs & leur adjoindre des TSC adaptés
  • extension au TM

Fichiers ajoutés/supprimés

 
A oo_meta/apps/toolbox/materialTesting.py
R oo_meta/mtMaterials/volumes/EvpIsoHDamageMoriTanakaHypoMaterial.h/cpp

Tests ajoutés/supprimés

A apps/monosMaterials2
A apps/monosMaterials2/__init__.py
A apps/monosMaterials2/AdamKhaleelDamage.py
A apps/monosMaterials2/ArmstrongFrederickCinHEp.py
A apps/monosMaterials2/AsaroCinHEp.py
A apps/monosMaterials2/AutesserreIsoHEp.py
A apps/monosMaterials2/ChabocheCinHEp.py
A apps/monosMaterials2/DruckerPragerCinHEp.py
A apps/monosMaterials2/EvpAnisoDamageAlvBoneRemod.py
A apps/monosMaterials2/EvpAnisoDamageBoneRemod.py
A apps/monosMaterials2/EvpAnisoDamageDummy.py
A apps/monosMaterials2/EvpIsoDamageAlvBoneRemod.py
A apps/monosMaterials2/EvpIsoDamageAlvBoneRemod2.py
A apps/monosMaterials2/EvpIsoDamageBoneRemod.py
A apps/monosMaterials2/EvpIsoDamageGeersExp.py
A apps/monosMaterials2/EvpIsoDamageGeersLin.py
A apps/monosMaterials2/EvpIsoDamageGeersPow.py
A apps/monosMaterials2/EvpIsoDamageGeersTanh.py
A apps/monosMaterials2/EvpIsoDamageLemaitre.py
A apps/monosMaterials2/FctIsoHEp.py
A apps/monosMaterials2/GoijaertsIsoHEp.py
A apps/monosMaterials2/GrainSizePerzinaPowerIH.py
A apps/monosMaterials2/GrainSizePerzinaPowerIHAFKH.py
A apps/monosMaterials2/GrainSizePerzynaPowerIH.py
A apps/monosMaterials2/GrainSizeSinHNl8.py
A apps/monosMaterials2/GrainSizeSinHPowerIH.py
A apps/monosMaterials2/GrainSizeSinHPowerIHAFKH.py
A apps/monosMaterials2/GreenNagdiiDruckerPragerCinHEp.py
A apps/monosMaterials2/GreenNagdiiHypoElastique.py
A apps/monosMaterials2/GreenNagdiiLinearIsoHEp.py
A apps/monosMaterials2/GursonDamageLinearIH.py
A apps/monosMaterials2/GursonDamageLinearIH2.py
A apps/monosMaterials2/GursonDamageNl8IH.py
A apps/monosMaterials2/GursonDamagePowerIH.py
A apps/monosMaterials2/GursonViscoDamageNl8IH.py
A apps/monosMaterials2/GursonViscoDamagePowerIH.py
A apps/monosMaterials2/Hill48IH.py
A apps/monosMaterials2/Hill48IsoIH.py
A apps/monosMaterials2/Hill48IsoPlanIH.py
A apps/monosMaterials2/Hill48v2IH.py
A apps/monosMaterials2/Hill48v2IsoIH.py
A apps/monosMaterials2/Hill48v2IsoPlanIH.py
A apps/monosMaterials2/HypoElastique.py
A apps/monosMaterials2/JohnsonCookIsoHEvp.py
A apps/monosMaterials2/KrupkowskyIsoHEp.py
A apps/monosMaterials2/LinearIsoHEp.py
A apps/monosMaterials2/MecJohnsonCookIsoHEvp.py
A apps/monosMaterials2/MooneyRivlinElastique.py
A apps/monosMaterials2/NeoHookeanElastique.py
A apps/monosMaterials2/NL8IsoHEp.py
A apps/monosMaterials2/Perzina2LinearIsoHEvp.py
A apps/monosMaterials2/PerzinaLinearIsoHEvp.py
A apps/monosMaterials2/Pk2FctOgden.py
A apps/monosMaterials2/Pk2LnElast.py
A apps/monosMaterials2/Pk2LnIhLin.py
A apps/monosMaterials2/Pk2NeoHookeanElastique.py
A apps/monosMaterials2/Pk2VeIso4H.py
A apps/monosMaterials2/Pk2VeIso6H.py
A apps/monosMaterials2/Pk2VeIsoO3H.py
A apps/monosMaterials2/Pk2VeIsoOHOH.py
A apps/monosMaterials2/Pk2VeIsoOHOO.py
A apps/monosMaterials2/PowerIsoHEp.py
A apps/monosMaterials2/PowJohnsonCookIsoHEvp.py
A apps/monosMaterials2/PythonIsoHEp.py
A apps/monosMaterials2/RambergOsgoodIsoHEp.py
A apps/monosMaterials2/Sat2IsoHEp.py
A apps/monosMaterials2/SatIsoHEp.py
A apps/monosMaterials2/SwiftIsoHEp.py
A apps/monosMaterials2/ThixoEnhanced.py
A apps/monosMaterials2/ThixoEquivalentNortonHoff.py
A apps/monosMaterials2/ThixoMicroMacro.py
A apps/monosMaterials2/ThixoNortonHoff.py
R apps/monosMaterials/elast2dAxiCis.py
R apps/monosMaterials/elast2dAxiTrac.py
R apps/monosMaterials/elast2dEpeCis.py
R apps/monosMaterials/elast2dEpeCisJaumannGreenNaghdi.py
R apps/monosMaterials/elast2dEpeTrac.py
R apps/monosMaterials/elast2dEpeTracRotOrthoGreenNaghdi.py
R apps/monosMaterials/elast2dEpeTracRotOrthoJaumann.py
R apps/monosMaterials/elast3dCis.py
R apps/monosMaterials/elast3dCisJaumannGreenNaghdi.py
R apps/monosMaterials/elast3dTrac.py
R apps/monosMaterials/evpCin2dAxiCis.py
R apps/monosMaterials/evpCin2dAxiTrac.py
R apps/monosMaterials/evpCin2dEpeCis.py
R apps/monosMaterials/evpCin2dEpeTrac.py
R apps/monosMaterials/evpCin3dCis.py
R apps/monosMaterials/evpCin3dTrac.py
R apps/monosMaterials/evpCinGs2dAxiCis.py
R apps/monosMaterials/evpCinGs2dAxiTrac.py
R apps/monosMaterials/evpCinGs2dEpeCis.py
R apps/monosMaterials/evpCinGs2dEpeTrac.py
R apps/monosMaterials/evpCinGs3dCis.py
R apps/monosMaterials/evpCinGs3dTrac.py
R apps/monosMaterials/evpCinH2dEpeCisJaumannGreenNaghdi.py
R apps/monosMaterials/evpCinH3dCisJaumannGreenNaghdi.py
R apps/monosMaterials/evpIso2dAxiCis.py
R apps/monosMaterials/evpIso2dAxiTrac.py
R apps/monosMaterials/evpIso2dEpeCis.py
R apps/monosMaterials/evpIso2dEpeTrac.py
R apps/monosMaterials/evpIso3dCis.py
R apps/monosMaterials/evpIso3dTrac.py
R apps/monosMaterials/evpIsoDamage2dAxiCis.py
R apps/monosMaterials/evpIsoDamage2dAxiCis2.py
R apps/monosMaterials/evpIsoDamage2dAxiCis3.py
R apps/monosMaterials/evpIsoDamage2dAxiComp2.py
R apps/monosMaterials/evpIsoDamage2dAxiComp2Visco.py
R apps/monosMaterials/evpIsoDamage2dAxiTrac.py
R apps/monosMaterials/evpIsoDamage2dAxiTrac2.py
R apps/monosMaterials/evpIsoDamage2dEpeCis.py
R apps/monosMaterials/evpIsoDamage2dEpeCis2.py
R apps/monosMaterials/evpIsoDamage2dEpeCis2Visco.py
R apps/monosMaterials/evpIsoDamage2dEpeCis3.py
R apps/monosMaterials/evpIsoDamage2dEpeCis3Visco.py
R apps/monosMaterials/evpIsoDamage2dEpeTrac.py
R apps/monosMaterials/evpIsoDamage2dEpeTrac2.py
R apps/monosMaterials/evpIsoDamage3dCis.py
R apps/monosMaterials/evpIsoDamage3dTrac.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod2dAxiCis.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod2dAxiTrac.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod2Pars2dAxiCis.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod2Pars3dCis.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod3dCis.py
R apps/monosMaterials/evpIsoDamageAlvBoneRemod3dTrac.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod2DAxiCis.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod2DAxiTrac.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod2DCis.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod2DTrac.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod3DCis.py
R apps/monosMaterials/evpIsoDamageAnisoAlvBoneRemod3DTrac.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod2DAxiCis.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod2DAxiTrac.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod2DCis.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod2DTrac.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod3DCis.py
R apps/monosMaterials/evpIsoDamageAnisoBoneRemod3DTrac.py
R apps/monosMaterials/evpIsoDamageAnisoDummy2DAxiCis.py
R apps/monosMaterials/evpIsoDamageAnisoDummy2DAxiTrac.py
R apps/monosMaterials/evpIsoDamageAnisoDummy2DCis.py
R apps/monosMaterials/evpIsoDamageAnisoDummy2DTrac.py
R apps/monosMaterials/evpIsoDamageAnisoDummy3DCis.py
R apps/monosMaterials/evpIsoDamageAnisoDummy3DTrac.py
R apps/monosMaterials/evpIsoDamageBoneRemod2dAxiCis.py
R apps/monosMaterials/evpIsoDamageBoneRemod2dAxiTrac.py
R apps/monosMaterials/evpIsoDamageGeers2dAxiCis.py
R apps/monosMaterials/evpIsoDamageGeers2dAxiTrac.py
R apps/monosMaterials/evpIsoDamageGeers2dEpeCis.py
R apps/monosMaterials/evpIsoDamageGeers2dEpeTrac.py
R apps/monosMaterials/evpIsoDamageGeers3dCis.py
R apps/monosMaterials/evpIsoDamageGeers3dTrac.py
R apps/monosMaterials/evpIsoDamageLemaitre2dAxiCis.py
R apps/monosMaterials/evpIsoDamageLemaitre2dAxiTrac.py
R apps/monosMaterials/evpIsoDamageLemaitre2dEpeCis.py
R apps/monosMaterials/evpIsoDamageLemaitre2dEpeTrac.py
R apps/monosMaterials/evpIsoDamageLemaitre3dCis.py
R apps/monosMaterials/evpIsoDamageLemaitre3dTrac.py
R apps/monosMaterials/evpIsoGs2dAxiCis.py
R apps/monosMaterials/evpIsoGs2dAxiTrac.py
R apps/monosMaterials/evpIsoGs2dEpeCis.py
R apps/monosMaterials/evpIsoGs2dEpeTrac.py
R apps/monosMaterials/evpIsoGs3dCis.py
R apps/monosMaterials/evpIsoGs3dTrac.py
R apps/monosMaterials/evpIsoH2dEpeCisJaumannGreenNaghdi.py
R apps/monosMaterials/evpIsoH2dEpeTracRotHill48.py
R apps/monosMaterials/evpIsoH2dEpeTracRotHill48Iso.py
R apps/monosMaterials/evpIsoH3dCisJaumannGreenNaghdi.py
R apps/monosMaterials/evpIsoH3dTracRotHill48.py
R apps/monosMaterials/evpIsoH3dTracRotHill48Iso.py
R apps/monosMaterials/evpIsoH3dTracRotHill48v2.py
R apps/monosMaterials/evpIsoV2dAxiCis.py
R apps/monosMaterials/evpIsoV2dAxiTrac.py
R apps/monosMaterials/evpIsoV2dEpeCis.py
R apps/monosMaterials/evpIsoV2dEpeTrac.py
R apps/monosMaterials/evpIsoV3dCis.py
R apps/monosMaterials/evpIsoV3dTrac.py
R apps/monosMaterials/evpThixo2dAxiCis.py
R apps/monosMaterials/evpThixo2dAxiTrac.py
R apps/monosMaterials/evpThixo2dEpeCis.py
R apps/monosMaterials/evpThixo2dEpeTrac.py
R apps/monosMaterials/evpThixo3dCis.py
R apps/monosMaterials/evpThixo3dTrac.py
R apps/monosMaterials/mooneyRivlin2dAxi.py
R apps/monosMaterials/mooneyRivlin2dEpe.py
R apps/monosMaterials/mooneyRivlin3d.py
R apps/monosMaterials/neoHookean2dAxi.py
R apps/monosMaterials/neoHookean2dEpe.py
R apps/monosMaterials/neoHookean3d1.py
R apps/monosMaterials/neoHookean3d2.py
R apps/monosMaterials/pk2Ln2dAxiCisAna.py
R apps/monosMaterials/pk2Ln2dAxiCisNum.py
R apps/monosMaterials/pk2Ln2dAxiTracAna.py
R apps/monosMaterials/pk2Ln2dAxiTracNum.py
R apps/monosMaterials/pk2Ln2dEpeCisAna.py
R apps/monosMaterials/pk2Ln2dEpeCisNum.py
R apps/monosMaterials/pk2Ln2dEpeTracAna.py
R apps/monosMaterials/pk2Ln2dEpeTracNum.py
R apps/monosMaterials/pk2Ln3dCisAna.py
R apps/monosMaterials/pk2Ln3dCisAnaCons.py
R apps/monosMaterials/pk2Ln3dCisNum.py
R apps/monosMaterials/pk2Ln3dCisNumCons.py
R apps/monosMaterials/pk2Ln3dTracAna.py
R apps/monosMaterials/pk2Ln3dTracAnaCons.py
R apps/monosMaterials/pk2Ln3dTracAnaDiss.py
R apps/monosMaterials/pk2Ln3dTracExpl.py
R apps/monosMaterials/pk2Ln3dTracNum.py
R apps/monosMaterials/pk2Ln3dTracNumCons.py
R apps/monosMaterials/pk2Ln3dTracNumDiss.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiCisAna.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiCisAnaCons.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiCisNum.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiCisNumCons.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiTracAna.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiTracAnaCons.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiTracNum.py
R apps/monosMaterials/pk2LnLinIsoH2dAxiTracNumCons.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeCisAna.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeCisAnaCons.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeCisNum.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeCisNumCons.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeTracAna.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeTracAnaCons.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeTracNum.py
R apps/monosMaterials/pk2LnLinIsoH2dEpeTracNumCons.py
R apps/monosMaterials/pk2LnLinIsoH3dCisAna.py
R apps/monosMaterials/pk2LnLinIsoH3dCisNum.py
R apps/monosMaterials/pk2LnLinIsoH3dTracAna.py
R apps/monosMaterials/pk2LnLinIsoH3dTracAnaCons.py
R apps/monosMaterials/pk2LnLinIsoH3dTracAnaDiss.py
R apps/monosMaterials/pk2LnLinIsoH3dTracNum.py
R apps/monosMaterials/pk2LnLinIsoH3dTracNumCons.py
R apps/monosMaterials/pk2LnLinIsoH3dTracNumDiss.py
R apps/monosMaterials/pk2NeoHookean2dAxiCis.py
R apps/monosMaterials/pk2NeoHookean2dAxiTrac.py
R apps/monosMaterials/pk2NeoHookean2dEpeCis.py
R apps/monosMaterials/pk2NeoHookean2dEpeTrac.py
R apps/monosMaterials/pk2NeoHookean3dCis.py
R apps/monosMaterials/pk2NeoHookean3dTrac.py
R apps/monosMaterials/veIsoHHHHHHPk23dTracAna.py
R apps/monosMaterials/veIsoHHHHHHPk23dTracNum.py
R apps/monosMaterials/veIsoHHHHPk22dEpeCisAna.py
R apps/monosMaterials/veIsoHHHHPk22dEpeCisNum.py
R apps/monosMaterials/veIsoHHHHPk23dCisAna.py
R apps/monosMaterials/veIsoHHHHPk23dCisNum.py
R apps/monosMaterials/veIsoHHHHPk23dTracAna.py
R apps/monosMaterials/veIsoHHHHPk23dTracNum.py
R apps/monosMaterials/veIsoOHHHPk23dCisAna.py
R apps/monosMaterials/veIsoOHHHPk23dCisNum.py
R apps/monosMaterials/veIsoOHHHPk23dTracAna.py
R apps/monosMaterials/veIsoOHHHPk23dTracNum.py
R apps/monosMaterials/veIsoOHOHPk23dTracAna.py
R apps/monosMaterials/veIsoOHOHPk23dTracNum.py
R apps/monosMaterials/veIsoOHOOPk23dTracAna.py
R apps/monosMaterials/veIsoOHOOPk23dTracNum.py
R apps/monosMaterials/veOgdenPk23dCisAna.py
R apps/monosMaterials/veOgdenPk23dCisNum.py
R apps/monosMaterials/veOgdenPk23dTracAna.py
R apps/monosMaterials/veOgdenPk23dTracNum.py

Luc Papeleux 2011/10/12

commit/2011/10_13.txt · Last modified: 2016/03/30 15:23 (external edit)