1 : C T4M SOURCE KICH 09/09/11 21:18:22 6505 2 : C t4m SOURCE G-M ROUX CHAUFFAGE+REFROIDISSEMENT V6 3 : SUBROUTINE t4m(iwrk52,iwrk53,iele,igau) 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8(A-H,O-Z) 6 : C 7 : -INC CCOPTIO 8 : -INC CCHAMP 9 : -INC DECHE 10 : 11 : 12 : wrk52 = iwrk52 13 : wrk53 = iwrk53 14 : C>>>>>>Initialisations des champs 15 : T0 = ture0(1) 16 : T1 = turef(1) 17 : Tm=(T0 + T1) / 2. 18 : TPS0=TEMP0 19 : TPS1=TEMPF 20 : PHA10 = valma0(1) 21 : PHA20 = valma0(2) 22 : PHA30 = valma0(3) 23 : TINC0 = valma0(4) 24 : PHA40 = valma0(19) 25 : XMATF(1)=PHA10 26 : XMATF(2)=PHA20 27 : XMATF(3)=PHA30 28 : XMATF(4)=TINC0 29 : XMATF(5)=0. 30 : XMATF(19)=PHA40 31 : XMATF(15)=valma0(15) 32 : C>>>>>>Initialisation des constantes 33 : PARR_Ar=valma0(12) 34 : PARR_Br=valma0(13) 35 : PARR_Cr=valma0(14) 36 : AC1=valma0(5) 37 : PARJMA_k=valma0(6) 38 : PARJMA_m=valma0(7) 39 : PARKM_ms=valma0(10) 40 : PARKM_ks=valma0(11) 41 : PARHB_k=valma0(8) 42 : PARHB_e=valma0(9) 43 : PARHB_n=valma0(16) 44 : TF1=valma0(17) 45 : TF2=valma0(18) 46 : C 47 : C>>>>>germination de la phase austénitique 48 : IF (Tm.GT.AC1.AND.TINC0.LT.1.) THEN 49 : t_inc1= Tm - AC1 50 : t_inc2 = (PARR_Cr / t_inc1) 51 : t_inc3 = EXP(t_inc2) 52 : t_inc4 = PARR_Br - Tm 53 : IF (t_inc4.LE.0.) THEN 54 : XMATF(4)=1. 55 : ELSE 56 : t_inc=t_inc3 * t_inc4 * PARR_Ar 57 : TINC1 = TINC0 + ((TPS1 - TPS0) / t_inc) 58 : XMATF(4)=TINC1 59 : ENDIF 60 : IF (TINC1.GT.1) THEN 61 : XMATF(4) = 1. 62 : ENDIF 63 : ENDIF 64 : C ->si la germination est terminé, tinc=1 65 : IF (Tm.GE.AC1.AND.TINC0.EQ.1.OR.PHA20.GT.0) THEN 66 : XMATF(4) = 1. 67 : ENDIF 68 : C ->si Tsi T>Assat 73 : IF (Tm.GT.PARR_Br) THEN 74 : XMATF(4) = 1. 75 : ENDIF 76 : C 77 : C>>>>>>croissance de la phase austénitique (méthode de Heun) 78 : IF (T1.GT.AC1.AND.XMATF(4).EQ.1.AND.PHA20.LT.1) THEN 79 : IF (T1.LE.1000) THEN 80 : C ->on passes les caractéristiques thermiques en Kelvin 81 : AC1=AC1 + 273. 82 : T1b=T1 + 273. 83 : T0b=T0 + 273. 84 : C ->calcul de Teq(t=ti) 85 : Teq_11 = AC1 * PARJMA_k 86 : Teq_12 = 1. - PHA20 87 : Teq_13 = LOG(Teq_12) 88 : Teq_14 = Teq_11 + ((-1. * Teq_13) ** (1. / PARJMA_m)) 89 : Teq_1 = (Teq_14 / PARJMA_k) 90 : C ->calcul de dyA/dt(t=ti) 91 : dPHA2_1_1 = (-1. * PARHB_e) / (8.31 * T0b) 92 : dPHA2_1_2 = PARHB_k * EXP(dPHA2_1_1) 93 : dPHA2_1_3=ABS(T0b - Teq_1) 94 : dPHA2_1 = dPHA2_1_2 * (dPHA2_1_3 ** PARHB_n) * (1. - PHA20) 95 : C ->calcul de yA(t=ti) 96 : PHA2_1=PHA20 + dPHA2_1 * (TPS1 - TPS0) 97 : IF (PHA2_1.GT.9.999d-01) THEN 98 : PHA21=1. 99 : ELSE 100 : C ->calcul de Teq(t=ti+1) 101 : Teq_21 = AC1 * PARJMA_k 102 : Teq_22 = 1. - PHA2_1 103 : Teq_23 = LOG(Teq_22) 104 : Teq_24 = Teq_21 + ((-1. * Teq_23) ** (1. / PARJMA_m)) 105 : Teq_2 = (Teq_24 / PARJMA_K) 106 : C ->calcul de dyA/dt(t=ti+1) 107 : dPHA2_2_1 = (-1. * PARHB_e) / (8.31 * T1b) 108 : dPHA2_2_2 = PARHB_k * EXP(dPHA2_2_1) 109 : dPHA2_2_3=ABS(T1b - Teq_2) 110 : dPHA2_2 = dPHA2_2_2 * (dPHA2_2_3 ** PARHB_n) * (1. - PHA2_1) 111 : C ->calcul de yA(t)(ti+1) 112 : PHA21=PHA20 + ( (dPHA2_1 + dPHA2_2) / 2.)*(TPS1 - TPS0) 113 : IF (PHA21.GT.9.9d-01) THEN 114 : PHA21=1. 115 : ENDIF 116 : ENDIF 117 : IF (PHA30.GT.0.AND.PHA10.GT.0.) THEN 118 : C ->calcul des nouvelles phases si martensite+martensite revenue 119 : PHA11=PHA10-(PHA21-PHA20)/2. 120 : PHA31=PHA30-(PHA21-PHA20)/2. 121 : IF (PHA11.GT.0.) THEN 122 : PHA11=0. 123 : PHA31=1 - PHA21 124 : ENDIF 125 : IF (PHA31.GT.0.) THEN 126 : PHA31=0. 127 : PHA11=1 - PHA21 128 : ENDIF 129 : XMATF(2)=PHA21 130 : XMATF(1)=PHA11 131 : XMATF(3)=PHA31 132 : XMATF(15)=PHA21 133 : ELSE 134 : IF (PHA10.GT.0.) THEN 135 : C ->calcul des nouvelles phases si martensite revenue 136 : XMATF(2)=PHA21 137 : XMATF(1)=1. - PHA21 138 : XMATF(3)=0. 139 : XMATF(15)=PHA21 140 : ELSE 141 : C ->calcul des nouvelles phases si martensite 142 : XMATF(2)=PHA21 143 : XMATF(3)=1. - PHA21 144 : XMATF(1)=0. 145 : XMATF(15)=PHA21 146 : ENDIF 147 : ENDIF 148 : ENDIF 149 : ENDIF 150 : IF (T1.GT.1000.AND.T1.LT.TF1) THEN 151 : XMATF(2)=1. 152 : XMATF(3)=0. 153 : XMATF(1)=0. 154 : XMATF(15)=1. 155 : ENDIF 156 : C>>>>>transformation liquide-solide(loi linéaire) 157 : IF (T1.GE.TF1.AND.T1.LE.TF2) THEN 158 : XMATF(19)=(T1 - TF1) * (1.d0 / (TF2 - TF1)) 159 : XMATF(2)=1.d0 - XMATF(19) 160 : XMATF(1)=0. 161 : XMATF(3)=0. 162 : XMATF(15)=1. 163 : ENDIF 164 : IF (T1.GE.TF2) THEN 165 : XMATF(19)=1. 166 : XMATF(2)=0. 167 : XMATF(1)=0. 168 : XMATF(15)=1. 169 : XMATF(4)=1. 170 : XMATF(3)=0. 171 : ENDIF 172 : IF (T1.LT.TF1.AND.PHA40.GT.0.) THEN 173 : XMATF(19)=0. 174 : XMATF(2)=1. 175 : XMATF(1)=0. 176 : XMATF(15)=1. 177 : XMATF(3)=0. 178 : ENDIF 179 : C 180 : C>>>>>transformation martensitique 181 : IF (T1.LT.T0.AND.PHA20.GT.0.AND.T1.LE.PARKM_ms) THEN 182 : PHA31_1 = -1. * PARKM_ks *(PARKM_ms - T1) 183 : PHA31_2 = EXP(PHA31_1) 184 : PHA31_3=XMATF(15) * (1-PHA31_2) 185 : PHA11=PHA10 186 : PHA21=XMATF(15) - PHA31_3 187 : PHA31=1 - (PHA11 + PHA21) 188 : IF (PHA21.LT.1.d-03) THEN 189 : PHA21=0. 190 : PHA11=PHA10 191 : PHA31=1 - PHA11 192 : XMATF(19)=0. 193 : ENDIF 194 : C ->sorties 195 : XMATF(1)=PHA11 196 : XMATF(2)=PHA21 197 : XMATF(3)=PHA31 198 : ENDIF 199 : C 200 : C>>>>>transformation martensite revenue 201 : XMATF(20)=0.; 202 : C 203 : XMATF(5)=valma0(5) 204 : XMATF(6)=valma0(6) 205 : XMATF(7)=valma0(7) 206 : XMATF(8)=valma0(8) 207 : XMATF(9)=valma0(9) 208 : XMATF(10)=valma0(10) 209 : XMATF(11)=valma0(11) 210 : XMATF(12)=valma0(12) 211 : XMATF(13)=valma0(13) 212 : XMATF(14)=valma0(14) 213 : XMATF(16)=valma0(16) 214 : XMATF(17)=valma0(17) 215 : XMATF(18)=valma0(18) 216 : C 217 : RETURN 218 : END 219 : 220 : 221 : 222 : 223 : 224 : 225 : 226 :
© Cast3M 2003 - All rights reserved.
Disclaimer