Table of Contents
Commit 2008-09-11
Modifs
Baconneries
Suite au commit de Luc de création de la géométrie par objet et aux conseils d'écriture de Romain (MERCI ROMAIN!!!), le gros cas test de ma thèse merdouillait sournoisement quand on le lançait avec Metafor. Mais il fonctionnait avec la batterie (ce qui explique que Luc n'avait rien vu). Pour une raison que je n'ai pas trop comprise, c'est un problème de mémoire de Python. En fait, ce qui fait exploser ladite mémoire, ce sont les boucles de dat2py.py
du style:
outfile.write(indent+'topology.define('+num+',CELL_HEXA, groupset('+att+'),[tPointSet(i) for i in (') outfile.write(numNodes[topo[2]]+','+numNodes[topo[3]]+','+numNodes[topo[4]]+','+numNodes[topo[5]]+',') outfile.write(numNodes[topo[7]]+','+numNodes[topo[8]]+','+numNodes[topo[9]]+','+numNodes[topo[10]]+')])\n')
ce qui donne par exemple dans le fichier machin_fdb.py
:
topology.define(169,CELL_HEXA, groupset(99),[tPointSet(i) for i in (1,380,563,398,424,565,641,603)])
Je les ai donc supprimées, c'est moins beau au niveau des écritures, mais au moins, ça ne plante plus. On a maintenant dans dat2py.py
:
outfile.write(indent+'topo.define('+num+',CELL_HEXA, gset('+att+'),') outfile.write('[tp('+numNodes[topo[2]]+'),tp('+numNodes[topo[3]]+'),tp('+numNodes[topo[4]]+'),tp('+numNodes[topo[5]]+'),') outfile.write('tp('+numNodes[topo[7]]+'),tp('+numNodes[topo[8]]+'),tp('+numNodes[topo[9]]+'),tp('+numNodes[topo[10]]+')])\n')
ce qui donne par exemple dans le fichier machin_fdb.py
:
topo.define(169,CELL_HEXA, gset(99),[tp(1),tp(380),tp(563),tp(398),tp(424),tp(565),tp(641),tp(603)])
La solution ultime serait de ne plus créer de fichier intermédiaire machin_fdb.py
, mais d'exécuter directement les commandes Metafor. Ce qui est faisable si le domaine existe. Ainsi, plus de problème de mémoire possible.
Autres
Petite correction dans les éléments de flux et de convection thermiques qui demandaient un matériau dans le propelem
(ça ne s'invente pas!)
— Pierre-Paul Jeunechamps 2008/09/11 09:04