1 : C ECOREV SOURCE STRU 08/12/22 21:15:11 6246 2 : c Sous-Programme du module MISTRAL0 3 : C -------------------------------------------------------------------------- 4 : SUBROUTINE ECOREV (S,R,EPS,TT,FI,PSI, PERV, VERV) 5 : C -------------------------------------------------------------------------- 6 : C Calcul (pour S >= R) de la vitesse VERV 7 : C d'ecoulement, de restauration ou de vieillissement, 8 : C homogene a une vitesse de deformation ou une derivee de contrainte, 9 : C en fonction : 10 : C - d'une contrainte ou deformation S positive ou nulle, 11 : C - d'une contrainte seuil R positive ou nulle, 12 : C - d'une deformation EPS positive ou nulle, 13 : C - de la temperature TT, 14 : C - du flux de neutrons rapides FI, 15 : C - de la variable de durcissement du a l'irradiation PSI, 16 : C et des parametres transmis dans PERV. 17 : C -------------------------------------------------------------------------- 18 : IMPLICIT INTEGER (I-N) 19 : IMPLICIT REAL*8 (A-H, O-Z) 20 : PARAMETER ( NPTTM = 5 , NPPSIM = 6 ) 21 : PARAMETER ( NPEDIM = 13+6*NPTTM+NPPSIM ) 22 : c (NPEDIM = 49) 23 : PARAMETER ( NVM=2 , NPATDM = 14 , NPFIM = 9 ) 24 : DIMENSION PERV(1:*) 25 : c (NPERVM = 11+NVM*(NPEDIM+2*NPATDM+NPFIM+11)) 26 : DIMENSION PECDI(1:NPEDIM),PATDI(1:NPATDM),PFI(1:NPFIM) 27 : DIMENSION V(1:NVM) 28 : C ------------------------------------------------------------------ 29 : LEP = NINT(PERV(1)) 30 : NPERV = 1 31 : IF (LEP.GE.99) THEN 32 : LEPS = LEP-100 33 : NPERV = NPERV+1 34 : VM = PERV(NPERV) 35 : ELSE 36 : LEPS = LEP 37 : END IF 38 : IF (LEPS.EQ.-1) THEN 39 : NV = 1 40 : ELSE IF (LEPS.EQ.1) THEN 41 : NV = 1 42 : EPS0 = PERV(NPERV+1) 43 : NPERV = NPERV+2 44 : P1 = PERV(NPERV) 45 : ELSE IF (LEPS.EQ.2) THEN 46 : NV = 1 47 : NPERV = NPERV+1 48 : LVTAU = NINT(PERV(NPERV)) 49 : IF (LVTAU.EQ.0) THEN 50 : NPERV = NPERV+1 51 : TAU = PERV(NPERV) 52 : ELSE IF (LVTAU.EQ.1) THEN 53 : TAU = PERV(NPERV+1)*EXP(PERV(NPERV+2)/TT) 54 : & *(PERV(NPERV+3)*S+PERV(NPERV+5))**PERV(NPERV+4) 55 : NPERV = NPERV+5 56 : END IF 57 : ELSE IF ((LEPS.EQ.3).OR.(LEPS.EQ.4)) THEN 58 : NV = 2 59 : NPERV = NPERV+1 60 : LVEC = NINT(PERV(NPERV)) 61 : IF (LVEC.EQ.0) THEN 62 : NPERV = NPERV+1 63 : EPSC = PERV(NPERV) 64 : ELSE IF (LVEC.EQ.1) THEN 65 : EPSC = PERV(NPERV+1)*EXP(-PERV(NPERV+2)/TT) 66 : & *TANH(PERV(NPERV+3)*S+PERV(NPERV+4)) 67 : NPERV = NPERV+4 68 : ELSE IF (LVEC.EQ.2) THEN 69 : EPSC = PERV(NPERV+1)*EXP(-PERV(NPERV+2)/TT) 70 : & *(PERV(NPERV+3)*S+PERV(NPERV+5))**PERV(NPERV+4) 71 : NPERV = NPERV+5 72 : ELSE 73 : EPSC = PERV(NPERV+1)*EXP(-PERV(NPERV+2)/TT) 74 : & *SINH(PERV(NPERV+3)*S+PERV(NPERV+4)) 75 : NPERV = NPERV+4 76 : END IF 77 : IF (LEPS.EQ.4) THEN 78 : EPS0 = PERV(NPERV+1) 79 : P1 = PERV(NPERV+2) 80 : NPERV = NPERV+3 81 : P2 = PERV(NPERV) 82 : FACT = EXP(-EPS/EPSC) 83 : END IF 84 : ELSE IF (LEPS.EQ.5) THEN 85 : NV = 1 86 : EPS0 = PERV(NPERV+1) 87 : P1 = (PERV(NPERV+2)+PERV(NPERV+3)*PSI)**PERV(NPERV+4) 88 : NPERV = NPERV+4 89 : ELSE IF (LEPS.EQ.0) THEN 90 : VERV = 0. 91 : RETURN 92 : END IF 93 : C ------------------------------------------------------------------ 94 : DO IV = 1,NV 95 : C ------------ 96 : C Calcul de VS 97 : C 98 : NPERV = NPERV+1 99 : LVS = NINT(PERV(NPERV)) 100 : IF (LVS.EQ.0) THEN 101 : VS = 1. 102 : ELSE 103 : IF (LVS.LE.7) THEN 104 : EM = PERV(NPERV+1)*EXP(PERV(NPERV+2)/TT) 105 : ELSE IF (LVS.EQ.8) THEN 106 : EM1 = PERV(NPERV+1) 107 : EM2 = PERV(NPERV+2) 108 : END IF 109 : NPERV = NPERV+3 110 : KSC = NINT(PERV(NPERV+1)) 111 : IF (KSC.EQ.-1) THEN 112 : NPERV = NPERV+2 113 : SC = PERV(NPERV) 114 : ELSE IF (KSC.EQ.1) THEN 115 : NPECDI = NINT(PERV(NPERV)) 116 : DO IP = 1,NPECDI 117 : PECDI(IP) = PERV(NPERV+IP) 118 : END DO 119 : NPERV = NPERV+NPECDI 119 : CALL FECRDI (TT,EPS,PSI, 0, PECDI, SC,DSCDTT,DSCDEP,DSCPSI) 120 : END IF 121 : IF (LVS.EQ.1) THEN 122 : VS = ((S-R)/SC)**EM 123 : ELSE IF (LVS.EQ.2) THEN 124 : VS = (SINH((S-R)/SC))**EM 125 : ELSE IF (LVS.EQ.3) THEN 126 : VS = (SC*SINH((S-R)/SC))**EM 127 : ELSE IF (LVS.EQ.4) THEN 127 : CALL FECRDI (TT,EPS,0.D0, 0, PECDI, SC0,DSCDTT,DSCDEP,DSCPSI) 128 : VS = (SC0*SINH((S-R)/SC))**EM 129 : ELSE IF (LVS.EQ.5) THEN 130 : VS = SINH(((S-R)/SC)**EM) 131 : ELSE IF (LVS.EQ.6) THEN 132 : VS = SC**EM*SINH(((S-R)/SC)**EM) 133 : ELSE IF (LVS.EQ.7) THEN 133 : CALL FECRDI (TT,EPS,0.D0, 0, PECDI, SC0,DSCDTT,DSCDEP,DSCPSI) 134 : VS = SC0**EM*SINH(((S-R)/SC)**EM) 135 : ELSE IF (LVS.EQ.8) THEN 136 : SR = (S-R)/SC 137 : VS = SR**EXP(EM1*SR+EM2) 138 : END IF 139 : END IF 140 : C ---------------------------------- 141 : C Calcul de VTIR = VTPSI0+VFI*VTPSI1 142 : C 143 : NPERV = NPERV+1 144 : LVT = NINT(PERV(NPERV+1)) 145 : IF (LVT.EQ.0) THEN 146 : VTIR = 0. 147 : NPERV = NPERV+1 148 : ELSE 149 : NPATDI = NINT(PERV(NPERV)) 150 : DO IP = 1,NPATDI 151 : PATDI(IP) = PERV(NPERV+IP) 152 : END DO 153 : NPERV = NPERV+NPATDI 153 : CALL FATDI (TT,S,PSI, PATDI, VTIR) 154 : END IF 155 : NPERV = NPERV+1 156 : LVFI = NINT(PERV(NPERV+1)) 157 : IF (LVFI.EQ.0) THEN 158 : NPERV = NPERV+1 159 : ELSE 160 : NPFI = NINT(PERV(NPERV)) 161 : DO IP = 1,NPFI 162 : PFI(IP) = PERV(NPERV+IP) 163 : END DO 164 : NPERV = NPERV+NPFI 164 : CALL FFLUX (FI, PFI, VFI) 165 : NPERV = NPERV+1 166 : NPATDI = NINT(PERV(NPERV)) 167 : DO IP = 1,NPATDI 168 : PATDI(IP) = PERV(NPERV+IP) 169 : END DO 170 : NPERV = NPERV+NPATDI 170 : CALL FATDI (TT,S,PSI, PATDI, VTPSI1) 171 : VTIR = VTIR+VFI*VTPSI1 172 : END IF 173 : C --------------- 174 : C Calcul de V(IV) 175 : C 176 : V(IV) = VS*VTIR 177 : IF (LVS.EQ.1) THEN 178 : NPERV = NPERV+1 179 : LVSB = NINT(PERV(NPERV)) 180 : IF (LVSB.EQ.1) THEN 181 : V(IV) = V(IV) 182 : & + PERV(NPERV+1)*((S-R)/PERV(NPERV+2))**PERV(NPERV+3) 183 : NPERV = NPERV+3 184 : END IF 185 : END IF 186 : END DO 187 : C ------------------------------------------------------------------ 188 : C Calcul de VERV 189 : C 190 : IF (LEPS.EQ.-1) THEN 191 : VERV = V(1) 192 : ELSE IF ((LEPS.EQ.1).OR.(LEPS.EQ.5)) THEN 193 : VERV = V(1)*(EPS+EPS0)**(-P1) 194 : ELSE IF (LEPS.EQ.2) THEN 195 : VERV = MAX(V(1)-EPS/TAU,0.D0) 196 : ELSE IF (LEPS.EQ.3) THEN 197 : VERV = V(2)+(V(1)-V(2))*EXP(-EPS/EPSC) 198 : ELSE IF (LEPS.EQ.4) THEN 199 : VERV = V(1)*(EPS+EPS0)**(-P1)*FACT 200 : & + V(2)*(EPS+EPS0)**(-P2)*(1.-FACT) 201 : END IF 202 : C ------------------------------------------------------------------ 203 : C Limitation eventuelle de VERV a VM 204 : C 205 : IF (LEP.GE.99) THEN 206 : VERV = VM*TANH(VERV/VM) 207 : END IF 208 : C ------------------------------------------------------------------ 209 : RETURN 210 : END 211 :
© Cast3M 2003 - All rights reserved.
Disclaimer