Télécharger cmaxge.eso

Retour à la liste

Numérotation des lignes :

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

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