* fichier : test_met.dgibi
*-----------------------------------------
*Tracé des courbes (T;pA) en fonction de V
*-----------------------------------------
* Mettre GRAPH a VRAI si trace en interactif, sinon trace en Postscript
GRAPH = FAUX ;
'SI' ('NON' GRAPH) ; 'OPTION' 'TRAC' 'PSC' ; 'FINSI' ;
*------------------------------------------------------------------PRO1
DEBPROC PRO1 Vc*FLOTTANT;
OPTI DIME 3 ELEM cub8 echo 1;
*Definition du maillage
*----------------------
p0 = 0. 0. 0.;
e1 = 1. 0. 0.;
e2 = 0. 1. 0.;
e3 = 0. 0. 1.;
l1 = d 1 P0 (p0 plus e1);
s1 = l1 tran 1 e2;
v1 = s1 volu 1 tran e3;
TRACE v1;
*Definition du modèle de mélange
*-------------------------------
mm2 = mode v1 melange TMM_LMT2;
*chargement thermique et temporel
*--------------------------------
TI=830.;
TCF=1000.;
*TF=20.;
pas_T=1.;
*VR=10.;
LIST_T=PROG TI pas pas_T TCF;
LIST_TPS=PROG 0. pas (pas_T / VC) ((1/VC) * (TCF - TI));
*======================Calcul sur plusieurs pas=========================
*Création de la table
*--------------------
tm = TABLE;
tm.TEMPERATURE=TABLE;
tm.TEMPS=TABLE;
tm.PHASE1=TABLE;
tm.PHASE2=TABLE;
tm.PHASE3=TABLE;
tm.PHASE4=TABLE;
tm.PHASE5=TABLE;
tm.TPSINCUB=TABLE;
tm.Amax=TABLE;
*Valeurs initiales de la table:
*------------------------------
tm.PHASE1.0=1.;
tm.PHASE2.0=0.;
tm.PHASE3.0=0.;
tm.PHASE4.0=0.;
tm.PHASE5.0=0.;
tm.TPSINCUB.0=0.;
tm.Amax.0=0.;
tm.TEMPERATURE=LIST_T;
tm.TEMPS=LIST_TPS;
*Préparation au dépouillement:
*-----------------------------
R_PHA1=PROG tm.PHASE1.0;
R_PHA2=PROG tm.PHASE2.0;
R_PHA3=PROG tm.PHASE3.0;
R_PHA4=PROG tm.PHASE3.0;
R_PHA5=PROG tm.PHASE3.0;
R_TINC=PROG tm.TPSINCUB.0;
m=0.;
*************************BOUCLE*****************************************
REPETE i ((DIME LIST_T) - 1);
*initialisation de la temperature et du temps au cours du pas:
*-------------------------------------------------------------
chtb0=MANU chml v1 'T' (EXTR (tm.TEMPERATURE) &i);
chtb1=MANU chml v1 'T' (EXTR (tm.TEMPERATURE) (&i + 1));
tps0=MANU chml v1 'TEMP' (EXTR (tm.TEMPS) &i);
tps1=MANU chml v1 'TEMP' (EXTR (tm.TEMPS) (&i + 1));
*composantes à l'état initial
*----------------------------
camb0=MATE mm2 'PHA1' tm.PHASE1.(&i - 1) 'PHA2' tm.PHASE2.(&i - 1)
'PHA3' tm.PHASE3.(&i - 1) 'tinc' tm.TPSINCUB.(&i - 1) 'AC1' 839.
'Ka' 0.066 'm' 1.3767 'Kea' 6.787626E15 'Eea' 456380.4166 'Ms' 420.
'Ks' 0.0354244 'Ar' 0.040628 'Br' 897. 'Cr' 43.68
'Amax' tm.Amax.(&i - 1) 'n' 2.5 'TF1' 1450. 'TF2' 1500.
'PHA4' tm.PHASE4.(&i - 1) 'PHA5' tm.PHASE5.(&i - 1);
*Calcul avec l'opérateur COMP
*----------------------------
chobm = COMP mm2 (camb0 et chtb0 et tps0) (chtb1 et tps1);
tm.PHASE1.&i=EXTR (EXCO chobm 'PHA1') 'PHA1' 1 1 1;
tm.PHASE2.&i=EXTR (EXCO chobm 'PHA2') 'PHA2' 1 1 1;
tm.PHASE3.&i=EXTR (EXCO chobm 'PHA3') 'PHA3' 1 1 1;
tm.PHASE4.&i=EXTR (EXCO chobm 'PHA4') 'PHA4' 1 1 1;
tm.PHASE5.&i=EXTR (EXCO chobm 'PHA5') 'PHA5' 1 1 1;
tm.TPSINCUB.&i=EXTR (EXCO chobm 'tinc') 'tinc' 1 1 1;
tm.Amax.&i=EXTR (EXCO chobm 'Amax') 'Amax' 1 1 1;
*dépouillement:
*--------------
*proportion de phase1:
R_PHA1=R_PHA1 ET (PROG tm.PHASE1.&i);
*proportion de phase2:
R_PHA2=R_PHA2 ET (PROG tm.PHASE2.&i);
*proportion de phase3:
R_PHA3=R_PHA3 ET (PROG tm.PHASE3.&i);
*proportion de phase4:
R_PHA4=R_PHA4 ET (PROG tm.PHASE4.&i);
*proportion de phase5:
R_PHA5=R_PHA5 ET (PROG tm.PHASE5.&i);
*temps d'incubation:
R_TINC=R_TINC ET (PROG tm.TPSINCUB.&i);
*Température de début de transformation:
*---------------------------------------
SI ((m EGA 0.) ET (tm.PHASE2.&i > 0.));
m=1.;
Tdeb=EXTR (tm.TEMPERATURE) &i;
FINSI;
S_PHA2=R_PHA2;
S_T=LIST_T;
FIN i;
FINPROC S_T S_PHA2;
*----------------------------------------------------------------------
****************************V=0.1
*points expérimentaux
E_PHA2=PROG 1. 10. 20. 30. 40. 50. 60. 70. 80. 90. 99.;
E_PHA2=E_PHA2 * 1.E-2;
E_T=PROG 854.74 857.87 859.89 861.88 863.23 865.18 867.63 870.29 873.34
879.64 898.72;
*courbe expérimentale:
EVE01=EVOL VERT 'MANU' 'temperature' E_T 'PHA2' E_PHA2;
*courbe simulée:
S_T S_PHA2=PRO1 0.1;
EVS01=EVOL VERT 'MANU' 'temperature' S_T 'PHA2' S_PHA2;
****************************V=1
*points expérimentaux
E_PHA2=PROG 1. 10. 20. 30. 40. 50. 60. 70. 80. 90. 99.;
E_PHA2=E_PHA2 * 1.E-2;
E_T=PROG 867.24 872.08 874.30 876.29 877.94 879.98 882.05 884.63 888.08
895.32 918.32;
*courbe expérimentale:
EVE1=EVOL ROUG 'MANU' 'temperature' E_T 'PHA2' E_PHA2;
*courbe simulée:
S_T S_PHA2=PRO1 1.;
EVS1=EVOL ROUG 'MANU' 'temperature' S_T 'PHA2' S_PHA2;
****************************V=100
*points expérimentaux
E_PHA2=PROG 1. 10. 20. 30. 40. 50. 60. 70. 80. 90. 99.;
E_PHA2=E_PHA2 * 1.E-2;
E_T=PROG 897.57 912.98 918.93 922.92 925.78 928.49 931.40 933.81 938.40
944.56 951.78;
*courbe expérimentale:
EVE100=EVOL BLEU 'MANU' 'temperature' E_T 'PHA2' E_PHA2;
*courbe simulée:
S_T S_PHA2=PRO1 100.;
EVS100=EVOL BLEU 'MANU' 'temperature' S_T 'PHA2' S_PHA2;
*Tracé des courbes:
tabdess = table;
tabdess . 1 = 'MARQ TRIA NOLI' ;
tabdess . 2 = 'MARQ LOSA NOLI' ;
tabdess . 3 = 'MARQ CARR NOLI' ;
tabdess . 'TITRE' = table ;
tabdess . 'TITRE' . 1 = MOT 'courbe expérimentale V=0.1°C/s' ;
tabdess . 'TITRE' . 2 = MOT 'courbe expérimentale V=1°C/s' ;
tabdess . 'TITRE' . 3 = MOT 'courbe expérimentale V=100°C/s' ;
tabdess . 'TITRE' . 4 = MOT 'courbe simulée V=0.1°C/s' ;
tabdess . 'TITRE' . 5 = MOT 'courbe simulée V=1°C/s' ;
tabdess . 'TITRE' . 6 = MOT 'courbe simulée V=100°C/s' ;
DESS (EVE01 ET EVE1 ET EVE100 ET EVS01 ET EVS1 ET EVS100) LEGE
TITX 'temperature' TITY 'pA' tabdess;
FIN;
© Cast3M 2003 - All rights reserved.
Disclaimer