Télécharger ladep1.eso

Retour à la liste

Numérotation des lignes :

ladep1
  1. C LADEP1 SOURCE CB215821 26/08/24 21:17:07 12622
  2. C LADEP1 SOURCE GEOR 95/11/29
  3. SUBROUTINE LADEP1(S1,DEP,PAECT,PAEC,NSTRS,IFOU,
  4. & DFSIG1,DFSIG2,D2FSI1,D2FSI2,DLAM,BETJEF)
  5. C
  6. IMPLICIT INTEGER(I-N)
  7. IMPLICIT REAL*8 (A-H,O-Z)
  8. DIMENSION S1(4),DEP(4,4),DP(4,4),IS(4)
  9. DIMENSION D(4,4),D2FSI1(4,4),DFSIG1(4)
  10. DIMENSION AI(4,4), AJ(4,4),AK(4,4), AKI(4,4),AH(4,4)
  11. DIMENSION D2FSI2(4,4),DFSIG2(4),DLAM(2),AU(4,2),AV(2,4)
  12. DIMENSION AB(4,2),AC(2,4),AD(2,2),ADI(2,2),AE(2,2)
  13. DIMENSION ABC(2,4),ACD(4,4),AF(4,4)
  14. *
  15. SEGMENT BETJEF
  16. REAL*8 AA,BETA,RB,ALPHA,YOUN,XNU,GFC,GFT,CAR,ETA,TDEF,
  17. & TCON,DPSTF1,DPSTF2,TETA,PDT
  18. INTEGER ICT,ICC,IMOD,IVISS,ITER,
  19. & ISIM,IBB1,IGAU1,IZON
  20. ENDSEGMENT
  21. *
  22. * COMMON /DBETJEF/AA,BETA,RB,ALPHA,YOUN,XNU,GFC,GFT,CAR,ETA,TDEF,
  23. * & TCON,DPSTF1,DPSTF2,TETA,PDT,ICT,ICC,IMOD,IVISS,ITER,
  24. * & ISIM,IBB1,IGAU1,IZON
  25. C
  26. C *************************************************
  27. C ** CALCUL DE LA MATRICE ELASTOPLASTIQUE [Dep] **
  28. C *************************************************
  29. C-------------------------------------------------------------------
  30. CALL ZERO(DEP,NSTRS,NSTRS)
  31. CALL ZERO(DP,NSTRS,NSTRS)
  32. CALL ZERO(AK,4,4)
  33. CALL ZERO(AKI,4,4)
  34. CALL ZERO(AU,4,2)
  35. CALL ZERO(AV,2,4)
  36. CALL ZERO(AB,4,2)
  37. CALL ZERO(AC,2,4)
  38. CALL ZERO(AD,2,2)
  39. CALL ZERO(ADI,2,2)
  40. CALL ZERO(ABC,2,4)
  41. CALL ZERO(ACD,4,2)
  42. C-------------------------------------------------------------------
  43. IF (IMOD.EQ.1.OR.IMOD.EQ.3) THEN
  44. ADD=YOUN/(1.D0-XNU*XNU)
  45. D(1,1)=ADD
  46. D(2,2)=D(1,1)
  47. D(3,3)=ADD*(1.D0-XNU)/2.D0
  48. D(1,2)=ADD*XNU
  49. D(2,1)=D(1,2)
  50. D(1,3)=0.D0
  51. D(2,3)=0.D0
  52. D(3,1)=0.D0
  53. D(3,2)=0.D0
  54. ENDIF
  55. IF (IMOD.EQ.2.OR.IMOD.EQ.4) THEN
  56. ADD=YOUN/((1.D0+XNU)*(1.D0-2.D0*XNU))
  57. D(1,1)=ADD*(1.D0-XNU)
  58. D(2,2)=D(1,1)
  59. D(3,3)=D(1,1)
  60. D(1,2)=ADD*XNU
  61. D(2,1)=D(1,2)
  62. D(1,3)=D(1,2)
  63. D(2,3)=D(1,2)
  64. D(3,1)=D(1,2)
  65. D(3,2)=D(1,2)
  66. D(1,4)=0.D0
  67. D(2,4)=0.D0
  68. D(3,4)=0.D0
  69. D(4,1)=0.D0
  70. D(4,2)=0.D0
  71. D(4,3)=0.D0
  72. D(4,4)=0.5*ADD*(1.D0-2.D0*XNU)
  73. ENDIF
  74. C-------------------------------------------------------------------
  75. DO 21 I=1,NSTRS
  76. DO 1 J=1,NSTRS
  77. IF (I.EQ.J) THEN
  78. AI(I,J)=1.D0
  79. ELSE
  80. AI(I,J)=0.D0
  81. ENDIF
  82. 1 CONTINUE
  83. 21 CONTINUE
  84. C
  85. DO 22 I=1,NSTRS
  86. DO 2 J=1,NSTRS
  87. AJ(I,J)=D(I,J)
  88. 2 CONTINUE
  89. 22 CONTINUE
  90. C-------------------------------------------------------------------
  91. CALL INVMA2(AJ,NSTRS,ISING)
  92. IF (ISING.EQ.1) THEN
  93. C WRITE(*,*)'MATRICE AJ singuliere ds eladep '
  94. ENDIF
  95. C-------------------------------------------------------------------
  96. DO 23 I=1,NSTRS
  97. DO 4 J=1,NSTRS
  98. AK(I,J)=AJ(I,J)+DLAM(1)*D2FSI1(I,J)+DLAM(2)*D2FSI2(I,J)
  99. 4 CONTINUE
  100. 23 CONTINUE
  101. DO 24 I=1,NSTRS
  102. DO 5 J=1,NSTRS
  103. AH(I,J)=AK(I,J)
  104. 5 CONTINUE
  105. 24 CONTINUE
  106. C-------------------------------------------------------------------
  107. CALL INVMA2(AH,NSTRS,ISING)
  108. IF (ISING.EQ.1) THEN
  109. C WRITE(*,*)'MATRICE AH singuliere dans ladep1 '
  110. ENDIF
  111. C-------------------------------------------------------------------
  112.  
  113. DO 7 I=1,NSTRS
  114. AU(I,1)=DFSIG1(I)
  115. 7 CONTINUE
  116. C
  117. DO 8 I=1,NSTRS
  118. AU(I,2)=DFSIG2(I)
  119. 8 CONTINUE
  120. C
  121. DO 19 J=1,NSTRS
  122. AV(1,J)=DFSIG1(J)
  123. 19 CONTINUE
  124. C
  125. DO 20 J=1,NSTRS
  126. AV(2,J)=DFSIG2(J)
  127. 20 CONTINUE
  128. C
  129. AE(1,1)=PAECT
  130. AE(2,2)=PAEC
  131. AE(1,2)=0.D0
  132. AE(2,1)=0.D0
  133. C-------------------------------------------------------------------
  134. C
  135. DO 25 I=1,NSTRS
  136. DO 9 J=1,2
  137. AB(I,J)=AB(I,J)+AH(I,J)*AU(I,J)
  138. 9 CONTINUE
  139. 25 CONTINUE
  140. C
  141. DO 26 I=1,2
  142. DO 10 J=1,NSTRS
  143. AC(I,J)=AC(I,J)+AV(I,J)*AB(I,J)
  144. 10 CONTINUE
  145. 26 CONTINUE
  146. C
  147. DO 27 I=1,2
  148. DO 11 J=1,2
  149. AD(I,J)=AE(I,J)+AC(I,J)
  150. 11 CONTINUE
  151. 27 CONTINUE
  152. C
  153. DO 28 I=1,2
  154. DO 12 J=1,2
  155. ADI(I,J)=AD(I,J)
  156. 12 CONTINUE
  157. 28 CONTINUE
  158. C-------------------------------------------------------------------
  159. CALL INVER(ADI,2,ISING,AK,IS,1.D-5)
  160. C-------------------------------------------------------------------
  161. C
  162. DO 29 I=1,2
  163. DO 13 J=1,NSTRS
  164. ABC(I,J)=ABC(I,J)+ADI(I,J)*AV(I,J)
  165. 13 CONTINUE
  166. 29 CONTINUE
  167. C
  168. DO 31 I=1,NSTRS
  169. DO 30 J=1,NSTRS
  170. DO 14 K=1,2
  171. ACD(I,J)=ACD(I,J)+AU(I,K)*ABC(K,J)
  172. 14 CONTINUE
  173. 30 CONTINUE
  174. 31 CONTINUE
  175. C
  176. DO 33 I=1,NSTRS
  177. DO 32 J=1,NSTRS
  178. AF(I,J)=0.D0
  179. DO 15 K=1,NSTRS
  180. AF(I,J)=AF(I,J)+ACD(I,K)*AH(K,J)
  181. 15 CONTINUE
  182. 32 CONTINUE
  183. 33 CONTINUE
  184. C
  185. DO 35 I=1,NSTRS
  186. DO 34 J=1,NSTRS
  187. DP(I,J)=0.D0
  188. DO 16 K=1,NSTRS
  189. DP(I,J)=DP(I,J)+AH(I,K)*AF(K,J)
  190. 16 CONTINUE
  191. 34 CONTINUE
  192. 35 CONTINUE
  193. C
  194. DO 36 I=1,NSTRS
  195. DO 17 J=1,NSTRS
  196. DEP(I,J)=AH(I,J)-DP(I,J)
  197. 17 CONTINUE
  198. 36 CONTINUE
  199. C
  200. DO 37 I=1,NSTRS
  201. DO 18 J=1,NSTRS
  202. IF (ABS(DEP(I,J)).LT.1.D-5) THEN
  203. DEP(I,J)=0.D0
  204. ENDIF
  205. 18 CONTINUE
  206. 37 CONTINUE
  207. C-------------------------------------------------------------------
  208. RETURN
  209. END
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  

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