1 : C CMAXGE SOURCE KICH 09/09/11 21:16:10 6505 2 : SUBROUTINE CMAXGE(WRK52,WRK53,WRK54,WR12, 3 : 1 IB,IGAU,NCHAIN,DT,NWA) 4 : C MAXGEN SOURCE AM 00/12/13 21:37:45 4045 5 : * SUBROUTINE MAXGEN(WRK0,WRK1,WRK5,WR12,MFR, 6 : * 1 IB,IGAU,MELE,NCHAIN,KERRE,DT,CMATE,NWA,TEMP0) 7 : * 8 : *============================================================== 9 : * chaine de Maxwell pour les coques et plaques 10 : *============================================================== 11 : * 12 : * entrees 13 : * XMAT(NCOMAT) = CARACTERISTIQUES MECANIQUES DU MATERIAU 14 : * 15 : * SIG0(NSTRS) = CONTR. AU DEBUT DU PAS D'INTEGRATION 16 : * DEPST(NSTRS) = INCREMENT DES DEFORM. TOTALES 17 : * VAR0(NVARI) = VARIABLES INTERNES AU DEBUT DU PAS D'INTEGRATION 18 : * XCAR(ICARA) = CARACT. GEOMETRIQUES DES ELEMENTS FINIS 19 : * 20 : * EPINO(NSTRS) = DEFORMATION INELASTIQUE AU DEBUT DU PAS D'INTEGRATION 21 : * 22 : * WRK12 23 : * EMi(2,NWA(i+1)) i=0 a 8 24 : * = EVOLUTION DU MODUE D'YOUNG DE LA BRANCHE i 25 : * SMi(NSTRS) i=1 a 8 26 : * = VARIABLES INTERNES AU DEBUT DU PAS D'INTEGRATION 27 : * 28 : * IB = NUMERO DE L'ELEMENT 29 : * IGAU = NUMERO DU POINT DE GAUSS 30 : * MELE = NUMERO DE L'ELEMENT FINI (TYPE) 31 : * NCHAIN = NOMBRE DE BRANCHE DU MODELE DE MAXWELL 32 : * DT = INCREMENT DE TEMPS 33 : * NWA = DIMENSION DES EVOLUTIONS EMi 34 : * TEMP0 = TEMPS COURANT 35 : * 36 : 37 : * sorties 38 : * 39 : * SIGF(NSTRS)= CONTR. A LA FIN DU PAS D'INTEGRATION 40 : * DEFP(NSTRS)= INCREMENT DES DEFORM. PLASTIQUES A LA FIN DU PAS 41 : * D'INTEGRATION 42 : * 43 : * EPINF(NSTRS) = DEFORMATION INELASTIQUE A LA FIN DU PAS D'INTEGRATION 44 : * 45 : *============================================================== 46 : * 47 : IMPLICIT INTEGER(I-N) 48 : IMPLICIT REAL*8(A-H,O-Z) 49 : -INC CCOPTIO 50 : -INC DECHE 51 : * 52 : * 53 : SEGMENT WR12 54 : REAL*8 EM0(2,NWA(1)),EM1(2,NWA(2)),EM2(2,NWA(3)) 55 : REAL*8 EM3(2,NWA(4)),EM4(2,NWA(5)),EM5(2,NWA(6)) 56 : REAL*8 EM6(2,NWA(7)),EM7(2,NWA(8)),EM8(2,NWA(9)) 57 : REAL*8 SM0(NSTRS),SM1(NSTRS),SM2(NSTRS),SM3(NSTRS) 58 : REAL*8 SM4(NSTRS),SM5(NSTRS),SM6(NSTRS),SM7(NSTRS) 59 : REAL*8 SM8(NSTRS) 60 : ENDSEGMENT 61 : * 62 : 63 : DIMENSION NWA(9) 64 : NCXMAT=XMAT(/1) 65 : NVARI=VAR0(/1) 66 : NSTRS=SIG0(/1) 67 : ANU=XMAT(2) 68 : UNANU=1.D0-ANU 69 : TPS1=TEMP0 70 : TPS2=TEMP0+DT 71 : SE1=0.D0 72 : SE2=0.D0 73 : 74 : * 75 : ep=xcarb(1) 76 : 77 : IF(CMATE.EQ.'ISOTROPE') THEN 78 : ****************************************************** 79 : * Formulations COQUES MINCES - ISOTROPE * 80 : ****************************************************** 81 : 82 : *** TRIDIMENSIONNEL - FOURIER 83 : IF (IFOUR.EQ.2.OR.IFOUR.EQ.1) THEN 84 : 85 : CONS=1.D0/(1.D0-(ANU*ANU)) 86 : CONS1=1.D0/(1.D0+ANU) 87 : ep=xcarb(1) 88 : 89 : DO 10 M=0,NCHAIN-1 89 : CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53, 90 : 1 NWA,EFIC,TR,E1,E2) 91 : SE1=SE1+E1 92 : SE2=SE2+E2 93 : FLUA=EXP(-TR*DT) 94 : IF (M.EQ.0) THEN 95 : SM0(1)=SM0(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 96 : SM0(2)=SM0(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 97 : SM0(3)=SM0(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 98 : SM0(4)=SM0(4)*FLUA+ 99 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 100 : SM0(5)=SM0(5)*FLUA+ 101 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 102 : SM0(6)=SM0(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 103 : DO I=1,6 104 : SIGF(I)=SM0(I) 105 : ENDDO 106 : ELSE IF (M.EQ.1) THEN 107 : SM1(1)=SM1(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 108 : SM1(2)=SM1(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 109 : SM1(3)=SM1(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 110 : SM1(4)=SM1(4)*FLUA+ 111 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 112 : SM1(5)=SM1(5)*FLUA+ 113 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 114 : SM1(6)=SM1(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 115 : DO I=1,6 116 : SIGF(I)=SIGF(I)+SM1(I) 117 : ENDDO 118 : ELSE IF (M.EQ.2) THEN 119 : SM2(1)=SM2(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 120 : SM2(2)=SM2(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 121 : SM2(3)=SM2(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 122 : SM2(4)=SM2(4)*FLUA+ 123 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 124 : SM2(5)=SM2(5)*FLUA+ 125 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 126 : SM2(6)=SM2(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 127 : DO I=1,6 128 : SIGF(I)=SIGF(I)+SM2(I) 129 : ENDDO 130 : ELSE IF (M.EQ.3) THEN 131 : SM3(1)=SM3(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 132 : SM3(2)=SM3(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 133 : SM3(3)=SM3(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 134 : SM3(4)=SM3(4)*FLUA+ 135 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 136 : SM3(5)=SM3(5)*FLUA+ 137 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 138 : SM3(6)=SM3(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 139 : DO I=1,6 140 : SIGF(I)=SIGF(I)+SM3(I) 141 : ENDDO 142 : ELSE IF (M.EQ.4) THEN 143 : SM4(1)=SM4(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 144 : SM4(2)=SM4(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 145 : SM4(3)=SM4(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 146 : SM4(4)=SM4(4)*FLUA+ 147 : 1 CONS*EFIC*((ep**3)/1.D02)*(DEPST(4)+ANU*DEPST(5)) 148 : SM4(5)=SM4(5)*FLUA+ 149 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 150 : SM4(6)=SM4(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 151 : DO I=1,6 152 : SIGF(I)=SIGF(I)+SM4(I) 153 : ENDDO 154 : ELSE IF (M.EQ.5) THEN 155 : SM5(1)=SM5(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 156 : SM5(2)=SM5(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 157 : SM5(3)=SM5(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 158 : SM5(4)=SM5(4)*FLUA+ 159 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 160 : SM5(5)=SM5(5)*FLUA+ 161 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 162 : SM5(6)=SM5(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 163 : DO I=1,6 164 : SIGF(I)=SIGF(I)+SM5(I) 165 : ENDDO 166 : ELSE IF (M.EQ.6) THEN 167 : SM6(1)=SM6(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 168 : SM6(2)=SM6(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 169 : SM6(3)=SM6(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 170 : SM6(4)=SM6(4)*FLUA+ 171 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 172 : SM6(5)=SM6(5)*FLUA+ 173 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 174 : SM6(6)=SM6(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 175 : DO I=1,6 176 : SIGF(I)=SIGF(I)+SM6(I) 177 : ENDDO 178 : ELSE IF (M.EQ.7) THEN 179 : SM7(1)=SM7(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 180 : SM7(2)=SM7(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 181 : SM7(3)=SM7(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 182 : SM7(4)=SM7(4)*FLUA+ 183 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 184 : SM7(5)=SM7(5)*FLUA+ 185 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 186 : SM7(6)=SM7(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 187 : DO I=1,6 188 : SIGF(I)=SIGF(I)+SM7(I) 189 : ENDDO 190 : ELSE IF (M.EQ.8) THEN 191 : SM8(1)=SM8(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 192 : SM8(2)=SM8(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2)) 193 : SM8(3)=SM8(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3) 194 : SM8(4)=SM8(4)*FLUA+ 195 : 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5)) 196 : SM8(5)=SM8(5)*FLUA+ 197 : 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5)) 198 : SM8(6)=SM8(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6)) 199 : DO I=1,6 200 : SIGF(I)=SIGF(I)+SM8(I) 201 : ENDDO 202 : END IF 203 : 10 CONTINUE 204 : 205 : DEFP(1)=DEPST(1)-((SIGF(1)-ANU*SIGF(2))/(ep*SE2) 206 : 1 -(SIG0(1)-ANU*SIG0(2))/(ep*SE1)) 207 : DEFP(2)=DEPST(2)-((SIGF(2)-ANU*SIGF(1))/(ep*SE2) 208 : 1 -(SIG0(2)-ANU*SIG0(1))/(ep*SE1)) 209 : DEFP(3)=DEPST(3)-(2.D0*(1+ANU)/ep)*(SIGF(3)/SE2-SIG0(3)/SE1) 210 : DEFP(4)=DEPST(4)-(12.D0/(ep**3))*((SIGF(4)-ANU*SIGF(5))/SE2 211 : 1 -(SIG0(4)-ANU*SIG0(5))/SE1) 212 : DEFP(5)=DEPST(5)-(12.D0/(ep**3))*((SIGF(5)-ANU*SIGF(4))/SE2 213 : 1 -(SIG0(5)-ANU*SIG0(4))/SE1) 214 : DEFP(6)=DEPST(6) 215 : 1 -(24.D0*(1+ANU)/ep**3)*(SIGF(6)/SE2-SIG0(6)/SE1) 216 : DO I=1,NSTRS 217 : EPINF(I)=EPIN0(I)+DEFP(I) 218 : END DO 219 : GOTO 999 220 : 221 : ** Formulation DEFORMATIONS PLANES /AXISYMETRIQUE 222 : ELSE IF(IFOUR.EQ.0.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN 223 : 224 : CONS=1.D0/(1.D0-(ANU*ANU)) 225 : DO 20 M=0,NCHAIN-1 225 : CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53, 226 : 1 NWA,EFIC,TR,E1,E2) 227 : SE1=SE1+E1 228 : SE2=SE2+E2 229 : FLUA=EXP(-TR*DT) 230 : IF (M.EQ.0) THEN 231 : SM0(1)=SM0(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 232 : SM0(2)=SM0(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 233 : SM0(3)=SM0(3)*FLUA 234 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 235 : SM0(4)=SM0(4)*FLUA 236 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 237 : DO I=1,4 238 : SIGF(I)=SM0(I) 239 : ENDDO 240 : ELSE IF (M.EQ.1) THEN 241 : SM1(1)=SM1(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 242 : SM1(2)=SM1(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 243 : SM1(3)=SM1(3)*FLUA 244 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 245 : SM1(4)=SM1(4)*FLUA 246 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 247 : DO I=1,4 248 : SIGF(I)=SIGF(I)+SM1(I) 249 : ENDDO 250 : ELSE IF (M.EQ.2) THEN 251 : SM2(1)=SM2(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 252 : SM2(2)=SM2(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 253 : SM2(3)=SM2(3)*FLUA 254 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 255 : SM2(4)=SM2(4)*FLUA 256 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 257 : DO I=1,4 258 : SIGF(I)=SIGF(I)+SM2(I) 259 : ENDDO 260 : ELSE IF (M.EQ.3) THEN 261 : SM3(1)=SM3(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 262 : SM3(2)=SM3(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 263 : SM3(3)=SM3(3)*FLUA 264 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 265 : SM3(4)=SM3(4)*FLUA 266 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 267 : DO I=1,4 268 : SIGF(I)=SIGF(I)+SM3(I) 269 : ENDDO 270 : ELSE IF (M.EQ.4) THEN 271 : SM4(1)=SM4(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 272 : SM4(2)=SM4(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 273 : SM4(3)=SM4(3)*FLUA 274 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 275 : SM4(4)=SM4(4)*FLUA 276 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 277 : DO I=1,4 278 : SIGF(I)=SIGF(I)+SM4(I) 279 : ENDDO 280 : ELSE IF (M.EQ.5) THEN 281 : SM5(1)=SM5(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 282 : SM5(2)=SM5(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 283 : SM5(3)=SM5(3)*FLUA 284 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 285 : SM5(4)=SM5(4)*FLUA 286 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 287 : DO I=1,4 288 : SIGF(I)=SIGF(I)+SM5(I) 289 : ENDDO 290 : ELSE IF (M.EQ.6) THEN 291 : SM6(1)=SM6(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 292 : SM6(2)=SM6(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 293 : SM6(3)=SM6(3)*FLUA 294 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 295 : SM6(4)=SM6(4)*FLUA 296 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 297 : DO I=1,4 298 : SIGF(I)=SIGF(I)+SM6(I) 299 : ENDDO 300 : ELSE IF (M.EQ.7) THEN 301 : SM7(1)=SM7(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 302 : SM7(2)=SM7(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 303 : SM7(3)=SM7(3)*FLUA 304 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 305 : SM7(4)=SM7(4)*FLUA 306 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 307 : DO I=1,4 308 : SIGF(I)=SIGF(I)+SM7(I) 309 : ENDDO 310 : ELSE IF (M.EQ.8) THEN 311 : SM8(1)=SM8(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2)) 312 : SM8(2)=SM8(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1)) 313 : SM8(3)=SM8(3)*FLUA 314 : 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4)) 315 : SM8(4)=SM8(4)*FLUA 316 : 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4)) 317 : DO I=1,4 318 : SIGF(I)=SIGF(I)+SM8(I) 319 : ENDDO 320 : END IF 321 : 20 CONTINUE 322 : 323 : DEFP(1)=DEPST(1)-((SIGF(1)-ANU*SIGF(2))/(SE2*ep) 324 : 1 -(SIG0(1)-ANU*SIG0(2))/(SE1*ep)) 325 : DEFP(2)=DEPST(2)-((SIGF(2)-ANU*SIGF(1))/(SE2*ep) 326 : 1 -(SIG0(2)-ANU*SIG0(1))/(SE1*ep)) 327 : DEFP(3)=DEPST(3)-(12/ep**3)*((SIGF(3)-ANU*SIGF(4))/SE2 328 : 1 -(SIG0(3)-ANU*SIG0(4))/SE1) 329 : DEFP(4)=DEPST(4)-(12/ep**3)*((SIGF(4)-ANU*SIGF(3))/SE2 330 : 1 -(SIG0(4)-ANU*SIG0(3))/SE1) 331 : DO I=1,NSTRS 332 : EPINF(I)=EPIN0(I)+DEFP(I) 333 : END DO 334 : GOTO 999 335 : 336 : * Formulation CONTRAINTES PLANES 337 : * 338 : ELSE IF(IFOMOD.EQ.-1.AND.IFOUR.EQ.-2) THEN 339 : er=(ep**3)/12.d0 340 : DO 30 M=0,NCHAIN-1 340 : CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53, 341 : 1 NWA,EFIC,TR,E1,E2) 342 : SE1=SE1+E1 343 : SE2=SE2+E2 344 : FLUA=EXP(-TR*DT) 345 : IF (M.EQ.0) THEN 346 : SM0(1)=SM0(1)*FLUA+EFIC*ep*DEPST(1) 347 : SM0(3)=SM0(3)*FLUA+EFIC*er*DEPST(3) 348 : SIGF(1)=SM0(1) 349 : SIGF(3)=SM0(3) 350 : ELSE IF (M.EQ.1) THEN 351 : SM1(1)=SM1(1)*FLUA+EFIC*ep*DEPST(1) 352 : SM1(3)=SM1(3)*FLUA+EFIC*er*DEPST(3) 353 : SIGF(1)=SIGF(1)+SM1(1) 354 : SIGF(3)=SIGF(3)+SM1(3) 355 : ELSE IF (M.EQ.2) THEN 356 : SM2(1)=SM2(1)*FLUA+EFIC*ep*DEPST(1) 357 : SM2(3)=SM2(3)*FLUA+EFIC*er*DEPST(3) 358 : SIGF(1)=SIGF(1)+SM2(1) 359 : SIGF(3)=SIGF(3)+SM2(3) 360 : ELSE IF (M.EQ.3) THEN 361 : SM3(1)=SM3(1)*FLUA+EFIC*ep*DEPST(1) 362 : SM3(3)=SM3(3)*FLUA+EFIC*er*DEPST(3) 363 : SIGF(1)=SIGF(1)+SM3(1) 364 : SIGF(3)=SIGF(3)+SM3(3) 365 : ELSE IF (M.EQ.4) THEN 366 : SM4(1)=SM4(1)*FLUA+EFIC*ep*DEPST(1) 367 : SM4(3)=SM4(3)*FLUA+EFIC*er*DEPST(3) 368 : SIGF(1)=SIGF(1)+SM4(1) 369 : SIGF(3)=SIGF(3)+SM4(3) 370 : ELSE IF (M.EQ.5) THEN 371 : SM5(1)=SM5(1)*FLUA+EFIC*ep*DEPST(1) 372 : SM5(3)=SM5(3)*FLUA+EFIC*er*DEPST(3) 373 : SIGF(1)=SIGF(1)+SM5(1) 374 : SIGF(3)=SIGF(3)+SM5(3) 375 : ELSE IF (M.EQ.6) THEN 376 : SM6(1)=SM6(1)*FLUA+EFIC*ep*DEPST(1) 377 : SM6(3)=SM6(3)*FLUA+EFIC*er*DEPST(3) 378 : SIGF(1)=SIGF(1)+SM6(1) 379 : SIGF(3)=SIGF(3)+SM6(3) 380 : ELSE IF (M.EQ.7) THEN 381 : SM7(1)=SM7(1)*FLUA+EFIC*ep*DEPST(1) 382 : SM7(3)=SM7(3)*FLUA+EFIC*er*DEPST(3) 383 : SIGF(1)=SIGF(1)+SM7(1) 384 : SIGF(3)=SIGF(3)+SM7(3) 385 : ELSE IF (M.EQ.8) THEN 386 : SM8(1)=SM8(1)*FLUA+EFIC*ep*DEPST(1) 387 : SM8(3)=SM8(3)*FLUA+EFIC*er*DEPST(3) 388 : SIGF(1)=SIGF(1)+SM8(1) 389 : SIGF(3)=SIGF(3)+SM8(3) 390 : END IF 391 : 30 CONTINUE 392 : 393 : DEFP(1)=DEPST(1)-(1.d0/ep)*(SIGF(1)/SE2 394 : 1 -SIG0(1)/SE1) 395 : DEFP(2)=0.D0 396 : DEFP(3)=DEPST(3)-(1.d0/er)*(SIGF(3)/SE2 397 : 1 -SIG0(3)/SE1) 398 : DEFP(4)=0.D0 399 : DO I=1,NSTRS 400 : EPINF(I)=EPIN0(I)+DEFP(I) 401 : END DO 402 : GOTO 999 403 : END IF 404 : 405 : * Formulation UNIDIRECTIONNELLES 406 : * 407 : ELSE IF(CMATE.EQ.'UNIDIREC') THEN 408 : DO 40 M=0,NCHAIN-1 408 : CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53, 409 : 1 NWA,EFIC,TR,E1,E2) 410 : SE1=SE1+E1 411 : SE2=SE2+E2 412 : FLUA=EXP(-TR*DT) 413 : IF (M.EQ.0) THEN 414 : SM0(1)=SM0(1)*FLUA+EFIC*ep*DEPST(1) 415 : SIGF(1)=SM0(1) 416 : ELSE IF (M.EQ.1) THEN 417 : SM1(1)=SM1(1)*FLUA+EFIC*ep*DEPST(1) 418 : SIGF(1)=SIGF(1)+SM1(1) 419 : ELSE IF (M.EQ.2) THEN 420 : SM2(1)=SM2(1)*FLUA+EFIC*ep*DEPST(1) 421 : SIGF(1)=SIGF(1)+SM2(1) 422 : ELSE IF (M.EQ.3) THEN 423 : SM3(1)=SM3(1)*FLUA+EFIC*ep*DEPST(1) 424 : SIGF(1)=SIGF(1)+SM3(1) 425 : ELSE IF (M.EQ.4) THEN 426 : SM4(1)=SM4(1)*FLUA+EFIC*ep*DEPST(1) 427 : SIGF(1)=SIGF(1)+SM4(1) 428 : ELSE IF (M.EQ.5) THEN 429 : SM5(1)=SM5(1)*FLUA+EFIC*ep*DEPST(1) 430 : SIGF(1)=SIGF(1)+SM5(1) 431 : ELSE IF (M.EQ.6) THEN 432 : SM6(1)=SM6(1)*FLUA+EFIC*ep*DEPST(1) 433 : SIGF(1)=SIGF(1)+SM6(1) 434 : ELSE IF (M.EQ.7) THEN 435 : SM7(1)=SM7(1)*FLUA+EFIC*ep*DEPST(1) 436 : SIGF(1)=SIGF(1)+SM7(1) 437 : ELSE IF (M.EQ.8) THEN 438 : SM8(1)=SM8(1)*FLUA+EFIC*ep*DEPST(1) 439 : SIGF(1)=SIGF(1)+SM8(1) 440 : END IF 441 : 40 CONTINUE 442 : 443 : DEFP(1)=DEPST(1)-(1.d0/ep)*(SIGF(1)/SE2 444 : 1 -SIG0(1)/SE1) 445 : DO I=1,NSTRS 446 : EPINF(I)=EPIN0(I)+DEFP(I) 447 : END DO 448 : GOTO 999 449 : ENDIF 450 : GOTO 999 451 : 452 : 453 : 454 : 999 RETURN 455 : END 456 : 457 : 458 : 459 : 460 : 461 : 462 : 463 : 464 : 465 : 466 :
© Cast3M 2003 - All rights reserved.
Disclaimer