April 14, 2004  
 

 

Un chti exemple:

Je veux avoir accès sous matlab à la contrainte j2 et la force le long de la base du magnifique cas-test "cont2":

dans cont2.py, je définis:

curves.defineTime(1); # time
curves.setName(1,'time');

curves.define_m(2, CURVE_PO, 1, GF|I2|TY,None); # None car mis à "SumOperator.getInstance() par défaut!
curves.setName(2,'forceOnBaseLine_Y');

curves.define(3, CURVE_PO, 1, SMOOTH_J2);
curves.setName(3,'j2OnBaseLine');

fm_j2OnBaseLine.m est créé. Le problème est que les noeuds ne sont pas ordonnés. On va les ordonner rapidos. Pour ça, on va extraire du fac 0 (la config initiale), les coords X des noeuds de la ligne. le script python est le suivant:

from toolbox.utilities import *
import cont2
loadFac('cont2',0)

curves = cont2.metafor.getValuesManager()

curves.define(99, CURVE_PO, 1, TX|AB, None);
curves.setName(99, 'x')
curves.fillNow(99)
curves.toMatlab(99)

après l'exécution de ce script (via import script.py), je me retrouve avec un fichier fm_x.m.

Sous Matlab maintenant:

fm_x
fm_j2OnBaseLine
[xs,i] = sort(j2OnBaseLine(1,:));
mesh(j2OnBaseLine(:,i))

Fichiers ajoutés:

 

 

Back to Metafor web server
created :April 7, 2004   modified : April 14, 2004
contact : r_boman_AT_yahoo.fr