Télécharger cmaxge.eso

Retour à la liste

Numérotation des lignes :

cmaxge
  1. C CMAXGE SOURCE PV 17/12/08 21:15:52 9660
  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.  
  50. -INC PPARAM
  51. -INC CCOPTIO
  52. -INC DECHE
  53. *
  54. *
  55. SEGMENT WR12
  56. REAL*8 EM0(2,NWA(1)),EM1(2,NWA(2)),EM2(2,NWA(3))
  57. REAL*8 EM3(2,NWA(4)),EM4(2,NWA(5)),EM5(2,NWA(6))
  58. REAL*8 EM6(2,NWA(7)),EM7(2,NWA(8)),EM8(2,NWA(9))
  59. REAL*8 SM0(NSTRS),SM1(NSTRS),SM2(NSTRS),SM3(NSTRS)
  60. REAL*8 SM4(NSTRS),SM5(NSTRS),SM6(NSTRS),SM7(NSTRS)
  61. REAL*8 SM8(NSTRS)
  62. ENDSEGMENT
  63. *
  64.  
  65. DIMENSION NWA(9)
  66. NCXMAT=XMAT(/1)
  67. NVARI=VAR0(/1)
  68. NSTRS=SIG0(/1)
  69. ANU=XMAT(2)
  70. UNANU=1.D0-ANU
  71. TPS1=TEMP0
  72. TPS2=TEMP0+DT
  73. SE1=0.D0
  74. SE2=0.D0
  75.  
  76. *
  77. ep=xcarb(1)
  78.  
  79. IF(CMATE.EQ.'ISOTROPE') THEN
  80. ******************************************************
  81. * Formulations COQUES MINCES - ISOTROPE *
  82. ******************************************************
  83.  
  84. *** TRIDIMENSIONNEL - FOURIER
  85. IF (IFOUR.EQ.2.OR.IFOUR.EQ.1) THEN
  86.  
  87. CONS=1.D0/(1.D0-(ANU*ANU))
  88. CONS1=1.D0/(1.D0+ANU)
  89. ep=xcarb(1)
  90.  
  91. DO 10 M=0,NCHAIN-1
  92. CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53,
  93. 1 NWA,EFIC,TR,E1,E2)
  94. SE1=SE1+E1
  95. SE2=SE2+E2
  96. FLUA=EXP(-TR*DT)
  97. IF (M.EQ.0) THEN
  98. SM0(1)=SM0(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  99. SM0(2)=SM0(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  100. SM0(3)=SM0(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  101. SM0(4)=SM0(4)*FLUA+
  102. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  103. SM0(5)=SM0(5)*FLUA+
  104. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  105. SM0(6)=SM0(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  106. DO I=1,6
  107. SIGF(I)=SM0(I)
  108. ENDDO
  109. ELSE IF (M.EQ.1) THEN
  110. SM1(1)=SM1(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  111. SM1(2)=SM1(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  112. SM1(3)=SM1(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  113. SM1(4)=SM1(4)*FLUA+
  114. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  115. SM1(5)=SM1(5)*FLUA+
  116. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  117. SM1(6)=SM1(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  118. DO I=1,6
  119. SIGF(I)=SIGF(I)+SM1(I)
  120. ENDDO
  121. ELSE IF (M.EQ.2) THEN
  122. SM2(1)=SM2(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  123. SM2(2)=SM2(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  124. SM2(3)=SM2(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  125. SM2(4)=SM2(4)*FLUA+
  126. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  127. SM2(5)=SM2(5)*FLUA+
  128. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  129. SM2(6)=SM2(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  130. DO I=1,6
  131. SIGF(I)=SIGF(I)+SM2(I)
  132. ENDDO
  133. ELSE IF (M.EQ.3) THEN
  134. SM3(1)=SM3(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  135. SM3(2)=SM3(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  136. SM3(3)=SM3(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  137. SM3(4)=SM3(4)*FLUA+
  138. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  139. SM3(5)=SM3(5)*FLUA+
  140. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  141. SM3(6)=SM3(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  142. DO I=1,6
  143. SIGF(I)=SIGF(I)+SM3(I)
  144. ENDDO
  145. ELSE IF (M.EQ.4) THEN
  146. SM4(1)=SM4(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  147. SM4(2)=SM4(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  148. SM4(3)=SM4(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  149. SM4(4)=SM4(4)*FLUA+
  150. 1 CONS*EFIC*((ep**3)/1.D02)*(DEPST(4)+ANU*DEPST(5))
  151. SM4(5)=SM4(5)*FLUA+
  152. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  153. SM4(6)=SM4(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  154. DO I=1,6
  155. SIGF(I)=SIGF(I)+SM4(I)
  156. ENDDO
  157. ELSE IF (M.EQ.5) THEN
  158. SM5(1)=SM5(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  159. SM5(2)=SM5(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  160. SM5(3)=SM5(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  161. SM5(4)=SM5(4)*FLUA+
  162. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  163. SM5(5)=SM5(5)*FLUA+
  164. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  165. SM5(6)=SM5(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  166. DO I=1,6
  167. SIGF(I)=SIGF(I)+SM5(I)
  168. ENDDO
  169. ELSE IF (M.EQ.6) THEN
  170. SM6(1)=SM6(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  171. SM6(2)=SM6(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  172. SM6(3)=SM6(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  173. SM6(4)=SM6(4)*FLUA+
  174. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  175. SM6(5)=SM6(5)*FLUA+
  176. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  177. SM6(6)=SM6(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  178. DO I=1,6
  179. SIGF(I)=SIGF(I)+SM6(I)
  180. ENDDO
  181. ELSE IF (M.EQ.7) THEN
  182. SM7(1)=SM7(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  183. SM7(2)=SM7(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  184. SM7(3)=SM7(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  185. SM7(4)=SM7(4)*FLUA+
  186. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  187. SM7(5)=SM7(5)*FLUA+
  188. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  189. SM7(6)=SM7(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  190. DO I=1,6
  191. SIGF(I)=SIGF(I)+SM7(I)
  192. ENDDO
  193. ELSE IF (M.EQ.8) THEN
  194. SM8(1)=SM8(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  195. SM8(2)=SM8(2)*FLUA+CONS*EFIC*ep*(ANU*DEPST(1)+DEPST(2))
  196. SM8(3)=SM8(3)*FLUA+CONS1*EFIC*(ep/2.D0)*DEPST(3)
  197. SM8(4)=SM8(4)*FLUA+
  198. 1 CONS*EFIC*((ep**3)/12.D0)*(DEPST(4)+ANU*DEPST(5))
  199. SM8(5)=SM8(5)*FLUA+
  200. 1 CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(4)+DEPST(5))
  201. SM8(6)=SM8(6)*FLUA+CONS1*EFIC*(((ep**3)/24.D0)*DEPST(6))
  202. DO I=1,6
  203. SIGF(I)=SIGF(I)+SM8(I)
  204. ENDDO
  205. END IF
  206. 10 CONTINUE
  207.  
  208. DEFP(1)=DEPST(1)-((SIGF(1)-ANU*SIGF(2))/(ep*SE2)
  209. 1 -(SIG0(1)-ANU*SIG0(2))/(ep*SE1))
  210. DEFP(2)=DEPST(2)-((SIGF(2)-ANU*SIGF(1))/(ep*SE2)
  211. 1 -(SIG0(2)-ANU*SIG0(1))/(ep*SE1))
  212. DEFP(3)=DEPST(3)-(2.D0*(1+ANU)/ep)*(SIGF(3)/SE2-SIG0(3)/SE1)
  213. DEFP(4)=DEPST(4)-(12.D0/(ep**3))*((SIGF(4)-ANU*SIGF(5))/SE2
  214. 1 -(SIG0(4)-ANU*SIG0(5))/SE1)
  215. DEFP(5)=DEPST(5)-(12.D0/(ep**3))*((SIGF(5)-ANU*SIGF(4))/SE2
  216. 1 -(SIG0(5)-ANU*SIG0(4))/SE1)
  217. DEFP(6)=DEPST(6)
  218. 1 -(24.D0*(1+ANU)/ep**3)*(SIGF(6)/SE2-SIG0(6)/SE1)
  219. DO I=1,NSTRS
  220. EPINF(I)=EPIN0(I)+DEFP(I)
  221. END DO
  222. GOTO 999
  223.  
  224. ** Formulation DEFORMATIONS PLANES /AXISYMETRIQUE
  225. ELSE IF(IFOUR.EQ.0.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  226.  
  227. CONS=1.D0/(1.D0-(ANU*ANU))
  228. DO 20 M=0,NCHAIN-1
  229. CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53,
  230. 1 NWA,EFIC,TR,E1,E2)
  231. SE1=SE1+E1
  232. SE2=SE2+E2
  233. FLUA=EXP(-TR*DT)
  234. IF (M.EQ.0) THEN
  235. SM0(1)=SM0(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  236. SM0(2)=SM0(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  237. SM0(3)=SM0(3)*FLUA
  238. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  239. SM0(4)=SM0(4)*FLUA
  240. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  241. DO I=1,4
  242. SIGF(I)=SM0(I)
  243. ENDDO
  244. ELSE IF (M.EQ.1) THEN
  245. SM1(1)=SM1(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  246. SM1(2)=SM1(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  247. SM1(3)=SM1(3)*FLUA
  248. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  249. SM1(4)=SM1(4)*FLUA
  250. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  251. DO I=1,4
  252. SIGF(I)=SIGF(I)+SM1(I)
  253. ENDDO
  254. ELSE IF (M.EQ.2) THEN
  255. SM2(1)=SM2(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  256. SM2(2)=SM2(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  257. SM2(3)=SM2(3)*FLUA
  258. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  259. SM2(4)=SM2(4)*FLUA
  260. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  261. DO I=1,4
  262. SIGF(I)=SIGF(I)+SM2(I)
  263. ENDDO
  264. ELSE IF (M.EQ.3) THEN
  265. SM3(1)=SM3(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  266. SM3(2)=SM3(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  267. SM3(3)=SM3(3)*FLUA
  268. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  269. SM3(4)=SM3(4)*FLUA
  270. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  271. DO I=1,4
  272. SIGF(I)=SIGF(I)+SM3(I)
  273. ENDDO
  274. ELSE IF (M.EQ.4) THEN
  275. SM4(1)=SM4(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  276. SM4(2)=SM4(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  277. SM4(3)=SM4(3)*FLUA
  278. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  279. SM4(4)=SM4(4)*FLUA
  280. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  281. DO I=1,4
  282. SIGF(I)=SIGF(I)+SM4(I)
  283. ENDDO
  284. ELSE IF (M.EQ.5) THEN
  285. SM5(1)=SM5(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  286. SM5(2)=SM5(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  287. SM5(3)=SM5(3)*FLUA
  288. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  289. SM5(4)=SM5(4)*FLUA
  290. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  291. DO I=1,4
  292. SIGF(I)=SIGF(I)+SM5(I)
  293. ENDDO
  294. ELSE IF (M.EQ.6) THEN
  295. SM6(1)=SM6(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  296. SM6(2)=SM6(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  297. SM6(3)=SM6(3)*FLUA
  298. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  299. SM6(4)=SM6(4)*FLUA
  300. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  301. DO I=1,4
  302. SIGF(I)=SIGF(I)+SM6(I)
  303. ENDDO
  304. ELSE IF (M.EQ.7) THEN
  305. SM7(1)=SM7(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  306. SM7(2)=SM7(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  307. SM7(3)=SM7(3)*FLUA
  308. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  309. SM7(4)=SM7(4)*FLUA
  310. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  311. DO I=1,4
  312. SIGF(I)=SIGF(I)+SM7(I)
  313. ENDDO
  314. ELSE IF (M.EQ.8) THEN
  315. SM8(1)=SM8(1)*FLUA+CONS*EFIC*ep*(DEPST(1)+ANU*DEPST(2))
  316. SM8(2)=SM8(2)*FLUA+CONS*EFIC*ep*(DEPST(2)+ANU*DEPST(1))
  317. SM8(3)=SM8(3)*FLUA
  318. 1 +CONS*EFIC*((ep**3)/12.D0)*(DEPST(3)+ANU*DEPST(4))
  319. SM8(4)=SM8(4)*FLUA
  320. 1 +CONS*EFIC*((ep**3)/12.D0)*(ANU*DEPST(3)+DEPST(4))
  321. DO I=1,4
  322. SIGF(I)=SIGF(I)+SM8(I)
  323. ENDDO
  324. END IF
  325. 20 CONTINUE
  326.  
  327. DEFP(1)=DEPST(1)-((SIGF(1)-ANU*SIGF(2))/(SE2*ep)
  328. 1 -(SIG0(1)-ANU*SIG0(2))/(SE1*ep))
  329. DEFP(2)=DEPST(2)-((SIGF(2)-ANU*SIGF(1))/(SE2*ep)
  330. 1 -(SIG0(2)-ANU*SIG0(1))/(SE1*ep))
  331. DEFP(3)=DEPST(3)-(12/ep**3)*((SIGF(3)-ANU*SIGF(4))/SE2
  332. 1 -(SIG0(3)-ANU*SIG0(4))/SE1)
  333. DEFP(4)=DEPST(4)-(12/ep**3)*((SIGF(4)-ANU*SIGF(3))/SE2
  334. 1 -(SIG0(4)-ANU*SIG0(3))/SE1)
  335. DO I=1,NSTRS
  336. EPINF(I)=EPIN0(I)+DEFP(I)
  337. END DO
  338. GOTO 999
  339.  
  340. * Formulation CONTRAINTES PLANES
  341. *
  342. ELSE IF(IFOMOD.EQ.-1.AND.IFOUR.EQ.-2) THEN
  343. er=(ep**3)/12.d0
  344. DO 30 M=0,NCHAIN-1
  345. CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53,
  346. 1 NWA,EFIC,TR,E1,E2)
  347. SE1=SE1+E1
  348. SE2=SE2+E2
  349. FLUA=EXP(-TR*DT)
  350. IF (M.EQ.0) THEN
  351. SM0(1)=SM0(1)*FLUA+EFIC*ep*DEPST(1)
  352. SM0(3)=SM0(3)*FLUA+EFIC*er*DEPST(3)
  353. SIGF(1)=SM0(1)
  354. SIGF(3)=SM0(3)
  355. ELSE IF (M.EQ.1) THEN
  356. SM1(1)=SM1(1)*FLUA+EFIC*ep*DEPST(1)
  357. SM1(3)=SM1(3)*FLUA+EFIC*er*DEPST(3)
  358. SIGF(1)=SIGF(1)+SM1(1)
  359. SIGF(3)=SIGF(3)+SM1(3)
  360. ELSE IF (M.EQ.2) THEN
  361. SM2(1)=SM2(1)*FLUA+EFIC*ep*DEPST(1)
  362. SM2(3)=SM2(3)*FLUA+EFIC*er*DEPST(3)
  363. SIGF(1)=SIGF(1)+SM2(1)
  364. SIGF(3)=SIGF(3)+SM2(3)
  365. ELSE IF (M.EQ.3) THEN
  366. SM3(1)=SM3(1)*FLUA+EFIC*ep*DEPST(1)
  367. SM3(3)=SM3(3)*FLUA+EFIC*er*DEPST(3)
  368. SIGF(1)=SIGF(1)+SM3(1)
  369. SIGF(3)=SIGF(3)+SM3(3)
  370. ELSE IF (M.EQ.4) THEN
  371. SM4(1)=SM4(1)*FLUA+EFIC*ep*DEPST(1)
  372. SM4(3)=SM4(3)*FLUA+EFIC*er*DEPST(3)
  373. SIGF(1)=SIGF(1)+SM4(1)
  374. SIGF(3)=SIGF(3)+SM4(3)
  375. ELSE IF (M.EQ.5) THEN
  376. SM5(1)=SM5(1)*FLUA+EFIC*ep*DEPST(1)
  377. SM5(3)=SM5(3)*FLUA+EFIC*er*DEPST(3)
  378. SIGF(1)=SIGF(1)+SM5(1)
  379. SIGF(3)=SIGF(3)+SM5(3)
  380. ELSE IF (M.EQ.6) THEN
  381. SM6(1)=SM6(1)*FLUA+EFIC*ep*DEPST(1)
  382. SM6(3)=SM6(3)*FLUA+EFIC*er*DEPST(3)
  383. SIGF(1)=SIGF(1)+SM6(1)
  384. SIGF(3)=SIGF(3)+SM6(3)
  385. ELSE IF (M.EQ.7) THEN
  386. SM7(1)=SM7(1)*FLUA+EFIC*ep*DEPST(1)
  387. SM7(3)=SM7(3)*FLUA+EFIC*er*DEPST(3)
  388. SIGF(1)=SIGF(1)+SM7(1)
  389. SIGF(3)=SIGF(3)+SM7(3)
  390. ELSE IF (M.EQ.8) THEN
  391. SM8(1)=SM8(1)*FLUA+EFIC*ep*DEPST(1)
  392. SM8(3)=SM8(3)*FLUA+EFIC*er*DEPST(3)
  393. SIGF(1)=SIGF(1)+SM8(1)
  394. SIGF(3)=SIGF(3)+SM8(3)
  395. END IF
  396. 30 CONTINUE
  397.  
  398. DEFP(1)=DEPST(1)-(1.d0/ep)*(SIGF(1)/SE2
  399. 1 -SIG0(1)/SE1)
  400. DEFP(2)=0.D0
  401. DEFP(3)=DEPST(3)-(1.d0/er)*(SIGF(3)/SE2
  402. 1 -SIG0(3)/SE1)
  403. DEFP(4)=0.D0
  404. DO I=1,NSTRS
  405. EPINF(I)=EPIN0(I)+DEFP(I)
  406. END DO
  407. GOTO 999
  408. END IF
  409.  
  410. * Formulation UNIDIRECTIONNELLES
  411. *
  412. ELSE IF(CMATE.EQ.'UNIDIREC') THEN
  413. DO 40 M=0,NCHAIN-1
  414. CALL CMODFI(TPS1,TPS2,M,WR12,WRK52,WRK53,
  415. 1 NWA,EFIC,TR,E1,E2)
  416. SE1=SE1+E1
  417. SE2=SE2+E2
  418. FLUA=EXP(-TR*DT)
  419. IF (M.EQ.0) THEN
  420. SM0(1)=SM0(1)*FLUA+EFIC*ep*DEPST(1)
  421. SIGF(1)=SM0(1)
  422. ELSE IF (M.EQ.1) THEN
  423. SM1(1)=SM1(1)*FLUA+EFIC*ep*DEPST(1)
  424. SIGF(1)=SIGF(1)+SM1(1)
  425. ELSE IF (M.EQ.2) THEN
  426. SM2(1)=SM2(1)*FLUA+EFIC*ep*DEPST(1)
  427. SIGF(1)=SIGF(1)+SM2(1)
  428. ELSE IF (M.EQ.3) THEN
  429. SM3(1)=SM3(1)*FLUA+EFIC*ep*DEPST(1)
  430. SIGF(1)=SIGF(1)+SM3(1)
  431. ELSE IF (M.EQ.4) THEN
  432. SM4(1)=SM4(1)*FLUA+EFIC*ep*DEPST(1)
  433. SIGF(1)=SIGF(1)+SM4(1)
  434. ELSE IF (M.EQ.5) THEN
  435. SM5(1)=SM5(1)*FLUA+EFIC*ep*DEPST(1)
  436. SIGF(1)=SIGF(1)+SM5(1)
  437. ELSE IF (M.EQ.6) THEN
  438. SM6(1)=SM6(1)*FLUA+EFIC*ep*DEPST(1)
  439. SIGF(1)=SIGF(1)+SM6(1)
  440. ELSE IF (M.EQ.7) THEN
  441. SM7(1)=SM7(1)*FLUA+EFIC*ep*DEPST(1)
  442. SIGF(1)=SIGF(1)+SM7(1)
  443. ELSE IF (M.EQ.8) THEN
  444. SM8(1)=SM8(1)*FLUA+EFIC*ep*DEPST(1)
  445. SIGF(1)=SIGF(1)+SM8(1)
  446. END IF
  447. 40 CONTINUE
  448.  
  449. DEFP(1)=DEPST(1)-(1.d0/ep)*(SIGF(1)/SE2
  450. 1 -SIG0(1)/SE1)
  451. DO I=1,NSTRS
  452. EPINF(I)=EPIN0(I)+DEFP(I)
  453. END DO
  454. GOTO 999
  455. ENDIF
  456. GOTO 999
  457.  
  458.  
  459.  
  460. 999 RETURN
  461. END
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales