* TRC PROCEDUR SP204843 22/12/19 21:15:08 11531 ************************************************************************ * PROCEDURE TRC (voir TRC.notice) * - Permet de tracer un diagramme T.R.C. a partir d'un modele de * changement de phase metallurgique. * * En entrée : * ------------ * MODCP1 : Modele METALLURGIQUE * MATCP1 : Caracteristiques du Modele METALLURGIQUE * TINI : FLOTTANT donnant la temperature haute de depart * TFIN : FLOTTANT donnant la temperature basse de fin * LISTREF: LISTREEL donnant les vitesses de refroidissement a simuler ************************************************************************ * Seuil detection phases : Seuil1 = 5.D-3 ; ************************************************************************ * Pour faire des beaux DESSINS ************************************************************************ * LISTMOTS contenant les couleurs LESCOUL='MOTS' 'VIOL' 'VERT' 'CYAN' 'BRIQ' 'BOUT' 'JAUN' 'OLIV' 'ORAN' 'ROUG' 'BLEU' 'BRUN' 'CARA' 'GRIS' 'NOIR' ; * LISTMOTS contenant les marques dans DESS 'LOSA' 'ROND' 'TRID' 'TRIU' 'TRIL' 'TRIR' ; ************************************************************************ * On met le nom de la phase consommee en tete de liste : si (neg MOTPHA1 MOT1) ; si (ega phai1 MOT1) ; iter bpha1 ; fins ; LISTPHA2 = LISTPHA2 et phai1 ; fin bpha1 ; LISTPHA = LISTPHA2 ; fins ; * Initialisation des TABLES 'REPE' BOUP NBPHA ; 'FIN' BOUP ; * Par defaut la premiere phase est a 100% au debut des calculs 'REPE' BOU_VIT NBTREF ; vit = &BOU_VIT; * Declaration de la vitesse de refroidissement : en Degres/s * Calcul de la duree du refroidissement : DUREE = -1. * (TINI - TFIN) / DT_vit ; * Declaration du Temps initial : TEMPINI= 1. ; * Calcul du Temps final : TEMPFIN= TEMPINI + DUREE ; * Calcul du pas de temps en fonction de la vitesse de refroidissement : DTPS = -20. / DT_vit ; T = TINI + (DT_vit * (LTCAL - TEMPINI)); * Initialisation de CHE1 : prop de phases initiales : CHE1 = PROPini ; * Extraction des proportions de phase au Pt de Gauss : 'REPE' SURPHA NBPHA; 'FIN' SURPHA; 'REPE' CTEMP nbpas; * On recupere le temps debut de pas et le temps fin de pas : * On calcule la temperature debut de pas et la temperature fin de pas : ETAT1 = CHT0 'ET' MCHTPOI ; ETAT2 = CHT1 'ET' MCHTPOI ; * Extraction des proportions de phase au Pt de Gauss : 'REPE' BOUP NBPHA; 'FIN' BOUP; 'FIN' CTEMP; 'REPE' BOUP NBPHA; 'FIN' BOUP; EVOT_TAB.vit = EVOT ; 'FIN' BOU_VIT ; * PostTraitement : 'REPE' BOU_VIT NBTREF ; vit = &BOU_VIT ; 'REPE' BOUP NBPHA; EVO = EVO 'ET' (EVO_TAB. &BOUP .vit) ; 'FIN' BOUP; * 'DESS' EVO 'GRIL' 'TIRC' 'GRIS' 'LEGE' TL 'TITR' TITRE ; EVOT = EVOT_TAB.vit ; 'REPE' BOUP NBPHA ; NumPROP = &BOUP ; EVO = EVO_TAB.NumPROP.vit ; * Traitement de EVO 'SI' (NumPROP 'EGA' 1); * tpsS1 : temps debut disparition de PROP Seuil1 = 1.D0 - Seuil1 ; 'SINO'; * tpsS1 : temps debut apparition de PROP 'FINS'; * TS1 : T°C correspondant à tpsS1 'SI' (TS1 '>' TFIN); 'SI' (NumPROP 'EGA' 1); Seuil2 = 0.5 ; * tpsS2 : temps 50% de la PROP 'SINO'; * tpsS2 : temps fin apparition de PROP 'FINS'; * TS2 : T°C correspondant à tpsS2 'SI' (TS2 '<' TS1); TSEUIL.NumPROP.'tpsS1'= TSEUIL.NumPROP.'tpsS1' 'ET' tpsS1 ; TSEUIL.NumPROP.'tpsS2'= TSEUIL.NumPROP.'tpsS2' 'ET' tpsS2 ; TSEUIL.NumPROP.'TS1' = TSEUIL.NumPROP.'TS1' 'ET' TS1 ; TSEUIL.NumPROP.'TS2' = TSEUIL.NumPROP.'TS2' 'ET' TS2 ; 'FINS' ; 'FINS' ; 'FINS' ; 'FIN' BOUP ; 'FIN' BOU_VIT ; * Diagramme TRC avec les courbes de vitesse 'REPE' BOUP NBPHA ; 'SI' (&BOUP 'EGA' 1); 'SINO'; 'FINS'; 'FIN' BOUP ; 'REPE' BOU_VIT NBTREF ; vit = &BOU_VIT ; TL.vit ='TIRR' ; 'FIN' BOU_VIT ; * 'DESS' (TRC 'ET' EVO ) 'LOGX' 'XBOR' 1. 1E3 'GRIL' 'TIRC' 'GRIS' 'LEGE' TL 'TITR' TITRE ; * 'DESS' (TRC 'ET' EVO ) 'LOGX' 'GRIL' 'TIRC' 'GRIS' 'LEGE' TL 'TITR' TITRE ; * Diagramme TRC sans les courbes de vitesse IA = 0 ; 'REPE' BOUP NBPHA ; 'SI' (&BOUP 'EGA' 1); IA = IA + 1 ; 'SINO'; IA = IA + 1 ; IA = IA + 1 ; 'FINS'; 'FIN' BOUP ; * 'DESS' EVO 'LOGX' 'XBOR' 1. 1E3 'GRIL' 'TIRC' 'GRIS' 'LEGE' TL 'TITR' TITRE ; 'FINP' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales