Télécharger ricbet2d.eso

Retour à la liste

Numérotation des lignes :

ricbet2d
  1. C RICBET2D SOURCE PV 17/12/08 21:17:42 9660
  2. SUBROUTINE RICBET2D(XMAT,SIG0,SIGF,VAR0,VARF,DEPST,ISTEP)
  3. C
  4. C====&===1=========2=========3=========4=========5=========6=========7==
  5. C Commentaires : Subroutine permettant de mettre en oeuvre le
  6. C modele RICBET (B. Richard) pour representer
  7. C le comportement 2D d'un béton ordinaire sous
  8. C sollicitations cycliques
  9. C
  10. C Traits : - Endommagement scalaire
  11. C - Glissement frottant
  12. C - 2D
  13. C - Monotone et cyclique
  14. C - Effet unilatteral
  15. C - Comportement linŽaire en compression
  16. C - Non localite portant sur le seuil d'endommagement (Fd)
  17. C
  18. C Auteurs : B. Richard (Dr - Ing.) & F. Ragueneau (Pr) - LMT/ENS
  19. C Date : Mars 2011
  20. C====&===1=========2=========3=========4=========5=========6=========7==
  21. C
  22. C-----DECLARATION GENERALE----------------------------------------------
  23. C
  24. IMPLICIT REAL*8(A-H,O-Z)
  25. C
  26. C-----LISTE DES INCLUDES A CHARGER--------------------------------------
  27. C
  28. C
  29. -INC PPARAM
  30. -INC CCOPTIO
  31. C -INC DECHE
  32. C
  33. C-----DECLARATION GENERALE----------------------------------------------
  34. C
  35. REAL*8 X(3,3),UNIT(3,3),EPSPI(3,3),EPSI(3,3),SIGMA(3,3)
  36. REAL*8 EPSDEV(3,3),SIGMA1(3,3),EPSPIDEV(3,3)
  37. REAL*8 EPSIPOS(3,3),EPSINEG(3,3),SIGPI(3,3),DEPSN(3,3)
  38. REAL*8 TERME1(3,3),TERME2(3,3),TERME3(3,3),TERME4(3,3)
  39. REAL*8 SIGMOX(3,3),TRAV(3,3),SIG1DEV(3,3),TERME5(3,3)
  40. REAL*8 XDT,XTRAV2(3,3),XTRAV3(3,3),DEFN(3,3),EPSIT(3,3)
  41. REAL*8 XMAT(*),SIG0(*),SIGF(*),VAR0(*),VARF(*),DEPST(*)
  42. REAL*8 XDFP(3,3),XDGP(3,3),XDJ2P(3,3),DEVGP(3,3)
  43. REAL*8 DEPSI(3,3)
  44. C
  45. C-----DEFINITION DE PARAMETRES------------------------------------------
  46. C
  47. PARAMETER (IMAX = 1000)
  48. PARAMETER (IMAX2 = 10)
  49. C
  50. C-----MISE EN DONNEE----------------------------------------------------
  51. C
  52. XE = XMAT(1)
  53. XNU = XMAT(2)
  54. XFT = XMAT(5)
  55. ALDIR = XMAT(6)
  56. GAMMA1 = XMAT(7)
  57. A1 = XMAT(8)
  58. SIGRF = XMAT(9)
  59.  
  60. XAF = XMAT(10)
  61. XBF = XMAT(11)
  62. XAG = XMAT(12)
  63. XBG = XMAT(13)
  64. XAC = XMAT(14)
  65. XBC = XMAT(15)
  66. XSIGU = XMAT(16)
  67. XFC = XMAT(17)
  68.  
  69. XK = XE/((1.0D0-2.D0*XNU)*3.0D0)
  70. XG = XE/(2.0D0*(1.D0+XNU))
  71. C
  72. C-----DEFINITION DE LA MATRICE UNITE D ORDRE 2--------------------------
  73. C
  74. DO I=1,3
  75. DO J=1,3
  76. IF (I.EQ.J) THEN
  77. UNIT(I,J) = 1.0D0
  78. ELSE
  79. UNIT(I,J) = 0.0D0
  80. ENDIF
  81. ENDDO
  82. ENDDO
  83. C
  84. C-----ACTUALISATION DES DEFORMATIONS------------------------------------
  85. C
  86.  
  87. C Indicateur
  88. XBEN = VAR0(22)+VAR0(23)+VAR0(24)*0.0D0
  89.  
  90. C Boucle pour les contraintes planes
  91. DO NIDX=1,IMAX2
  92.  
  93. IF (NIDX.EQ.IMAX) THEN
  94. C print*,'non converge'
  95. C stop
  96. ENDIF
  97.  
  98. IF (ABS(DEPST(3)).GE.1.0D10) THEN
  99. C print*,'pb depst'
  100. ENDIF
  101.  
  102. C Contraintes tests
  103. SIGMA1(1,1) = VAR0(22)
  104. SIGMA1(2,2) = VAR0(23)
  105. SIGMA1(3,3) = VAR0(24)
  106. SIGMA1(1,2) = VAR0(25)
  107. SIGMA1(1,3) = VAR0(26)
  108. SIGMA1(2,3) = VAR0(27)
  109. SIGMA1(2,1) = VAR0(25)
  110. SIGMA1(3,1) = VAR0(26)
  111. SIGMA1(3,2) = VAR0(27)
  112.  
  113. C Tenseur de glissement interne
  114. EPSPI(1,1) = VAR0(2)
  115. EPSPI(2,2) = VAR0(3)
  116. EPSPI(3,3) = VAR0(4)
  117. EPSPI(1,2) = VAR0(5)
  118. EPSPI(1,3) = VAR0(6)
  119. EPSPI(2,3) = VAR0(7)
  120. EPSPI(2,1) = VAR0(5)
  121. EPSPI(3,1) = VAR0(6)
  122. EPSPI(3,2) = VAR0(7)
  123.  
  124. C Tenseur des contraintes de rappel
  125. X(1,1) = VAR0(8)
  126. X(2,2) = VAR0(9)
  127. X(3,3) = VAR0(10)
  128. X(1,2) = VAR0(11)
  129. X(1,3) = VAR0(12)
  130. X(2,3) = VAR0(13)
  131. X(2,1) = VAR0(11)
  132. X(3,1) = VAR0(12)
  133. X(3,2) = VAR0(13)
  134.  
  135. C Tenseur des deformations plastiques
  136. DEFN(1,1) = VAR0(35)
  137. DEFN(2,2) = VAR0(36)
  138. DEFN(3,3) = VAR0(37)
  139. DEFN(1,2) = VAR0(38)
  140. DEFN(1,3) = VAR0(39)
  141. DEFN(2,3) = VAR0(40)
  142. DEFN(2,1) = VAR0(38)
  143. DEFN(3,1) = VAR0(39)
  144. DEFN(3,2) = VAR0(40)
  145.  
  146. C Ecrouissage plastique
  147. XECO = VAR0(41)
  148.  
  149. C Deformation plastique cumulee
  150. XDPP = VAR0(42)
  151.  
  152. C Endommagement
  153. XDT = VAR0(14)
  154.  
  155. C Force associee a l ecrouissage isotrope
  156. XFFT = VAR0(15)
  157.  
  158. C Deformations totales
  159. EPSI(1,1) = VAR0(16)
  160. EPSI(2,2) = VAR0(17)
  161. EPSI(3,3) = VAR0(18)
  162. EPSI(1,2) = VAR0(19)
  163. EPSI(1,3) = VAR0(20)
  164. EPSI(2,3) = VAR0(21)
  165. EPSI(2,1) = VAR0(19)
  166. EPSI(3,1) = VAR0(20)
  167. EPSI(3,2) = VAR0(21)
  168.  
  169. EPSI(1,1) = EPSI(1,1) + DEPST(1)
  170. EPSI(2,2) = EPSI(2,2) + DEPST(2)
  171. EPSI(3,3) = EPSI(3,3) + DEPST(3)
  172. EPSI(1,2) = EPSI(1,2) + (DEPST(4)/2.0D0)
  173. EPSI(1,3) = 0.0D0
  174. EPSI(2,3) = 0.0D0
  175. EPSI(2,1) = EPSI(2,1) + (DEPST(4)/2.0D0)
  176. EPSI(3,1) = 0.0D0
  177. EPSI(3,2) = 0.0D0
  178.  
  179. DEPSI(1,1) = DEPST(1)
  180. DEPSI(2,2) = DEPST(2)
  181. DEPSI(3,3) = DEPST(3)
  182. DEPSI(1,2) = (DEPST(4)/2.0D0)
  183. DEPSI(1,3) = 0.0D0
  184. DEPSI(2,3) = 0.0D0
  185. DEPSI(2,1) = (DEPST(4)/2.0D0)
  186. DEPSI(3,1) = 0.0D0
  187. DEPSI(3,2) = 0.0D0
  188. C
  189. C-----CALCUL DE QUELQUES QUANTITES--------------------------------------
  190. C
  191.  
  192. C Calcul de la trace de EPSI
  193. TRA = EPSI(1,1)+EPSI(2,2)+EPSI(3,3)
  194.  
  195. C Calcul du deviateur de EPSI
  196. CALL DEVIAT(EPSI,EPSDEV)
  197.  
  198. C Calcul de la trace de EPSPI
  199. TRAPI = EPSPI(1,1)+EPSPI(2,2)+EPSPI(3,3)
  200.  
  201. C Calcul du deviateur de EPSPI
  202. CALL DEVIAT(EPSPI,EPSPIDEV)
  203.  
  204. C Calcul de la trace de SIGMA1
  205. TRAS1 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  206.  
  207. C Calcul du deviateur de DEFN
  208. CALL DEVIAT(DEFN,DEPSN)
  209.  
  210. C Calcul de la trace de DEFN
  211. TRADN = DEFN(1,1)+DEFN(2,2)+DEFN(3,3)
  212.  
  213. C
  214. C-----PARTIE POSITIVES ET NEGATIVES DE (EPS-EPSP)------------------------
  215. C
  216. DO I=1,3
  217. DO J=1,3
  218. EPSIT(I,J) = EPSI(I,J)-DEFN(I,J)
  219. ENDDO
  220. ENDDO
  221.  
  222. CALL POSNEG(EPSIT,EPSIPOS,EPSINEG)
  223. C
  224. C-----SEUIL ENDOMMAGEMENT------------------------------------------------
  225. C
  226.  
  227. C Calcul de l enerigie Y+
  228. YP = 0.0D0
  229.  
  230. DO I=1,3
  231. DO J=1,3
  232. YP = YP + EPSIPOS(I,J)*EPSIPOS(I,J)
  233. ENDDO
  234. ENDDO
  235.  
  236. YP = 0.5D0*YP*XE
  237. C
  238. C-----NON LOCAL----------------------------------------------------------
  239. C
  240. IF (ISTEP.EQ.0) THEN
  241. SEUIL1=YP
  242. VARF(1)=YP
  243. ELSE IF (ISTEP.EQ.1) THEN
  244. VARF(1)=YP
  245. DO I=2,42
  246. VARF(I)=VAR0(I)
  247. ENDDO
  248. GOTO 2000
  249. ELSE IF (ISTEP.EQ.2) THEN
  250. SEUIL1=VAR0(1)
  251. VARF(1)=SEUIL1
  252. ENDIF
  253. C
  254. C-----EVOLUTION DE L ENDOMMAGEMENT---------------------------------------
  255. C
  256.  
  257. C Calcul du seuil
  258. XFD = SEUIL1 - ((XFT**2)/(2.0D0*XE) + XFFT)
  259.  
  260. TRAS1 = 1.0D0
  261.  
  262. C Evolution explicite de l'endommagement
  263. IF ((XFD.GT.0.0D0).AND.(XBEN.GE.0.0D0)) THEN
  264. XDT = 1.00D0-1.00D0/
  265. & (1.0D0+ALDIR*(SEUIL1-((XFT**2)/(2.0D0*XE))))
  266. XFFT = SEUIL1 - ((XFT**2)/(2.0D0*XE))
  267. ENDIF
  268.  
  269. C
  270. C-----SEUIL GLISSEMENT INTERNE-------------------------------------------
  271. C
  272.  
  273. C Calcul de sigma_pi
  274. DO I=1,3
  275. DO J=1,3
  276. SIGPI(I,J) = XDT*XK*(TRA-TRAPI-TRADN)*UNIT(I,J)+
  277. & 2.0D0*XG*XDT*(EPSDEV(I,J)-EPSPIDEV(I,J)-DEPSN(I,J))
  278. ENDDO
  279. ENDDO
  280.  
  281. C Calcul de la quantite (sigma_pi - X)
  282. DO I=1,3
  283. DO J=1,3
  284. SIGMOX(I,J) = SIGPI(I,J)-X(I,J)
  285. ENDDO
  286. ENDDO
  287.  
  288. C Calcul de I2(sigma_pi-X)
  289. CALL I2(SIGMOX,XFPI)
  290.  
  291. C Mise a 1 du multiplicateur plastique
  292. XLAM = 1.0D0
  293.  
  294. C CAlcul de la trace de Sigma_finale
  295. TRASIG1 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  296.  
  297. C Test sur la positivite du seuil de glissement interne
  298. IF ((XFPI.GT.0.0D0).AND.(XBEN.GE.0.D0)) THEN
  299.  
  300. C On retient la valeur initiale du seuil
  301. XFPI0 = XFPI
  302.  
  303. C On itere en bloquant le nombre d iteration max a IMAX
  304. DO NI=1,IMAX
  305.  
  306. C On realise un test de sortie
  307. IF ((ABS(XFPI/XFPI0 ).LE.(1.0D-8)).OR.
  308. & (ABS(XLAM).LE.(1.0D-20))) THEN
  309.  
  310. GOTO 400
  311.  
  312. ELSE
  313.  
  314. C Calcul des derivees dfpi/dsigpi et dphipi/dsigpi
  315. CALL DI2(SIGMOX,TERME1)
  316. CALL DI2(SIGMOX,TERME2)
  317.  
  318. C Calcul des derivees dfpi/dX et dphipi/dX
  319. DO I=1,3
  320. DO J=1,3
  321. TERME3(I,J) = 0.0D0
  322. TERME4(I,J) = 0.0D0
  323.  
  324. TERME3(I,J) = -1.0D0*TERME2(I,J)
  325. TERME4(I,J) = -1.0D0*TERME2(I,J)+A1*X(I,J)
  326. ENDDO
  327. ENDDO
  328.  
  329. C On calcul le terme C:dfpi/dsigpi
  330. TRA_SE = TERME2(1,1)+TERME2(2,2)+TERME2(3,3)
  331.  
  332. CALL DEVIAT(TERME2,TRAV)
  333.  
  334. DO I=1,3
  335. DO J=1,3
  336. TERME5(I,J) = 0.0D0
  337. TERME5(I,J) = XK*TRA_SE*UNIT(I,J)+
  338. & 2.0D0*XG*TRAV(I,J)
  339. ENDDO
  340. ENDDO
  341.  
  342. C On calcul le denominateur du multiplicateur plastique
  343. XT1 = 0.0D0
  344. DO I=1,3
  345. DO J=1,3
  346. XT1 = XT1 + TERME1(I,J)*TERME5(I,J)
  347. ENDDO
  348. ENDDO
  349.  
  350. XT2 = 0.0D0
  351. DO I=1,3
  352. DO J=1,3
  353. XT2 = XT2 + TERME3(I,J)*TERME4(I,J)
  354. ENDDO
  355. ENDDO
  356.  
  357. C Calcul du multiplicateur plastique
  358. XLAM = XFPI/(XDT*XT1 + GAMMA1*XT2)
  359.  
  360. C On actualisatise X et sigpi
  361. DO I=1,3
  362. DO J=1,3
  363. SIGPI(I,J)=SIGPI(I,J)-XDT*XLAM*TERME5(I,J)
  364. X(I,J)=X(I,J)-GAMMA1*XLAM*TERME4(I,J)
  365. ENDDO
  366. ENDDO
  367.  
  368. C On recalcule le nouveau seuil
  369. DO I=1,3
  370. DO J=1,3
  371. SIGMOX(I,J) = 0.0D0
  372. SIGMOX(I,J) = SIGPI(I,J)-X(I,J)
  373. ENDDO
  374. ENDDO
  375.  
  376. CALL I2(SIGMOX,XFPI)
  377.  
  378. ENDIF
  379.  
  380. ENDDO
  381.  
  382. 400 CONTINUE
  383.  
  384.  
  385. C On calcul epspi
  386. TRA_SE = SIGPI(1,1)+SIGPI(2,2)+SIGPI(3,3)
  387. CALL DEVIAT(SIGPI,TRAV)
  388.  
  389. TRAPI = (TRA-TRADN) - (TRA_SE/(XDT*3.0D0*XK))
  390.  
  391. DO I=1,3
  392. DO J=1,3
  393. EPSPIDEV(I,J) = (EPSDEV(I,J)-DEPSN(I,J))-
  394. & (1.0D0/(2.0D0*XG*XDT))*TRAV(I,J)
  395. ENDDO
  396. ENDDO
  397.  
  398. DO I=1,3
  399. DO J=1,3
  400. EPSPI(I,J) = (TRAPI/3.0D0)*UNIT(I,J)+EPSPIDEV(I,J)
  401. ENDDO
  402. ENDDO
  403.  
  404. ENDIF
  405. C
  406. C-----CONTRAINTES ACTUALISEE
  407. C
  408. TRA1 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  409.  
  410. IF (XBEN.GE.0.0D0) THEN
  411.  
  412. 752 CONTINUE
  413.  
  414. DO I=1,3
  415. DO J=1,3
  416. SIGMA1(I,J)=XK*(TRA-XDT*TRAPI-TRADN)*UNIT(I,J)+
  417. & 2.0D0*XG*
  418. & (EPSDEV(I,J)-XDT*EPSPIDEV(I,J)-DEPSN(I,J))
  419. ENDDO
  420. ENDDO
  421.  
  422. ELSEIF (XBEN.LE.SIGRF) THEN
  423.  
  424. C La contrainte effective
  425. DO I=1,3
  426. DO J=1,3
  427. SIGMA1(I,J)=XK*(TRA-TRADN)*UNIT(I,J)+
  428. & 2.0D0*XG*(EPSDEV(I,J)-DEPSN(I,J))
  429. ENDDO
  430. ENDDO
  431.  
  432. C On verifie le seuile de plasticite
  433. CALL J2(SIGMA1,TEMP1)
  434.  
  435. TEMP2 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  436.  
  437. TEMP2 = TEMP2/3.00
  438.  
  439. XFP = XAF*TEMP1+XBF*TEMP2 - (XFC + XECO)
  440.  
  441. C On verifie la positivite du seuil
  442. IF (XFP.GT.0.0D0) THEN
  443.  
  444. C On retient la valeur initiale pour le critere relatif
  445. XFP0 = XFP
  446.  
  447. C On commence les choses serieuses
  448. DO NP=1,IMAX
  449.  
  450. C La derivee du critere
  451. CALL DI2(SIGMA1,XDJ2P)
  452.  
  453. DO I=1,3
  454. DO J=1,3
  455. XDFP(I,J) = XAF*XDJ2P(I,J)+XBF*UNIT(I,J)/3.0D0
  456. XDGP(I,J) = XAG*XDJ2P(I,J)+XBG*UNIT(I,J)/3.0D0
  457. ENDDO
  458. ENDDO
  459.  
  460. C Le hessien elasique
  461. CALL DEVIAT(XDGP,DEVGP)
  462.  
  463. XTGP = XDGP(1,1)+XDGP(2,2)+XDGP(3,3)
  464.  
  465. DO I=1,3
  466. DO J=1,3
  467. TRAV(I,J)=0.0D0
  468. TRAV(I,J)=XK*XTGP*UNIT(I,J)+2.0D0*XG*DEVGP(I,J)
  469. ENDDO
  470. ENDDO
  471.  
  472. C La derivee de l ecrouissage
  473. XTEMP= EXP(-1.0D0*XBC*XDPP)*(XAC-(XAC*XDPP+XFC+XSIGU)*XBC)
  474.  
  475. C Le critere actuel
  476.  
  477. CALL J2(SIGMA1,TEMP1)
  478.  
  479. TEMP2 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  480.  
  481. TEMP2 = TEMP2/3.00
  482.  
  483. XFP = XAF*TEMP1+XBF*TEMP2 - (XFC + XECO)
  484.  
  485. C Le multiplicateur plastique
  486. CALL DBLECONT(XDFP,TRAV,TEMP9)
  487.  
  488. XLAMP = XFP/(TEMP9+XTEMP)
  489.  
  490. C Actualisation des variables internes
  491. XECO = XECO + XLAMP*XTEMP
  492.  
  493. XDPP = XDPP + XLAMP
  494.  
  495. DO I=1,3
  496. DO J=1,3
  497. DEFN(I,J)=DEFN(I,J) + XLAMP*XDGP(I,J)
  498. ENDDO
  499. ENDDO
  500.  
  501. DO I=1,3
  502. DO J=1,3
  503. SIGMA1(I,J)=SIGMA1(I,J) - XLAMP*TRAV(I,J)
  504. ENDDO
  505. ENDDO
  506.  
  507. C On calcul le seuil pour un eventuel arret
  508. CALL J2(SIGMA1,TEMP1)
  509. TEMP2 = SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3)
  510. TEMP2 = TEMP2/3.00
  511.  
  512. XFP = XAF*TEMP1+XBF*TEMP2 - (XFC + XECO)
  513.  
  514. C Le critere d arret des iterations internes
  515. IF ((ABS(XFP/XFP0).LE.(1.0D-8)).OR.(NP.GE.IMAX)) THEN
  516.  
  517. GOTO 294
  518.  
  519. ENDIF
  520.  
  521.  
  522. ENDDO
  523.  
  524. 294 CONTINUE
  525.  
  526. ENDIF
  527.  
  528. ELSE
  529.  
  530. C Calcul du deviateur de DEFN
  531. CALL DEVIAT(DEFN,DEPSN)
  532.  
  533. C Calcul de la trace de DEFN
  534. TRADN = DEFN(1,1)+DEFN(2,2)+DEFN(3,3)
  535.  
  536. TRASIG1 = 3.0D0*XK*(TRA-XDT*TRAPI-TRADN)/
  537. & (1.0D0-(3.0D0*XK/SIGRF)*XDT*TRAPI)
  538.  
  539. DO I=1,3
  540. DO J=1,3
  541. SIG1DEV(I,J)=2.00D0*XG*(EPSDEV(I,J)-XDT*EPSPIDEV(I,J)*
  542. & (1.0D0-(TRASIG1/SIGRF))-DEPSN(I,J))
  543. ENDDO
  544. ENDDO
  545.  
  546. DO I=1,3
  547. DO J=1,3
  548. SIGMA1(I,J)=TRASIG1*UNIT(I,J)/3.0D0+SIG1DEV(I,J)
  549. ENDDO
  550. ENDDO
  551.  
  552. ENDIF
  553.  
  554. 101 CONTINUE
  555.  
  556.  
  557. IF (ABS(SIGMA1(1,1)).GE.1.0D50) THEN
  558. print*,'TRASIG1',TRASIG1
  559. print*,'QUANT=',(1.0D0-(3.0D0*XK/SIGRF)*XDT*TRAPI)
  560. print*,'HEHEF=',(TRA-XDT*TRAPI-TRADN)
  561. print*,'XEXEF=',TRAPI
  562. print*,'XEXEF=',TRADN
  563. print*,'FEFEF=',XDT
  564. print*,'TRA=',TRA
  565. print*,'DEPST',(DEPST(I),I=1,6)
  566. ENDIF
  567. C
  568. C-----CALCUL DE L ENDOMMAGEMENT EFFECTIF (GRANDEUR INDICATIVE)
  569. C-----PAS DE SENS THERMO
  570. C
  571. XFSIG = 1.0D0-(SIGMA1(1,1)+SIGMA1(2,2)+SIGMA1(3,3))/SIGRF
  572.  
  573. IF ((XFSIG.LE.1.0D0).AND.(XFSIG.GE.0.0D0)) THEN
  574. XDEFF = XDT*XFSIG
  575. ELSE
  576. XDEFF = XDT
  577. ENDIF
  578.  
  579. 444 CONTINUE
  580.  
  581. IF (ABS(SIGMA1(3,3)).LE.1.0D0) THEN
  582.  
  583. GOTO 678
  584.  
  585. ELSE
  586.  
  587. DEPST(3) = -SIGMA1(3,3)/XE
  588. IF (ABS(DEPST(3)).GE.1.0D10) THEN
  589. print*,'SIGMA1(3,3)=',SIGMA1(3,3)
  590. print*,'soucis d actualisation'
  591. print*,'XE=',XE
  592. print*,'DPEST3',DEPST(3)
  593.  
  594.  
  595. ENDIF
  596.  
  597. VAR0(18) = EPSI(3,3)
  598.  
  599. C Tenseur de glissement interne
  600. VAR0(2) = EPSPI(1,1)
  601. VAR0(3) = EPSPI(2,2)
  602. VAR0(4) = EPSPI(3,3)
  603. VAR0(5) = EPSPI(1,2)
  604. VAR0(6) = EPSPI(1,3)
  605. VAR0(7) = EPSPI(2,3)
  606.  
  607. C Tenseur de la contrainte de rappel
  608. VAR0(8) = X(1,1)
  609. VAR0(9) = X(2,2)
  610. VAR0(10) = X(3,3)
  611. VAR0(11) = X(1,2)
  612. VAR0(12) = X(1,3)
  613. VAR0(13) = X(2,3)
  614.  
  615. C Tenseur des deformations plastiques
  616. VAR0(35) = DEFN(1,1)
  617. VAR0(36) = DEFN(2,2)
  618. VAR0(37) = DEFN(3,3)
  619. VAR0(38) = DEFN(1,2)
  620. VAR0(39) = DEFN(1,3)
  621. VAR0(40) = DEFN(2,3)
  622.  
  623. C Endommagement
  624. VAR0(14) = XDT
  625.  
  626. C Force associee a l ecrouissage isotrope
  627. VAR0(15) = XFFT
  628.  
  629. C Contraintes tests
  630. VAR0(22) = SIGMA1(1,1)
  631. VAR0(23) = SIGMA1(2,2)
  632. VAR0(24) = SIGMA1(3,3)
  633. VAR0(25) = SIGMA1(1,2)
  634. VAR0(26) = SIGMA1(1,3)
  635. VAR0(27) = SIGMA1(2,3)
  636.  
  637. C Ecrouissage plastique
  638. VAR0(41) = XECO
  639.  
  640. C Deformation plastique cumulee
  641. VAR0(42) = XDPP
  642.  
  643. ENDIF
  644.  
  645. ENDDO
  646.  
  647. 678 CONTINUE
  648.  
  649. C
  650. C-----STOCKAGE DES CONTRAINTES AVEC SYMMETRISATION POUR ROBUSTESSE
  651. C-----ON MET SIG_33 BIEN QU ELLE SOIT CALCULEE A UNE TOL. PRES
  652. C
  653. SIGF(1)= SIGMA1(1,1)
  654. SIGF(2)= SIGMA1(2,2)
  655. SIGF(3)= SIGMA1(3,3)*0.0D0
  656. SIGF(4)= (SIGMA1(1,2)+SIGMA1(2,1))/2.0D0
  657.  
  658. C
  659. C-----STOCKAGE DES DEFORMATIONS DE GLISSEMENT
  660. C
  661. VARF(2)=EPSPI(1,1)
  662. VARF(3)=EPSPI(2,2)
  663. VARF(4)=EPSPI(3,3)
  664. VARF(5)=EPSPI(1,2)
  665. VARF(6)=EPSPI(1,3)
  666. VARF(7)=EPSPI(2,3)
  667. C
  668. C-----TENSEUR DES DEFORMATIONS PLASTIQUES
  669. C
  670. VARF(35) = DEFN(1,1)
  671. VARF(36) = DEFN(2,2)
  672. VARF(37) = DEFN(3,3)
  673. VARF(38) = DEFN(1,2)
  674. VARF(39) = DEFN(1,3)
  675. VARF(40) = DEFN(2,3)
  676. C
  677. C-----Ecrouissage plastique
  678. C
  679. VARF(41) = XECO
  680. C
  681. C-----Deformation plastique cumulee
  682. C
  683. VARF(42) = XDPP
  684. C
  685. C-----STOCKAGE DE L ECROUISSAGE CINEMATIQUE
  686. C
  687. VARF(8)=X(1,1)
  688. VARF(9)=X(2,2)
  689. VARF(10)=X(3,3)
  690. VARF(11)=X(1,2)
  691. VARF(12)=X(1,3)
  692. VARF(13)=X(2,3)
  693. C
  694. C-----STOCKAGE DES CONTRAINTES TESTS
  695. C
  696. VARF(22)=SIGMA1(1,1)
  697. VARF(23)=SIGMA1(2,2)
  698. VARF(24)=SIGMA1(3,3)
  699. VARF(25)=SIGMA1(1,2)
  700. VARF(26)=SIGMA1(1,3)
  701. VARF(27)=SIGMA1(2,3)
  702. C
  703. C-----STOCKAGE DES CONTRAINTES TESTS
  704. C
  705. VARF(29)=SIGPI(1,1)
  706. VARF(30)=SIGPI(2,2)
  707. VARF(31)=SIGPI(3,3)
  708. VARF(32)=SIGPI(1,2)
  709. VARF(33)=SIGPI(1,3)
  710. VARF(34)=SIGPI(2,3)
  711. C
  712. C-----ENDOMMAGEMENT EFFECTIF
  713. C
  714. VARF(28) = XDEFF
  715. C
  716. C-----STOCKAGE DE L ENDOMMAGEMENT
  717. C
  718. VARF(14) = XDT
  719. C
  720. C-----STOCKAGE DES FORCES THERMODYNAMIQUES ASSOCIEES A L ECROUISSAGE ISOTROPE
  721. C
  722. VARF(15) = XFFT
  723. C
  724. C-----STOCKAGE DES DEFORMATIONS TOTALES
  725. C
  726. VARF(16)=EPSI(1,1)
  727. VARF(17)=EPSI(2,2)
  728. VARF(18)=EPSI(3,3)
  729. VARF(19)=EPSI(1,2)
  730. VARF(20)=EPSI(1,3)
  731. VARF(21)=EPSI(2,3)
  732. C
  733. C-----BALISE DE SORTIE POUR LE NON LOCAL
  734. C
  735. 2000 CONTINUE
  736.  
  737. RETURN
  738. END
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  

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