Télécharger cjfdec.eso

Retour à la liste

Numérotation des lignes :

  1. C CJFDEC SOURCE BP208322 17/03/01 21:15:37 9325
  2. C JFDECO SOURCE AM 00/12/13 21:37:04 4045
  3. SUBROUTINE CJFDEC(WRK52,WRK53,WRK54,WRKK2,NSTRS1,NVARI,ICARA,
  4. $ xecou)
  5. C
  6. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  7. C % %
  8. C % subroutine integrant le comportement du beton %
  9. C % %
  10. C % - determine les nouvelles valeurs des variables %
  11. C % d'histoire YLIM1 YLIM2 D1 et D2 %
  12. C % %
  13. C % %
  14. C % en fonction du vecteur des deformations %
  15. C % %
  16. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  17. C
  18. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  19. C % %
  20. C % %
  21. C % declaration des variables %
  22. C % %
  23. C % %
  24. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  25. C
  26. C
  27. C
  28. IMPLICIT INTEGER(I-N)
  29. IMPLICIT REAL*8(A-H,O-Z)
  30. -INC CCOPTIO
  31. -INC DECHE
  32. SEGMENT WRKK2
  33. REAL*8 EPSILI(NSTRS)
  34. END SEGMENT
  35. SEGMENT XECOU
  36. * COMMON/XECOU/DTOPTI,TSOM,TCAR,DTT,DT,TREFA,TEMP00
  37. REAL*8 DTOPTI,TSOM,TCAR,DTT,DT,TREFA,TEMP00
  38. ENDSEGMENT
  39. SEGMENT WRK3
  40. REAL*8 EPSILO(NSTRS)
  41. END SEGMENT
  42. *
  43. REAL*8 YLIM1,YLIM2,DOM1,DOM2,Y1,Y2,Z1,Z2
  44. *
  45. REAL*8 EPS33(3,3),XROTA(3,3),EPSA(3),EPSN(3)
  46. REAL*8 SIGNN(3),SIGA(3),SIGMAN(3,3)
  47. INTEGER JSIGN(3)
  48. *
  49. *
  50. LOGICAL CONV
  51. REAL*8 UN,DEUX,ZERO
  52. PARAMETER (ZERO=0.D0)
  53. PARAMETER (UN=1.D0)
  54. PARAMETER (DEUX=2.D0)
  55. *
  56. * -----> RECUPERATION DES VARIABLES INTERNES
  57. *
  58. YLIMA1 = VAR0(1)
  59. YLIMA2 = VAR0(2)
  60. DOM1 = VAR0(3)
  61. DOM2 = VAR0(4)
  62. E = XMAT(1)
  63. *
  64. *
  65. *
  66. Z1=UN/(UN-DOM1)
  67. Z2=UN/(UN-DOM2)
  68. *
  69. * -----> ON DIAGONALISE LES ANCIENNES DEFORMATIONS
  70. *
  71. CALL ENDOCA(EPSILI,EPS33,2)
  72. CALL JACOB3(EPS33,2,EPSA,XROTA)
  73. * PRINT*,'ANCIENNES DEFORMATIONS PPALES',EPSA(1),EPSA(2),EPSA(3)
  74. *
  75. * -----> ON DIAGONALISE LES ANCIENNES CONTRAINTES
  76. *
  77. CALL ENDOCA(SIG0,EPS33,1)
  78. CALL JACOB3(EPS33,2,SIGA,XROTA)
  79. *
  80. * -----> ON CALCULE LES DEFORMATIONS TOTALES
  81. *
  82. SEGINI WRK3
  83. DO ISTRS=1,NSTRS1
  84. EPSILO(ISTRS)=EPSILI(ISTRS)+DEPST(ISTRS)
  85. * print*,'ISTRS',ISTRS,'EPSILO',EPSILO(ISTRS)
  86. END DO
  87. *
  88. * -----> ON LES DIAGONALISE
  89. *
  90. CALL ENDOCA(EPSILO,EPS33,2)
  91. CALL JACOB3(EPS33,2,EPSN,XROTA)
  92. * PRINT*,'DEFORMATIONS PPALES',EPSN(1),EPSN(2),EPSN(3)
  93. *
  94. * -----> ON INITIALISE Y1 ET Y2
  95. *
  96. IF (SIGA(1) .GE. ZERO) THEN
  97. JSIGN(1)=1
  98. ELSE
  99. JSIGN(1)=0
  100. END IF
  101. IF (SIGA(2) .GE. ZERO) THEN
  102. JSIGN(2)=1
  103. ELSE
  104. JSIGN(2)=0
  105. END IF
  106. TRSIG=SIGA(1)+SIGA(2)
  107. IF (TRSIG .GE. ZERO) THEN
  108. FSIG=TRSIG
  109. ELSE IF (TRSIG.GE.-SIGF) THEN
  110. FSIG=TRSIG*(UN+TRSIG/(DEUX*SIGF))
  111. ELSE
  112. FSIG=-SIGF*TRSIG/DEUX
  113. END IF
  114. YA1=( JSIGN(1)*SIGA(1)*SIGA(1)+JSIGN(2)*SIGA(2)*SIGA(2) )
  115. & *Z1*Z1/(DEUX*E)
  116. YA2=( (1-JSIGN(1))*SIGA(1)*SIGA(1)+
  117. & (1-JSIGN(2))*SIGA(2)*SIGA(2) )
  118. & *Z2*Z2/(DEUX*E)
  119. C
  120. C
  121. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  122. C % %
  123. C % DECOUPAGE DE L'INCREMENT DE DEFORMATION %
  124. C % %
  125. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  126. c
  127. NEPS=1
  128. CONV=.FALSE.
  129. DO WHILE ((.NOT. CONV).AND.(NEPS.LE.100))
  130. SIG1 = SIGA(1)
  131. SIG2 = SIGA(2)
  132. YLIM1=YLIMA1
  133. YLIM2=YLIMA2
  134. IF (SIG1.GE.0.D0)THEN
  135. JSIGN(1)=1
  136. ELSE
  137. JSIGN(1)=0
  138. END IF
  139. IF (SIG2.GE.0.D0)THEN
  140. JSIGN(2)=1
  141. ELSE
  142. JSIGN(2)=0
  143. END IF
  144. Z1=1.D0/(1.D0-DOM1)
  145. Z2=1.D0/(1.D0-DOM2)
  146. Y1 = YA1
  147. Y2 = YA2
  148. DEPS1=(EPSN(1)-EPSA(1))/NEPS
  149. DEPS2=(EPSN(2)-EPSA(2))/NEPS
  150. IEPS=0
  151. DT1=DT/NEPS
  152. c print*,'Vitesse',(DEPS1/dt1),(DEPS2/dt1)
  153. CONV=.TRUE.
  154. DO WHILE (CONV .AND. (IEPS.LT.NEPS))
  155. IEPS=IEPS+1
  156. EPSP1=EPSA(1)+IEPS*DEPS1
  157. EPSP2=EPSA(2)+IEPS*DEPS2
  158. c
  159. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  160. C % %
  161. C % CALCUL DES VALEURS DES VARIABLES INTERNES %
  162. C % %
  163. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  164. C
  165. C
  166. c
  167. CALL CODJFD(WRK52,WRK53,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2,Y1,Y2,
  168. 1 JSIGN,SIG1,SIG2,CONV,DT1)
  169. if (.not. conv ) then
  170. conv=.true.
  171. CALL CODJF2(WRK52,WRK53,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2,
  172. 1 Y1,Y2,JSIGN,SIG1,SIG2,CONV,DT1)
  173. endif
  174. C
  175. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  176. C % %
  177. C % REACTUALISATION DES SEUILS %
  178. C % %
  179. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  180. c
  181. IF (CONV) THEN
  182. VARF(1)=dmax1(Y1,VAR0(1))
  183. VARF(2)=dmax1(Y2,VAR0(2))
  184. VARF(3)=dmax1(1.D0-1.D0/Z1,VAR0(3))
  185. VARF(4)=dmax1(1.D0-1.D0/Z2,VAR0(4))
  186. c IF (Y1 .GT.YLIM1)THEN
  187. c VARF(1)=Y1
  188. c VARF(3)=1.D0-1.D0/Z1
  189. c ELSE
  190. c VARF(1)=VAR0(1)
  191. c VARF(3)=VAR0(3)
  192. c END IF
  193. c IF (Y2 .GT. YLIM2)THEN
  194. c VARF(2)=Y2
  195. c VARF(4)=1.D0-1.D0/Z2
  196. c ELSE
  197. c VARF(2)=VAR0(2)
  198. c VARF(4)=VAR0(4)
  199. c END IF
  200. END IF
  201. END DO
  202. NEPS=NEPS*10
  203. END DO
  204. IF (.NOT. CONV)THEN
  205. print*,'valeur de neps et ieps',neps,ieps
  206. print*, 'NON CONVERGE DANS EULER',EPSP1,EPSP2
  207. C CALL MODJFD(WRK0,NMATT,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2,Y1,Y2,
  208. C 1 JSIGN,SIG1,SIG2,CONV,DT1)
  209. SEGSUP WRK3
  210. KERRE=56
  211. return
  212. END IF
  213. C
  214. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  215. C % %
  216. C % CALCUL DES CONTRAINTES DANS LE REPERE DE L'ELEMENT %
  217. C % %
  218. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  219. C
  220. SIGNN(1)=SIG1
  221. SIGNN(2)=SIG2
  222. SIGNN(3)=0.D0
  223. CALL PRODT2 (SIGMAN,SIGNN,XROTA,3)
  224. SIGF(1)=SIGMAN(1,1)
  225. SIGF(2)=SIGMAN(2,2)
  226. SIGF(3)=SIGMAN(3,3)
  227. SIGF(4)=SIGMAN(1,2)
  228. C
  229. C
  230. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  231. C % %
  232. C % CALCUL DES DEFORMATIONS ANELASTIQUES %
  233. C % %
  234. C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  235. C
  236. CALL MATVE1 (DDHOOK,SIGF,NSTRS1,NSTRS1,EPSILI,1)
  237. DO ISTRS=1,NSTRS1
  238. EPINF(ISTRS)=EPSILO(ISTRS)-EPSILI(ISTRS)
  239. END DO
  240. SEGSUP WRK3
  241. RETURN
  242. END
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  

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