Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2007:05_25



Commit 2007-05-25

Modifs

Element ''Damping''

  • J'ai créé un nouvel élément ponctuel d'amortissement. Il est grandement inspiré de l'élément de ressort de Ludo mais il a l'avantage de n'avoir qu'un seul noeud comme support (la largeur de bande de la matrice reste OK). Le but de cet élément est d'amortir les oscillations qui apparaissent dans les phases de retour élastique en planage. Ci dessous un calcul de retour élastique après planage d'une tôle en acier.

<html> <table width=“100%” border=“0”>

<tr>

<td>

<embed width=“320” height=“240” src=“http://metafor.ltas.ulg.ac.be/oldsite/flv/flvplayer.swf?file=http://metafor.ltas.ulg.ac.be/oldsite/flv/pilote2d-chung.flv” quality=“high” type=“application/x-shockwave-flash” />

</td><td>

<embed width=“320” height=“240” src=“http://metafor.ltas.ulg.ac.be/oldsite/flv/flvplayer.swf?file=http://metafor.ltas.ulg.ac.be/oldsite/flv/pilote2d-newmark.flv” quality=“high” type=“application/x-shockwave-flash” />

</td><td>

<embed width=“320” height=“240” src=“http://metafor.ltas.ulg.ac.be/oldsite/flv/flvplayer.swf?file=http://metafor.ltas.ulg.ac.be/oldsite/flv/pilote2d-damp.flv” quality=“high” type=“application/x-shockwave-flash” />

</td> </tr> <tr> <td>

Chung Hulbert

</td> <td>

Newmark dissipatif

</td> <td>

CH + nouvel élément

</td> </tr> </table> </html>

Nouveau fac

  • Gestion correcte des exceptions fatales dans le thread graphique (surcharge de QApplication::notify). Ceci permet de faire planter “proprement” Metafor lors d'une erreur de lecture dans la config VizWin.
  • Utilisation de la nouvelle sérialisation pour la config VizWin.
  • Suppression du code IoObject maintenant que la nouvelle sérialisation semble fonctionner.

toolbox.utilities

  • Nettoyage de toolbox.utilities: suppression des fonctions inutiles (getPath, getRelativePath, etc).
  • Possibilité de spécifier un Domain au lieu du texte (utile pour le restart par exemple).
import apps.qs.cont2
domain = apps.qs.cont2.getDomain()
meta(domain)
  • meta, loadFac, vizu, browse, … gardent en mémoire le dernier domaine chargé. Si un nouveau n'est pas spécifié, ils utilisent celui-là:
loadFac('apps.qs.cont2')
vizu()
browse()
  • Déplacement des routines “python pur” dans un nouveau module nommé toolbox.pyutils. Ceci permet d'utiliser ces fonctions génériques hors contexte Metafor (utile pour la batterie python lancée en “python pur”).
  • Suppression de la fonction domain.setUserName(). Seul le répertoire de destination peut être spécifié par setDirName. Le username a été supprimé pour éviter la confusion. Il faut donc spécifier un Working Directory par setDirName si on veut changer ce paramètre. Cette possibilité est utilisée dans les cas apps.complex

Courbes ''DataVector''

  • Suppression du Domain dans OnFileDataVector (remplacement par le répertoire de destination des fichiers)
  • Les classes OnFileDataVector et OnFileDataMatrix (ainsi que les classes similaires DataVectorbase, DataVectorSet et InMemoryDataVector) ont été déplacées dans mtKernel puisqu'elles ne dépendent plus de Domain.

Utilitaires OS => classe ''PythonUtils''

  • Réécriture du code impliquant l'OS en python. Il en découle une nouvelle classe nommée PythonUtils contenant des méthodes statiques:
    • PythonUtils::mkDir(dir): crée un répertoire (récursif)
    • PythonUtils::joinPath(dir): utilise os.path.join pour joindre 2 strings venant d'un path (utilise des backslashs sous Windows et des slashs sous Unix).
  • Les fichiers de cette classe (anciennement dans mtFEM) ont été déplacés dans mtGlobal. Conséquences:
    • mtFEM ne dépend plus de python :!:
    • mtGlobal dépend de python. :!:

Batterie

  • Ajout de la commande rerun qui est un raccourci vers clean+run.
