Télécharger newbet.eso

Retour à la liste

Numérotation des lignes :

newbet
  1. C NEWBET SOURCE CHAT 12/04/06 21:15:22 7348
  2. SUBROUTINE NEWBET
  3. . ( FC___, EZERO, FLT__, ZETA_, IFLAG, EPSON,
  4. . EPSO1, EPMAX, EPLAS, EPS85, SLOPE, TANGE,
  5. . STRES, STRE1, TRAFA )
  6. *
  7. *---------------------------------------------------------------------
  8. *
  9. * CONCRETE BEHAVIOUR MODEL
  10. * (WITH TENSION ALLOWED AND COMPRESSION PLATEAU AFTER SOFTENING)
  11. *
  12. *---------------------------------------------------------------------
  13. *
  14. * INPUT :
  15. * -----
  16. * FC___ : MAXIMUM COMPRESSION STRESS
  17. * EZERO : STRAIN OF THE MAXIMUM COMPRESSION STRESS
  18. * FLT__ : MAXIMUM TENSION STRESS
  19. * ZETA_ : SLOPE OF THE DESCENDING PART OF THE CURVE
  20. * IFLAG : FLAG DEFINING THE CONCRETE STAGE
  21. * EPSON : ACTUAL STRAIN VALUE
  22. * EPSO1 : LAST STRAIN VALUE
  23. * EPMAX : GRATEST COMPRES. STRAIN VALUE EVER REACHED
  24. * EPLAS : PLASTIC STRAIN
  25. * EPS85 : PLATEAU STRAIN AFTER SOFTENING
  26. * STRE1 : LAST STRESS VALUE
  27. * TRAFA : DESCENDING PART OF THE TRACTION CURVE FACTOR
  28. *
  29. * OUTPUT :
  30. * ------
  31. * SLOPE : TANGENT MODULUS OF THE UNLOADING CURVE
  32. * TANGE : ACTUAL TANGENT MODULUS
  33. * STRES : ACTUAL STRESS VALUE
  34. *
  35. * NOTE : POSITIVE STRESSES = TENSION STRESSES
  36. * NEGATIVE STRESSES = COMPRESSION STRESSES
  37. *
  38. * POSITIVE STRAIN = TENSION STRAIN
  39. * NEGATIVE STRAIN = COMPRESSION STRAIN
  40. *
  41. *---------------------------------------------------------------------
  42. *
  43. * DIFERENT POSSIBLE STAGES OF THE CONCRETE
  44. *
  45. * ***********************************************************
  46. * IFLAG = 1 .... CONCRETE IS CRUSHED
  47. * IFLAG = 2 .... LOADING ON THE ENVELOPE CURVE
  48. * IFLAG = 3 .... LOADING OR UNLOADING IN TENSION
  49. * IFLAG = 4 .... LOADING OR UNLOADING IN COMPRESSION UNDER
  50. * THE ENVELOPE CURVE
  51. * IFLAG = 5 .... MAXIMUM TENSION STRESS ALREADY REACHED
  52. * IFLAG = 6 .... ZERO STRESS PATH AFTER CRACKING
  53. *
  54. * NOTE : ONCE REACHED THE TENSION ENVELOPE CURVE, NO MORE
  55. * TENSION STRESSES ARE ALLOWED IN THE MODEL AFTER
  56. * THE TOTAL DISCHARGE.
  57. * THIS SITUATION IS DETECTED BY THE NEGATIVE SIGN
  58. * OF THE "IFLAG" POINTER.
  59. *
  60. *---------------------------------------------------------------------
  61. * Joao Guedes (ISPRA) Juillet/Decembre 1993
  62. *---------------------------------------------------------------------
  63. *
  64. C
  65. IMPLICIT INTEGER(I-N)
  66. IMPLICIT REAL*8 (A-H,O-Z)
  67. C
  68. IF (IFLAG .EQ. 0) THEN
  69. IFLAG = 2
  70. IF (FLT__ .LE. 0.0d0) IFLAG = -2
  71. ENDIF
  72. C
  73. IF (IFLAG .GT. 0) THEN
  74. C-------------------------------------------------------------
  75. C TENSION PARAMETERS
  76. C-------------------------------------------------------------
  77. SLOPI = 2.0D0*FC___/EZERO
  78. ET___ = FLT__/SLOPI/EZERO
  79. ENDIF
  80. C
  81. IF (EPSON .GT. EPLAS) THEN
  82. C-------------------------------------------------------------
  83. C LOADING OR UNLOADING IN TENSION
  84. C (LINEAR BEHAVIOUR WITH RIGITY DEGRADATION)
  85. C-------------------------------------------------------------
  86. IF (EPLAS .GT. -1.0D0 .AND. IFLAG .GT. 0) THEN
  87. IF (EPSON .LT. (EPLAS+ET___)) THEN
  88. C-------------------------------------------------------------
  89. C ASCENDING PART OF THE CURVE
  90. C-------------------------------------------------------------
  91. STRES = (1.0D0+EPLAS)*SLOPI/
  92. . FC___*(EPSON-EPLAS)*EZERO
  93. TANGE = (1.0D0+EPLAS)*SLOPI
  94. IF (IFLAG .NE. 5) IFLAG = 3
  95. ELSE IF (EPSON .LT. (EPLAS+TRAFA*ET___)) THEN
  96. C-------------------------------------------------------------
  97. C DESCENDING PART OF THE CURVE
  98. C-------------------------------------------------------------
  99. STRES = (1.0D0+EPLAS)*SLOPI/
  100. . FC___*ET___*EZERO +
  101. . (1.0D0+EPLAS)*SLOPI/(1.0D0-TRAFA)/
  102. . FC___*(EPSON-EPLAS-ET___)*EZERO
  103. TANGE = (1.0D0+EPLAS)*SLOPI/(1.0D0-TRAFA)
  104. C
  105. IFLAG = 5
  106. ELSE
  107. C-------------------------------------------------------------
  108. C CALCULUS OF THE CORRECTED "SLOPE" VALUE
  109. C-------------------------------------------------------------
  110. EPLAS = EPLAS+ET___
  111. IF (EPMAX .GE. -1.0D0) THEN
  112. C-------------------------------------------------------------
  113. C ASCENDING COMPRESSION CURVE
  114. C-------------------------------------------------------------
  115. STRES = EPMAX*(2.0D0+EPMAX)
  116. ELSE
  117. C-------------------------------------------------------------
  118. C DESCENDING COMPRESSION CURVE
  119. C-------------------------------------------------------------
  120. STRES = -1.0D0-ZETA_*EZERO*(EPMAX+1.0D0)
  121. ENDIF
  122. SLOPE = STRES/(EPMAX-EPLAS)*FC___/EZERO
  123. GOTO 1000
  124. ENDIF
  125. IF (EPSO1 .GT. EPLAS .AND. IFLAG .EQ. 5) THEN
  126. STRE2 = (EPSON-EPLAS)/(EPSO1-EPLAS) * STRE1
  127. IF (STRE2 .LT. STRES) THEN
  128. STRES = STRE2
  129. TANGE = STRE1/(EPSO1-EPLAS)*FC___/EZERO
  130. ENDIF
  131. ENDIF
  132. C
  133. GOTO 2000
  134. ENDIF
  135. C-------------------------------------------------------------
  136. C THE CONCRETE HAS NO TENSILE STRENGTH LEFT
  137. C-------------------------------------------------------------
  138. 1000 STRES = 0.0D0
  139. TANGE = 0.0D0
  140. IFLAG = -6
  141. GO TO 2000
  142. ENDIF
  143. C
  144. IF (EPSON .LT. EPLAS .AND. IFLAG .EQ. 5) IFLAG = -5
  145. C-------------------------------------------------------------
  146. C LOADING OR UNLOADING IN COMPRESSION
  147. C-------------------------------------------------------------
  148. IF (EPSON .LE. EPSO1) THEN
  149. IF (EPSON .LT. EPMAX) THEN
  150. C-------------------------------------------------------------
  151. C LOADING ON THE ENVELOPE
  152. C-------------------------------------------------------------
  153. IFLAG = IFLAG/IABS(IFLAG)*2
  154. GO TO 100
  155. ELSE
  156. C-------------------------------------------------------------
  157. C LOADING UNDER THE ENVELOPE
  158. C-------------------------------------------------------------
  159. IFLAG = IFLAG/IABS(IFLAG)*4
  160. GO TO 200
  161. ENDIF
  162. ELSE
  163. C-------------------------------------------------------------
  164. C UNLOADING COMPRESSION
  165. C-------------------------------------------------------------
  166. IFLAG = IFLAG/IABS(IFLAG)*4
  167. GO TO 200
  168. ENDIF
  169. C
  170. C
  171. C ####################################################
  172. C
  173. C ...... LOADING IN COMPRESSION ON ENVELOPE ......
  174. C
  175. C ####################################################
  176. C
  177. 100 EPMAX = EPSON
  178. C
  179. IF (EPMAX .GE. -1.0D0) THEN
  180. C-------------------------------------------------------------
  181. C ASCENDING PART OF THE ENVELOPE
  182. C-------------------------------------------------------------
  183. STRES = EPMAX*(2.0D0+EPMAX)
  184. TANGE = 2.0D0*(FC___/EZERO)*(1.0D0+EPMAX)
  185. ELSE IF (EPMAX .LE. EPS85) THEN
  186. C-------------------------------------------------------------
  187. C PLATEAU IN COMPRESSION
  188. C-------------------------------------------------------------
  189. STRES = -1.0D0-ZETA_*EZERO*(EPS85+1.0D0)
  190. TANGE = 0.0D0
  191. ELSE
  192. C-------------------------------------------------------------
  193. C DESCENDING PART OF THE ENVELOPE
  194. C-------------------------------------------------------------
  195. STRES = -1.0D0-ZETA_*EZERO*(EPMAX+1.0D0)
  196. TANGE = -ZETA_*FC___
  197. ENDIF
  198. C-------------------------------------------------------------
  199. C UNLOADING TANGENT MODULUS
  200. C-------------------------------------------------------------
  201. SLOPI = 2.0D0*FC___/EZERO
  202. SLOPE = SLOPI*(1.0D0-EPMAX**2/(1.0D0-EPMAX+EPMAX**2))
  203. C-------------------------------------------------------------
  204. C PLASTIC STRAIN
  205. C-------------------------------------------------------------
  206. EPLAS = EPMAX-FC___*STRES/(SLOPE*EZERO)
  207. IF (EPLAS .GT. 0.0D0) THEN
  208. EPLAS = 0.0D0
  209. SLOPE = STRES/EPMAX*FC___/EZERO
  210. ENDIF
  211. C
  212. GO TO 2000
  213. C
  214. C #########################################################
  215. C
  216. C ...... UNLOADING OR LOADING UNDER THE ENVELOPE ......
  217. C
  218. C #########################################################
  219. C
  220. 200 STRES = SLOPE*(EPSON-EPLAS)*EZERO/FC___
  221. TANGE = SLOPE
  222. C
  223. 2000 CONTINUE
  224. C
  225. RETURN
  226. END
  227.  
  228.  
  229.  
  230.  

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