commit:2007:08_14
Table of Contents
Commit 2007-08-14
Modifs
Algorithmes explicite thermomécanique
- Création d'un algorithme explicite pseudo-thermomécanique. Pourquoi pseudo? Le problème mécanique est résolu par un schéma explicite traditionnel mais l'équation de la chaleur n'est pas résolue dans son intégralité : L'élévation de température est calculée seulement en tenant compte de la dissipation viscoplastique. On néglige donc la conduction thermique et la dissipation thermo-élastique et on ne sait pas introduire de conditions aux limites thermiques. L'élévation de température est donc calculée au niveau du matériau. Avantage de cette méthode : Ca évite les problèmes de stabilité d'un schéma explicite thermique (dépendant de la taille de maille au carré et non de la taille de maille comme dans le cas explicite mécanique pur).
- Comment introduire le schéma explicite thermomécanique dans un cas-test?
- On introduit
metafor.setIntegerData(MDE_NDYN, …)
(… = 1, 3 ou 6 selon que l'on fait de la différence centrée, de l'explicite Chung-Hulbert ou une Nestorerie) - On utilise un matériau de type
TmEvpIsoHHypoMaterial
avec des éléments de volume thermomécaniquesTmVolume2DElement
ouTmVolume3DElement
. - On introduit une sécurité sur le pas de temps :
tsm.setExplicitTimeStepSecurity(0.9)
. - On n'introduit pas de schéma étagé!
metafor.setIntegerData(MDE_NDYT, …)
- Pour l'application d'une température initiale non nulle et pour pouvoir visualiser la température, il faut utiliser des éléments de type thermomécanique (
TmVolume2DElement
ouTmVolume3DElement
). Petit inconvénient : seule la température absolue est visible, la différence de température n'est pas visible (mais c'est un moindre mal, je trouve).
- Effet de bord : il a fallu rajouter une fonction
getNumberOfDofsM()
dans les éléments pour que le calcul des forces élastiques dans le calcul du pas de temps critique explicite ne calcule que sur la partie mécanique.
- Que manque-t-il à Metafor pour avoir un schéma explicite thermique? Que le split Thermomécanique soit fait avec des vrais éléments thermiques purs.
- Ajout de cas-tests pour tester ledit schéma explicite.
Batterie
- Corrections de
apps.imp.taylor3dSimo
qui utilisait des données d'un mauvais matériau (cuivre d'un côté, acier de l'autre). - Ajout de noms aux extracteurs dans les cas-tests de shell et membrane.
- Uniformisation des noms d'extracteurs (merci PowerGrep).
- Correction dans certains extracteurs (on regardait des énergies dissipées ou des potentiels internes sur des sides en 3D dans certaines barres de Taylor!).
- Création de fonctions pour les barres de Taylor pour bouger tous les copier-coller d'un cas à l'autre.
- Ajout d'une dépendance du module de Young dans les tests de striction (c'était jamais testé!).
- Suppression de fonctions d'évolution inutiles dans certains cas-tests (notamment les barres de Taylor).
- Ajout des cas
apps.iso.hopkinsonGeo2
,apps.iso.taylor2dImpTm
etapps.iso.taylor2dExpTm
et modification deapps.iso.tractionGrandeVitesse
pour mettre les cas-tests de ma future thèse dans la batterie. - Correction dans les tmStriction : utilisation d'éléments avec report de pression (on est en axisymétrique!)
Autres
- Matrice de raideur analytique pour l'endommagement continu.
- Définition de
InternalField
au niveau du matériau thermomec (y'en avait pas!). - Uniformisation des messages d'erreur dans les
MaterialLaws
. Maintenant, chaque fois qu'un paramètre d'une loi matériau manque, on renvoie unFATAL_ERROR
et tous ces messages d'erreur contiennent le nom de la loi où il y a une erreur (par exempleLinearIsotropicHardening
) et le nom du paramètre manquant (par exempleIH_H
) - Suppressions des
include mtGlobal.h
inutiles et ajout des#include mtMachin.h
ad hoc (merci PowerGrep). ThermalMaterial
: suppression de tests inutiles sur l'existence de paramètres (on renvoie de toute façon unFATAL_ERROR
si ils ne sont pas là).TmConvection2DMetaElement.cpp
devientTmConvection2DElement.cpp
(découvert un peu par hasard!)
Plaisir des yeux
Fichiers ajoutés/supprimés
apps/iso/hopkinsonJCGeo1.py Renamed apps/iso/hopkinsonJCGeo2.py Added apps/iso/hopkinsonZAGeo1.py Renamed apps/iso/hopkinsonZAGeo2.py Added apps/iso/taylor2dExpTm.py Added apps/iso/taylor2dImpTm.py Added apps/monosMaterials/tmEvpIsoFast2dAxiImp.py Added apps/monosMaterials/tmEvpIsoFast2dAxiExp.py Added apps/monosMaterials/tmEvpIsoFast2dEpeImp.py Added apps/monosMaterials/tmEvpIsoFast2dEpeExp.py Added apps/monosMaterials/tmEvpIsoFast3dImp.py Added apps/monosMaterials/tmEvpIsoFast3dExp.py Added apps/toolbox/taylorBar.py Added apps/toolbox/hopkinson.py Added mtElements/boundaries/Tm2Convection2DElement.cpp Renamed mtFEMBase/Property.cpp/h Deleted
— Pierre-Paul Jeunechamps 2007/08/14 09:45
commit/2007/08_14.txt · Last modified: 2016/03/30 15:23 by 127.0.0.1