Télécharger ladep1.eso

Retour à la liste

Numérotation des lignes :

  1. C LADEP1 SOURCE CB215821 16/04/21 21:17:39 8920
  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 1 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. C
  84. DO 2 I=1,NSTRS
  85. DO 2 J=1,NSTRS
  86. AJ(I,J)=D(I,J)
  87. 2 CONTINUE
  88. C-------------------------------------------------------------------
  89. CALL INVMA2(AJ,NSTRS,ISING)
  90. IF (ISING.EQ.1) THEN
  91. C WRITE(*,*)'MATRICE AJ singuliere ds eladep '
  92. ENDIF
  93. C-------------------------------------------------------------------
  94. DO 4 I=1,NSTRS
  95. DO 4 J=1,NSTRS
  96. AK(I,J)=AJ(I,J)+DLAM(1)*D2FSI1(I,J)+DLAM(2)*D2FSI2(I,J)
  97. 4 CONTINUE
  98. DO 5 I=1,NSTRS
  99. DO 5 J=1,NSTRS
  100. AH(I,J)=AK(I,J)
  101. 5 CONTINUE
  102. C-------------------------------------------------------------------
  103. CALL INVMA2(AH,NSTRS,ISING)
  104. IF (ISING.EQ.1) THEN
  105. C WRITE(*,*)'MATRICE AH singuliere dans ladep1 '
  106. ENDIF
  107. C-------------------------------------------------------------------
  108.  
  109. DO 7 I=1,NSTRS
  110. AU(I,1)=DFSIG1(I)
  111. 7 CONTINUE
  112. C
  113. DO 8 I=1,NSTRS
  114. AU(I,2)=DFSIG2(I)
  115. 8 CONTINUE
  116. C
  117. DO 19 J=1,NSTRS
  118. AV(1,J)=DFSIG1(J)
  119. 19 CONTINUE
  120. C
  121. DO 20 J=1,NSTRS
  122. AV(2,J)=DFSIG2(J)
  123. 20 CONTINUE
  124. C
  125. AE(1,1)=PAECT
  126. AE(2,2)=PAEC
  127. AE(1,2)=0.D0
  128. AE(2,1)=0.D0
  129. C-------------------------------------------------------------------
  130. C
  131. DO 9 I=1,NSTRS
  132. DO 9 J=1,2
  133. AB(I,J)=AB(I,J)+AH(I,J)*AU(I,J)
  134. 9 CONTINUE
  135. C
  136. DO 10 I=1,2
  137. DO 10 J=1,NSTRS
  138. AC(I,J)=AC(I,J)+AV(I,J)*AB(I,J)
  139. 10 CONTINUE
  140. C
  141. DO 11 I=1,2
  142. DO 11 J=1,2
  143. AD(I,J)=AE(I,J)+AC(I,J)
  144. 11 CONTINUE
  145. C
  146. DO 12 I=1,2
  147. DO 12 J=1,2
  148. ADI(I,J)=AD(I,J)
  149. 12 CONTINUE
  150. C-------------------------------------------------------------------
  151. CALL INVER(ADI,2,ISING,AK,IS,1.D-5)
  152. C-------------------------------------------------------------------
  153. C
  154. DO 13 I=1,2
  155. DO 13 J=1,NSTRS
  156. ABC(I,J)=ABC(I,J)+ADI(I,J)*AV(I,J)
  157. 13 CONTINUE
  158. C
  159. DO 14 I=1,NSTRS
  160. DO 14 J=1,NSTRS
  161. DO 14 K=1,2
  162. ACD(I,J)=ACD(I,J)+AU(I,K)*ABC(K,J)
  163. 14 CONTINUE
  164. C
  165. DO 15 I=1,NSTRS
  166. DO 15 J=1,NSTRS
  167. AF(I,J)=0.D0
  168. DO 15 K=1,NSTRS
  169. AF(I,J)=AF(I,J)+ACD(I,K)*AH(K,J)
  170. 15 CONTINUE
  171. C
  172. DO 16 I=1,NSTRS
  173. DO 16 J=1,NSTRS
  174. DP(I,J)=0.D0
  175. DO 16 K=1,NSTRS
  176. DP(I,J)=DP(I,J)+AH(I,K)*AF(K,J)
  177. 16 CONTINUE
  178. C
  179. DO 17 I=1,NSTRS
  180. DO 17 J=1,NSTRS
  181. DEP(I,J)=AH(I,J)-DP(I,J)
  182. 17 CONTINUE
  183. C
  184. DO 18 I=1,NSTRS
  185. DO 18 J=1,NSTRS
  186. IF (ABS(DEP(I,J)).LT.1.D-5) THEN
  187. DEP(I,J)=0.D0
  188. ENDIF
  189. 18 CONTINUE
  190. C-------------------------------------------------------------------
  191. RETURN
  192. END
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  

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