Télécharger t2.eso

Retour à la liste

Numérotation des lignes :

t2
  1. C T2 SOURCE CB215821 26/10/26 21:16:11 12682
  2. SUBROUTINE T2(SIG,DSIG,YOUN,ANU,RT1,RT2,H2,RDP,ADP,
  3. 1 XLAM1,XLAM2,IDAM,ANG)
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8(A-H,O-Z)
  6.  
  7. -INC PPARAM
  8. -INC CCOPTIO
  9. DIMENSION SIG(3),DSIG(3),SFC(3),DSFC(3),TSFC(3),SFG(3),DSFG(3),
  10. 1 EPC(3),A(4),B(2),IDAM(3),SG(3),DSG(3)
  11. Y=YOUN/(1.D0-ANU*ANU)
  12. IF(RT2.LT.1.E-10) THEN
  13. H2=0.D0
  14. RT2=0.D0
  15. ENDIF
  16. C
  17. C--------------------------------------------
  18. C BOITE D ECOULEMENT DE TRACTION 2
  19. C--------------------------------------------
  20. C
  21. C-----------------------------------------------
  22. C ON SE PLACE DANS LE REPERE DE FISSURATION
  23. C-----------------------------------------------
  24. C
  25. CALL CHREP(SIG,SFG,ANG)
  26. CALL CHREP(DSIG,DSFG,ANG)
  27. IF(IIMPI.EQ.9) WRITE(IOIMP,9999)
  28. 9999 FORMAT(1X,'T2 ECOULEMENT SUIVANT TRACTION 2',/)
  29. 1 DL2=(SFG(2)+DSFG(2)-RT2)/(Y-H2)
  30. IF(DL2.LT.0.D0) THEN
  31. IDAM(2)=0
  32. RETURN
  33. ENDIF
  34. C
  35. C----------------------------------------------------------------
  36. C CAS OU LA LIMITE EN TRACTION RESTE SUPERIEUR A 0 (1000)
  37. C----------------------------------------------------------------
  38. C
  39. IF((RT2-H2*DL2).GE.-1.E-10) GOTO 1000
  40. C
  41. C--------------------------------------------------------
  42. C CAS OU LA LIMITE EN TRACTION DEVIENT NULLE
  43. C--------------------------------------------------------
  44. C
  45. DL2=RT2/H2
  46. EPC(2)=DL2
  47. EPC(1)=0.D0
  48. EPC(3)=0.D0
  49. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  50. X=0.D0
  51. IF(DSFG(2).NE.0.D0) X=(SFC(2)-SFG(2))/DSFG(2)
  52. DO 10 ITYP=1,3
  53. SFC(ITYP)=SFG(ITYP)+X*DSFG(ITYP)-SFC(ITYP)
  54. DSFC(ITYP)=(1.D0-X)*DSFG(ITYP)
  55. 10 CONTINUE
  56. CALL CDP(SFC,ADP,RDP,VCDP)
  57. CALL CTRAF(SFC(1),RT1,VCTR1)
  58. CALL CCOAF(SFC(1),XLAM1,VCCO1)
  59. IF(VCTR1.GT.0.D0) GOTO 2000
  60. IF(VCCO1.GT.0.D0) GOTO 3000
  61. IF(VCDP.GT.0.D0) GOTO 4000
  62. RT2=0.D0
  63. H2=0.D0
  64. XLAM2=XLAM2+DL2
  65. DO 20 ITYP=1,3
  66. SFG(ITYP)=SFC(ITYP)
  67. DSFG(ITYP)=DSFC(ITYP)
  68. 20 CONTINUE
  69. GOTO 1
  70. 1000 EPC(2)=DL2
  71. EPC(1)=0.D0
  72. EPC(3)=0.D0
  73. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  74. DO 1010 ITYP=1,3
  75. SFC(ITYP)=SFG(ITYP)+DSFG(ITYP)-SFC(ITYP)
  76. 1010 CONTINUE
  77. C
  78. C-----------------------------------------------
  79. C ON REGARDE SI LES AUTRES CRITERES NE
  80. C SONT PAS ENDOMMAGES PENDANT L ECOULEMENT
  81. C-----------------------------------------------
  82. C
  83. CALL CDP(SFC,ADP,RDP,VCDP)
  84. CALL CTRAF(SFC(1),RT1,VCTR1)
  85. CALL CCOAF(SFC(1),XLAM1,VCCO1)
  86. C
  87. C------------------------------------
  88. C CRITERE DE TRACTION ENDOMMAGE
  89. C------------------------------------
  90. C
  91. IF(VCTR1.GT.0.D0) GOTO 2000
  92. C
  93. C----------------------------------------
  94. C CRITERE DE COMPRESSION ENDOMMAGE
  95. C----------------------------------------
  96. C
  97. IF(VCCO1.GT.0.D0) GOTO 3000
  98. C
  99. C------------------------------------
  100. C CRITERE DE DRUCKER ENDOMMAGE
  101. C------------------------------------
  102. C
  103. IF(VCDP.GT.0.D0) GOTO 4000
  104. C
  105. C--------------------------------------------------------
  106. C AUCUN AUTRE CRITERE ENDOMMAGE PENDANT L ECOULEMENT
  107. C--------------------------------------------------------
  108. C
  109. CALL CHREP(SFC,SIG,-ANG)
  110. DO 1020 ITYP=1,3
  111. DSIG(ITYP)=0.D0
  112. 1020 CONTINUE
  113. RT2=RT2-H2*DL2
  114. IF(RT2.LE.1.E-10) THEN
  115. H2=0.D0
  116. RT2=0.D0
  117. ENDIF
  118. IDAM(1)=0
  119. IDAM(2)=0
  120. IDAM(3)=0
  121. XLAM2=XLAM2+DL2
  122. RETURN
  123. C
  124. C----------------------------------------
  125. C CAS OU EN ENDOMMAGE LA TRACTION1
  126. C----------------------------------------
  127. C
  128. 2000 A(1)=DSFG(1)
  129. A(3)=DSFG(2)
  130. A(2)=-Y*ANU
  131. A(4)=-Y+H2
  132. DET=A(1)*A(4)-A(2)*A(3)
  133. IF(DET.EQ.0.D0) THEN
  134. IDAM(1)=1
  135. IDAM(2)=1
  136. IDAM(3)=0
  137. RETURN
  138. ENDIF
  139. B(1)=RT1-SFG(1)
  140. B(2)=RT2-SFG(2)
  141. CALL SYLIN2(A,B,X,DL2)
  142. EPC(1)=0.D0
  143. EPC(2)=DL2
  144. EPC(3)=0.D0
  145. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  146. DO 2010 ITYP=1,3
  147. DSFC(ITYP)=(1.D0-X)*DSFG(ITYP)
  148. SFC(ITYP)=SFG(ITYP)+X*DSFG(ITYP)-SFC(ITYP)
  149. 2010 CONTINUE
  150. CALL CDP(SFC,ADP,RDP,VCDP)
  151. IF(VCDP.GT.0.D0) GOTO 4000
  152. RT2=RT2-H2*DL2
  153. IF(RT2.LE.1.E-10) THEN
  154. H2=0.D0
  155. RT2=0.D0
  156. ENDIF
  157. IDAM(1)=1
  158. IDAM(2)=1
  159. IDAM(3)=0
  160. XLAM2=XLAM2+DL2
  161. CALL CHREP(DSFC,DSIG,-ANG)
  162. CALL CHREP(SFC,SIG,-ANG)
  163. RETURN
  164. C
  165. C----------------------------------------
  166. C CAS OU EN ENDOMMAGE LA COMPRESSION 1
  167. C----------------------------------------
  168. C
  169. 3000 A(1)=DSFG(1)
  170. A(3)=DSFG(2)
  171. A(2)=-Y*ANU
  172. A(4)=-Y+H2
  173. DET=A(1)*A(4)-A(2)*A(3)
  174. IF(DET.EQ.0.D0) THEN
  175. IDAM(1)=-1
  176. IDAM(2)=1
  177. IDAM(3)=0
  178. RETURN
  179. ENDIF
  180. B(1)=-SFG(1)
  181. B(2)=RT2-SFG(2)
  182. CALL SYLIN2(A,B,X,DL2)
  183. EPC(1)=0.D0
  184. EPC(2)=DL2
  185. EPC(3)=0.D0
  186. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  187. DO 3010 ITYP=1,3
  188. DSFC(ITYP)=(1.D0-X)*DSFG(ITYP)
  189. SFC(ITYP)=SFG(ITYP)+X*DSFG(ITYP)-SFC(ITYP)
  190. 3010 CONTINUE
  191. CALL CDP(SFC,ADP,RDP,VCDP)
  192. IF(VCDP.GT.0.D0) GOTO 4000
  193. RT2=RT2-H2*DL2
  194. IF(RT2.LE.1.E-10) THEN
  195. H2=0.D0
  196. RT2=0.D0
  197. ENDIF
  198. IDAM(1)=-1
  199. IDAM(2)=1
  200. IDAM(3)=0
  201. XLAM2=XLAM2+DL2
  202. CALL CHREP(DSFC,DSIG,-ANG)
  203. CALL CHREP(SFC,SIG,-ANG)
  204. RETURN
  205. C
  206. C----------------------------------------
  207. C CAS OU EN ENDOMMAGE LE DP
  208. C----------------------------------------
  209. C
  210. 4000 CONTINUE
  211. EPC(1)=0.D0
  212. EPC(2)=1.D0
  213. EPC(3)=0.D0
  214. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  215. E=Y-H2
  216. F=(SFG(2)-RT2)/E
  217. G=DSFG(2)/E
  218. DO 4010 ITYP=1,3
  219. SG(ITYP)=SFG(ITYP)-F*SFC(ITYP)
  220. DSG(ITYP)=DSFG(ITYP)-G*SFC(ITYP)
  221. 4010 CONTINUE
  222. CALL XDP(SG,DSG,RDP,ADP,X,ITEST)
  223. IF(ITEST.EQ.1) THEN
  224. IDAM(1)=0
  225. IDAM(2)=1
  226. IDAM(3)=1
  227. RETURN
  228. ENDIF
  229. DL2=(SFG(2)+X*DSFG(2)-RT2)/(Y-H2)
  230. EPC(1)=0.D0
  231. EPC(2)=DL2
  232. EPC(3)=0.D0
  233. RT2=RT2-H2*DL2
  234. IF(RT2.LE.1.E-10) THEN
  235. H2=0.D0
  236. RT2=0.D0
  237. ENDIF
  238. CALL CPHOOB(EPC,SFC,YOUN,ANU)
  239. DO 4020 ITYP=1,3
  240. SFC(ITYP)=X*DSFG(ITYP)-SFC(ITYP)+SFG(ITYP)
  241. DSFC(ITYP)=DSFG(ITYP)*(1.D0-X)
  242. 4020 CONTINUE
  243. XLAM2=XLAM2+DL2
  244. CALL CHREP(DSFC,DSIG,-ANG)
  245. CALL CHREP(SFC,SIG,-ANG)
  246. IDAM(1)=0
  247. IDAM(2)=1
  248. IDAM(3)=1
  249. RETURN
  250. END
  251.  
  252.  
  253.  

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