battery.py rerun apps.qs.cont2
  • Possibilité de spécifier des modules par leur nom de fichier (permet d'utiliser le DOSKEY). La commande précédente peut donc s'écrire:
battery.py rerun apps\qs\cont2.py

ou, plus compliqué (lance tous les tests dans copraProfiling5 de oo_nda en gardant les facs):

battery.py -keep rerun ..\oo_nda\copraImport\tests\copraProfiling5

Fichiers ajoutés/supprimés

File	Text status	Remote text status	Remote property status	Lock	Lock comment
mtElements/mechanisms/DampingElement.cpp	added	 	 		
mtGlobal/BArchive.cpp	added	 	 		
mtGlobal/BZArchive.cpp	added	 	 		
mtGlobal/PythonUtils.cpp	added	 	 		
mtGlobal/TextArchive.cpp	added	 	 		
mtKernel/DataVectorBase.cpp	added (+)	 	 		
mtKernel/DataVectorSet.cpp	added (+)	 	 		
mtKernel/InMemoryDataVector.cpp	added (+)	 	 		
mtKernel/OnFileDataMatrix.cpp	added (+)	 	 		
mtKernel/OnFileDataVector.cpp	added (+)	 	 		
mtMaterials/mechanisms/DampingGpState.cpp	added	 	 		
mtMaterials/mechanisms/DampingMaterial.cpp	added	 	 		
mtElements/mechanisms/DampingElement.h	added	 	 		
mtElements/mechanisms/DampingElShcuts.h	added	 	 		
mtGlobal/BArchive.h	added	 	 		
mtGlobal/BZArchive.h	added	 	 		
mtGlobal/PythonUtils.h	added	 	 		
mtGlobal/TextArchive.h	added	 	 		
mtKernel/DataObserver.h	added (+)	 	 		
mtKernel/DataVectorBase.h	added (+)	 	 		
mtKernel/DataVectorSet.h	added (+)	 	 		
mtKernel/InMemoryDataVector.h	added (+)	 	 		
mtKernel/OnFileDataMatrix.h	added (+)	 	 		
mtKernel/OnFileDataVector.h	added (+)	 	 		
mtMaterials/mechanisms/DampingGpState.h	added	 	 		
mtMaterials/mechanisms/DampingMaterial.h	added	 	 		
mtElements/mechanisms/DampingElement.inl	added	 	 		
mtElements/mechanisms/DampingElShcuts.inl	added	 	 		
mtMaterials/mechanisms/DampingGpState.inl	added	 	 		
mtGlobal/pythonUtils.cpp	missing (+)	 	 		
mtGlobal/pythonUtils.h	missing (+)	 	 		
apps/complex/Makefile	deleted	 	 		
mtFEM/DataVectorBase.cpp	deleted	 	 		
mtFEM/DataVectorSet.cpp	deleted	 	 		
mtFEM/InMemoryDataVector.cpp	deleted	 	 		
mtFEM/IoElementSet.cpp	deleted	 	 		
mtFEM/OnFileDataMatrix.cpp	deleted	 	 		
mtFEM/OnFileDataVector.cpp	deleted	 	 		
mtFEM/pythonUtils.cpp	deleted	 	 		
mtFEM/UcdExporter.cpp	deleted	 	 		
mtGlobal/IoObject.cpp	deleted	 	 		
mtKernel/IoDBSet.cpp	deleted	 	 		
mtKernel/IoDBSet3.cpp	deleted	 	 		
mtKernel/IoLock.cpp	deleted	 	 		
mtMath/IoMatr23.cpp	deleted	 	 		
mtMath/IoMatsym23.cpp	deleted	 	 		
mtMath/IoVect23.cpp	deleted	 	 		
mtFEM/DataObserver.h	deleted	 	 		
mtFEM/DataVectorBase.h	deleted	 	 		
mtFEM/DataVectorSet.h	deleted	 	 		
mtFEM/InMemoryDataVector.h	deleted	 	 		
mtFEM/IoElementSet.h	deleted	 	 		
mtFEM/OnFileDataMatrix.h	deleted	 	 		
mtFEM/OnFileDataVector.h	deleted	 	 		
mtFEM/pythonUtils.h	deleted	 	 		
mtFEM/UcdExporter.h	deleted	 	 		
mtGlobal/IoObject.h	deleted	 	 		
mtKernel/IoDBSet.h	deleted	 	 		
mtKernel/IoDBSet3.h	deleted	 	 		
mtKernel/IoLock.h	deleted	 	 		
mtMath/IoMatr23.h	deleted	 	 		
mtMath/IoMatsym23.h	deleted	 	 		
mtMath/IoVect23.h	deleted	 	 		

Romain BOMAN 2007/05/25 09:35

commit/2007/05_25.txt · Last modified: 2016/03/30 15:23 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki