Télécharger ric3nl.eso

Retour à la liste

Numérotation des lignes :

  1. C RIC3NL SOURCE BP208322 17/03/01 21:18:05 9325
  2. C sub ricnl3d
  3. SUBROUTINE RIC3NL(wrk52,wrk53,wrk54,nvari,iecou)
  4. C
  5. C====&===1=========2=========3=========4=========5=========6=========7==
  6. C Commentaires : Subroutine permettant de mettre en oeuvre le
  7. C modele RICRAG (F. Ragueneau & B. Richard) pour représenter
  8. C le comportement 3D d'un béton ordinaire sous
  9. C sollicitations complexes en non local
  10. C Traits : - Endommagement scalaire
  11. C - Glissement frottant
  12. C - 3D
  13. C - Monotone et cyclique
  14. C - Non localité portant sur le seuil d'endommagement (Fd)
  15. C - Bon comportement unilatteral
  16. C Auteurs : B. Richard (doctorant) & F. Ragueneau (LCPC, FDOA & BCC)
  17. C Date : Mai 2008
  18. C====&===1=========2=========3=========4=========5=========6=========7==
  19. C
  20. C-----DECLARATION GENERALE----------------------------------------------
  21. C
  22. IMPLICIT REAL*8(A-H,O-Z)
  23. C
  24. C-----LISTE DES INCLUDES A CHARGER--------------------------------------
  25. C
  26. -INC CCOPTIO
  27. -INC DECHE
  28. -INC CCREEL
  29. C
  30. C-----DECLARATION GENERALE----------------------------------------------
  31. C
  32. C REAL*8 XMAT(9),VAR0(30),VARF(30),SIGF(6),DEPST(6)
  33. REAL*8 XZER,UN,DEUX,EPSI(3,3)
  34. REAL*8 E,NU,FT,ALIND,GAMMA1,A1,ALDIR
  35. REAL*8 EPS0,K,G,Y0,DEPSDEV(3,3),DTRA
  36. REAL*8 UNIT(3,3),DEPSI(3,3),EPSTFBIS(6)
  37. REAL*8 EPSIPI(3,3),ALPHA(3,3),Z,D,DONMDNL,DONMINL,FFFZ,DOLD,FORCED
  38. REAL*8 FORCEI,NRUPT,SEUILT,DEVPI(3,3)
  39. REAL*8 TRA,EPSDEV(3,3),SIGMA(3,3),VPEPS(3),SEUIL1NL
  40. REAL*8 YD,YN,EPSDIR(3,3),EPSIND(3,3),Dn
  41. REAL*8 SIGMPI(3,3),SIGMOD(3,3),SIGMOX(3,3),X(3,3),TERME6(3,3)
  42. REAL*8 TERME7(3,3),TERME8(3,3),TERME9(3,3),TROGO,DEVTRO(3,3)
  43. REAL*8 DEVDGS(3,3)
  44. C CHARACTER*8 CMATE
  45. C
  46. C-----DEFINITION DE PARAMETRES------------------------------------------
  47. C
  48. PARAMETER (XZER=0.0D0 , UN=1.0D0 , DEUX=2.0D0, XCOEF=0.00D0)
  49. C
  50. C-----OUVERTURE DE SEGMENTS DE TRAVAIL----------------------------------
  51. C
  52. C SEGMENT WRK0
  53. C REAL*8 XMAT(NMATT)
  54. C ENDSEGMENT
  55. C
  56. C SEGMENT WRK1
  57. C REAL*8 DDHOOK(LHOOK,LHOOK),SIG0(NSTRS),DEPST(NSTRS)
  58. C REAL*8 SIGF(NSTRS),VAR0(NVARI),VARF(NVARI)
  59. C REAL*8 DEFP(NSTRS),XCAR(ICARA)
  60. C ENDSEGMENT
  61. C
  62. C SEGMENT WRK5
  63. C REAL*8 EPIN0(NSTRS),EPINF(NSTRS),EPST0(NSTRS)
  64. C ENDSEGMENT
  65. C
  66. C-----MISE EN DONNEE----------------------------------------------------
  67. C
  68. CMATE='ISOTROPE'
  69. E = XMAT(1)
  70. NU = XMAT(2)
  71. FT = XMAT(5)
  72. ALIND = XMAT(6)
  73. GAMMA1 = XMAT(7)
  74. A1 = XMAT(8)
  75. ALDIR = XMAT(9)
  76.  
  77. EPS0 = FT/E
  78. K = E/(1.D0-2.D0*NU)
  79. G = E/(2.D0*(1.D0+NU))
  80. Y0 = (K/6.0D0*EPS0**2.D0)
  81.  
  82. DO I=1,3
  83. DO J=1,3
  84. IF (I.EQ.J) THEN
  85. UNIT(I,J)=UN
  86. ELSE
  87. UNIT(I,J)=XZER
  88. ENDIF
  89. ENDDO
  90. ENDDO
  91. C
  92. C-----PASSAGE DES VARIABLES INTERNES------------------------------------
  93. C
  94.  
  95. C
  96. C GLISSEMENT (EPSILON_PI)
  97. C
  98. EPSIPI(1,1)=VAR0(2)
  99. EPSIPI(2,2)=VAR0(3)
  100. EPSIPI(3,3)=VAR0(4)
  101.  
  102. EPSIPI(1,2)=VAR0(5)
  103. EPSIPI(1,3)=VAR0(6)
  104. EPSIPI(2,3)=VAR0(7)
  105.  
  106. EPSIPI(2,1)=VAR0(5)
  107. EPSIPI(3,1)=VAR0(6)
  108. EPSIPI(3,2)=VAR0(7)
  109. C
  110. C ECROUISSAGE CINEMATIQUE (ALPHA)
  111. C
  112. ALPHA(1,1)=VAR0(8)
  113. ALPHA(2,2)=VAR0(9)
  114. ALPHA(3,3)=VAR0(10)
  115. C
  116. ALPHA(1,2)=VAR0(11)
  117. ALPHA(1,3)=VAR0(12)
  118. ALPHA(2,3)=VAR0(13)
  119. C
  120. ALPHA(2,1)=VAR0(11)
  121. ALPHA(3,1)=VAR0(12)
  122. ALPHA(3,2)=VAR0(13)
  123. C
  124. C ENDOMMAGEMENT (D)
  125. C
  126. D=VAR0(14)
  127. C
  128. C FORCE ECROUISSAGE ISOTROPE
  129. C
  130. FFFZ=VAR0(17)
  131. C
  132. C DEFORMATION TOTALE MISE DANS EPSI
  133. C
  134. DO I=1,6
  135. EPSTFBIS(I)=VAR0(18+I)+DEPST(I)
  136. ENDDO
  137.  
  138. DO I=1,3
  139. EPSI (I,I)=VAR0(18+I)+DEPST(I)
  140. DEPSI(I,I)=DEPST(I)
  141. ENDDO
  142.  
  143. EPSI(1,2)=VAR0(22)+DEPST(4)/2.0D0
  144. EPSI(1,3)=VAR0(23)+DEPST(5)/2.0D0
  145. EPSI(2,3)=VAR0(24)+DEPST(6)/2.0D0
  146. EPSI(2,1)=VAR0(22)+DEPST(4)/2.0D0
  147. EPSI(3,1)=VAR0(23)+DEPST(5)/2.0D0
  148. EPSI(3,2)=VAR0(24)+DEPST(6)/2.0D0
  149.  
  150. DEPSI(1,2)=DEPST(4)/2.0D0
  151. DEPSI(1,3)=DEPST(5)/2.0D0
  152. DEPSI(2,3)=DEPST(6)/2.0D0
  153. DEPSI(2,1)=DEPST(4)/2.0D0
  154. DEPSI(3,1)=DEPST(5)/2.0D0
  155. DEPSI(3,2)=DEPST(6)/2.0D0
  156.  
  157. SIGMA(1,1)=SIG0(1)
  158. SIGMA(2,2)=SIG0(2)
  159. SIGMA(3,3)=SIG0(3)
  160. SIGMA(1,2)=SIG0(4)
  161. SIGMA(1,3)=SIG0(5)
  162. SIGMA(2,3)=SIG0(6)
  163. SIGMA(2,1)=SIG0(4)
  164. SIGMA(3,1)=SIG0(5)
  165. SIGMA(3,2)=SIG0(6)
  166. C
  167. C ECROUISSAGE
  168. C
  169. FORCED = VAR0(25)
  170. FORCEI = VAR0(26)
  171. C
  172. C MATRICE DE HOOKE
  173. C
  174. AUX0=E/((UN+NU)*(UN-NU-NU))
  175. AUX=AUX0*(UN-NU)
  176. AUX1=AUX0*NU
  177. XGEGE=0.5D0*E/(UN+NU)
  178.  
  179. DDHOOK(1,1)=AUX
  180. DDHOOK(2,1)=AUX1
  181. DDHOOK(3,1)=AUX1
  182.  
  183. DDHOOK(1,2)=AUX1
  184. DDHOOK(2,2)=AUX
  185. DDHOOK(3,2)=AUX1
  186.  
  187. DDHOOK(1,3)=AUX1
  188. DDHOOK(2,3)=AUX1
  189. DDHOOK(3,3)=AUX
  190.  
  191. DDHOOK(4,4)=XGEGE
  192. DDHOOK(5,5)=XGEGE
  193. DDHOOK(6,6)=XGEGE
  194. C-----------------------------------------------------------------------
  195. C-----DEBUT INTEGRATION NUMERIQUE---------------------------------------
  196. C-----------------------------------------------------------------------
  197. TRA = EPSI(1,1)+EPSI(2,2)+EPSI(3,3)
  198. DTRA = DEPSI(1,1)+DEPSI(2,2)+DEPSI(3,3)
  199.  
  200. DO I=1,3
  201. DO J=1,3
  202. EPSDEV(I,J) = EPSI(I,J)-TRA*UNIT(I,J)/3.0D0
  203. DEPSDEV(I,J) = DEPSI(I,J)-DTRA*UNIT(I,J)/3.0D0
  204. ENDDO
  205. ENDDO
  206.  
  207. DO I=1,3
  208. DO J=1,3
  209. SIGMA(I,J)=SIGMA(I,J)+K/3.0D0*DTRA+2.0D0*G*DEPSDEV(I,J)
  210. ENDDO
  211. ENDDO
  212. C
  213. C-----ENDOMMAGEMENT------------------------------------------------------
  214. C
  215.  
  216. C
  217. C CALCUL DES VALEURS PRINCIPALES
  218. C
  219. CALL JACOD3(EPSI ,3,VPEPS)
  220. C
  221. C CALCUL DE EPSILON DIRECT
  222. C
  223. IF (TRA.GE.XZER) THEN
  224. XPDC=1.0D0
  225. c GAMMA1 = 7.0D8
  226. c A1 = 7.0D-5
  227. ELSE
  228. XPDC=XZER
  229. ENDIF
  230.  
  231. DO I=1,3
  232. DO J=1,3
  233. IF (I.EQ.J) THEN
  234. EPSDIR(I,J)=0.5D0*(ABS(VPEPS(I))+VPEPS(I))*XPDC
  235. ELSE
  236. EPSDIR(I,J)=XZER
  237. ENDIF
  238. ENDDO
  239. ENDDO
  240. C
  241. C CALCUL DE EPSILON INDUIT
  242. C
  243. DO I=1,3
  244. DO J=1,3
  245. IF (I.EQ.J) THEN
  246. EPSIND(I,J)=0.5D0*(ABS(VPEPS(I))+VPEPS(I))-EPSDIR(I,J)
  247. ELSE
  248. EPSIND(I,J)=XZER
  249. ENDIF
  250. ENDDO
  251. ENDDO
  252. C
  253. C TAUX D ENERGIES CORRESPONDANTES
  254. C
  255. DONMDNL=XZER
  256. DONMINL=XZER
  257.  
  258. DO I=1,3
  259. DO J=1,3
  260. DONMDNL=DONMDNL+(K/6.0D0)*EPSDIR(I,J)*EPSDIR(I,J)
  261. DONMINL=DONMINL+(K/6.0D0)*EPSIND(I,J)*EPSIND(I,J)
  262. ENDDO
  263. ENDDO
  264.  
  265. * YNP = (K/6.0D0)*((ABS(TRA)+TRA)*0.5D0)**2.0D0
  266. * YNN = (K/6.0D0)*((-ABS(TRA)+TRA)*0.5D0)**2.0D0
  267.  
  268.  
  269. * YDD = 0.0D0
  270. * DO I=1,3
  271. * DO J=1,3
  272. * YDD = YDD + G*EPSDEV(I,J)*EPSDEV(I,J)
  273. * ENDDO
  274. * ENDDO
  275.  
  276. * SEUIL1NL = 50.0D0*YNP + YDD - YNN*0.000D0
  277.  
  278. * Y0 = Y0 * 5.0D0
  279.  
  280. SEUIL1NL=DONMDNL*XPDC+DONMINL*(1.0D0-XPDC)
  281.  
  282. IF (ISTEP.EQ.0) THEN
  283. SEUIL1=SEUIL1NL
  284. VARF(1)=SEUIL1
  285. ELSE IF (ISTEP.EQ.1) THEN
  286. VARF(1)=SEUIL1NL
  287. DO I=2,26
  288. VARF(I)=VAR0(I)
  289. ENDDO
  290. GOTO 2000
  291. ELSE IF (ISTEP.EQ.2) THEN
  292. SEUIL1=VAR0(1)
  293. VARF(1)=SEUIL1
  294. ENDIF
  295. C
  296. C CALCUL NON LOCAL - ON MOYENNE LE SEUIL
  297. C
  298. FFFZ=FORCED*XPDC+FORCEI*(1.0D0-XPDC)
  299. SEUILT=SEUIL1-(FFFZ+Y0)
  300. C
  301. C EVOLUTION ENDOMMAGEMENT
  302. C
  303. IF (SEUILT.GT.XZER) THEN
  304. IF (TRA.GE.XZER) THEN
  305. Dn = 1.0D0-1.0D0/(1.0D0+ALDIR*(SEUIL1-Y0))
  306. FORCED = SEUIL1-Y0
  307. ELSE
  308. Dn = 1.0D0-1.0D0/(1.0D0+ALIND*(SEUIL1-Y0))
  309. FORCEI = SEUIL1-Y0
  310. ENDIF
  311. C
  312. C ON VERIFIE D COISSANT
  313. C
  314. IF (Dn.GE.D) THEN
  315. D=Dn
  316. ENDIF
  317. C
  318. C ON LIMITE LA VALEUR DE D
  319. C
  320. IF (D.GE.0.99999D0) THEN
  321. D=0.99999D0
  322. ENDIF
  323. C
  324. C ON BLOQUE LES ECROUISSAGES
  325. C
  326. FFFZ=FORCED*XPDC+FORCEI*(1.0D0-XPDC)
  327. ENDIF
  328.  
  329. DO I=1,3
  330. DO J=1,3
  331. X(I,J)=GAMMA1*ALPHA(I,J)
  332. ENDDO
  333. ENDDO
  334. C
  335. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  336. C
  337. C SUBSTEPPING
  338. C
  339. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  340. C
  341. NENTIER=100
  342. DO KIN=1,NENTIER
  343.  
  344. DO I=1,6
  345. EPSTFBIS(I)=VAR0(18+I)+KIN*DEPST(I)/NENTIER
  346. ENDDO
  347.  
  348. EPSI(1,1)=EPSTFBIS(1)
  349. EPSI(2,2)=EPSTFBIS(2)
  350. EPSI(3,3)=EPSTFBIS(3)
  351. EPSI(1,2)=EPSTFBIS(4)/2.0D0
  352. EPSI(1,3)=EPSTFBIS(5)/2.0D0
  353. EPSI(2,3)=EPSTFBIS(6)/2.0D0
  354. EPSI(2,1)=EPSTFBIS(4)/2.0D0
  355. EPSI(3,1)=EPSTFBIS(5)/2.0D0
  356. EPSI(3,2)=EPSTFBIS(6)/2.0D0
  357.  
  358. TRA=EPSI(1,1)+EPSI(2,2)+EPSI(3,3)
  359.  
  360. TRAPI = EPSIPI(1,1)+EPSIPI(2,2)+EPSIPI(3,3)
  361.  
  362. DO I=1,3
  363. DO J=1,3
  364. EPSDEV(I,J)=EPSI(I,J)-(1.0D0/3.0D0)*TRA*UNIT(I,J)
  365. DEVPI(I,J)=EPSIPI(I,J)-(1.0D0/3.0D0)*TRAPI*UNIT(I,J)
  366. ENDDO
  367. ENDDO
  368.  
  369. DO I=1,3
  370. DO J=1,3
  371. SIGMA(I,J) = (1.0D0-D)*K*TRA*UNIT(I,J)/3.0D0+
  372. & (1.0D0-D)*2.0D0*G*EPSDEV(I,J)+
  373. & (K/3.0D0)*D*(TRA-TRAPI)*UNIT(I,J)+
  374. & 2.0D0*G*D*(EPSDEV(I,J)-DEVPI(I,J))
  375. ENDDO
  376. ENDDO
  377.  
  378. DO I=1,3
  379. DO J=1,3
  380. SIGMPI(I,J)=(K/3.0D0)*D*(TRA-TRAPI)*UNIT(I,J)+
  381. & 2.0D0*G*D*(EPSDEV(I,J)-DEVPI(I,J))
  382. ENDDO
  383. ENDDO
  384. C
  385. C====&===1=========2=========3=========4=========5=========6=========7==
  386. C-----DEBUT INTEGRATION GLISSEMENT--------------------------------------
  387. C====&===1=========2=========3=========4=========5=========6=========7==
  388. C
  389. DO 500 IREMP=1,500
  390. C
  391. C 1) EVALUATION DU SEUIL
  392. C ----------------------
  393. DO 101 I=1,3
  394. DO 201 J=1,3
  395. SIGMOX(I,J)=XZER
  396. SIGMOX(I,J)=SIGMPI(I,J)-X(I,J)
  397. 201 CONTINUE
  398. 101 CONTINUE
  399.  
  400. TRASX=XZER
  401. TRASX=SIGMOX(1,1)+SIGMOX(2,2)+SIGMOX(3,3)
  402.  
  403. DO 102 I=1,3
  404. DO 202 J=1,3
  405. SIGMOD(I,J)=XZER
  406. SIGMOD(I,J)=SIGMOX(I,J)-(1.0D0/3.0D0)*TRASX*UNIT(I,J)
  407. 202 CONTINUE
  408. 102 CONTINUE
  409.  
  410. TERME4=XZER
  411. DO 103 I=1,3
  412. DO 203 J=1,3
  413. TERME4=TERME4+SIGMOD(I,J)*SIGMOD(I,J)
  414. 203 CONTINUE
  415. 103 CONTINUE
  416. C
  417. C CALCUL DU J2(SIGMPI-X)
  418. C
  419.  
  420. TRASIN = SIGMA(1,1)+SIGMA(2,2)+SIGMA(3,3)
  421. TRASIN = 0.5D0*(-ABS(TRASIN)+TRASIN)*0.0D0
  422.  
  423. TERME4=SQRT(3.D0/2.D0*TERME4)+(TRASIN/3.0D0)*0.80D0
  424.  
  425. SEUIL2=TERME4+XCOEF*(1.0D0/3.0D0)*TRASX
  426. IF (IREMP.EQ.1) THEN
  427. SEUINI=SEUIL2
  428. DLAM2=XZER
  429. COCO=2
  430. ENDIF
  431.  
  432. IF (SEUINI.GT.1.0D0) THEN
  433. CRIT=SEUIL2/SEUINI
  434. ELSE
  435. CRIT=XZER
  436. ENDIF
  437. C
  438. C 2) ON VERIFIE LA VALEUR RELATIVE DU SEUIL
  439. C -----------------------------------------
  440. IF ((CRIT.LE.1.0D-5).OR.(DLAM2.LE.1.0D-10.AND.IREMP.GT.1).OR.
  441. & (D.EQ.XZER))THEN
  442. GOTO 666
  443. ELSE
  444. IF (IREMP.EQ.1) COCO=1
  445. C
  446. C 3) CALCUL DES DERIVÉES POUR LA REDESCENTE
  447. C -----------------------------------------
  448. DO I=1,3
  449. DO J=1,3
  450. TERME6(I,J)=XZER
  451. TERME7(I,J)=XZER
  452. TERME8(I,J)=XZER
  453. TERME9(I,J)=XZER
  454. ENDDO
  455. ENDDO
  456. C
  457. C CALCUL DE DF/DS....................................................
  458. C
  459. DO I=1,3
  460. DO J=1,3
  461. TERME6(I,J)=(3.D0/2.D0)*SIGMOX(I,J)/TERME4+XCOEF*1.0D0/3.D0*
  462. & UNIT(I,J)
  463. ENDDO
  464. ENDDO
  465. C
  466. C CALCUL DE DF/DX....................................................
  467. C
  468. DO I=1,3
  469. DO J=1,3
  470. TERME7(I,J)=-TERME6(I,J)
  471. ENDDO
  472. ENDDO
  473. C
  474. C CALCUL DE DG/DS....................................................
  475. C
  476. DO I=1,3
  477. DO J=1,3
  478. TERME8(I,J)=(3.D0/2.D0)*SIGMOX(I,J)/TERME4+XCOEF*1.0D0/3.D0*
  479. & UNIT(I,J)
  480. ENDDO
  481. ENDDO
  482. C
  483. C CALCUL DE DG/DX....................................................
  484. C
  485. DO I=1,3
  486. DO J=1,3
  487. TERME9(I,J)=-(3.D0/2.D0)*SIGMOX(I,J)/TERME4+A1*X(I,J)-
  488. & XCOEF*1.0D0/3.D0*UNIT(I,J)
  489. ENDDO
  490. ENDDO
  491. C
  492. C 4) CALCUL DU MULTIPLICATEUR DE GLISSEMENT
  493. C -----------------------------------------
  494. TRDGZ=TERME8(1,1)+TERME8(2,2)+TERME8(3,3)
  495.  
  496. DO I=1,3
  497. DO J=1,3
  498. DEVDGS(I,J)=TERME8(I,J)-(1.0D0/3.0D0)*TRDGZ*UNIT(I,J)
  499. ENDDO
  500. ENDDO
  501.  
  502. TERM10=XZER
  503. DO I=1,3
  504. DO J=1,3
  505. TERM10=TERM10+TERME6(I,J)*((K/3.0D0)*TRDGZ*UNIT(I,J)+
  506. & 2.0D0*G*DEVDGS(I,J))
  507. ENDDO
  508. ENDDO
  509.  
  510. TERM11=XZER
  511. DO I=1,3
  512. DO J=1,3
  513. TERM11=TERM11+TERME7(I,J)*TERME9(I,J)
  514. ENDDO
  515. ENDDO
  516.  
  517. DLAM2=SEUIL2/(TERM10+GAMMA1*TERM11)
  518. C
  519. C 5) ACTUALISATION DES VARIABLES FORCES
  520. C -------------------------------------
  521. DO I=1,3
  522. DO J=1,3
  523. SIGMPI(I,J)=SIGMPI(I,J)-DLAM2*D*((K/3.0D0)*TRDGZ*UNIT(I,J)+
  524. & 2.0D0*G*DEVDGS(I,J))
  525. ENDDO
  526. ENDDO
  527.  
  528. DO I=1,3
  529. DO J=1,3
  530. X(I,J)=X(I,J)-GAMMA1*DLAM2*TERME9(I,J)
  531. ENDDO
  532. ENDDO
  533.  
  534. ENDIF
  535. 500 CONTINUE
  536. C
  537. C-----ACTUALISATION DES VARIABLES FLUX (S'IL Y A LIEU)------------------
  538. C
  539. C 1) ALPHA :
  540. C -------
  541. 666 CONTINUE
  542. IF (COCO.EQ.1) THEN
  543. DO 303 I=1,3
  544. DO 403 J=1,3
  545. ALPHA(I,J)=XZER
  546. ALPHA(I,J)=X(I,J)/GAMMA1
  547. 403 CONTINUE
  548. 303 CONTINUE
  549. C
  550. C 2) EPSILON_PI :
  551. C ------------
  552. dplus=max(d,xpetit)
  553. TROGO = TRA-(SIGMPI(1,1)+SIGMPI(2,2)+SIGMPI(3,3))/(Dplus*K)
  554. DO I=1,3
  555. DO J=1,3
  556. DEVTRO(I,J)=EPSDEV(I,J)-(SIGMPI(I,J)-(1.0D0/3.0D0)*
  557. & (SIGMPI(1,1)+SIGMPI(2,2)+SIGMPI(3,3))*UNIT(I,J))/(2.0D0*G*Dplus)
  558. ENDDO
  559. ENDDO
  560.  
  561. DO I=1,3
  562. DO J=1,3
  563. EPSIPI(I,J)=(1.0D0/3.0D0)*TROGO*UNIT(I,J)+DEVTRO(I,J)
  564. ENDDO
  565. ENDDO
  566.  
  567. ENDIF
  568. C
  569. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  570. C
  571. ENDDO
  572. C
  573. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  574. C
  575.  
  576.  
  577.  
  578. C
  579. C-----CORRECTION DES CONTRAINTES
  580. C
  581. TRAPOS = 0.5D0*( ABS(TRA)+TRA)
  582. TRANEG = 0.5D0*(-ABS(TRA)+TRA)
  583.  
  584. DO I=1,3
  585. DO J=1,3
  586. SIGMA(I,J) = (1.0D0-D)*K*TRAPOS*UNIT(I,J)/3.0D0+
  587. & K*TRANEG*UNIT(I,J)/3.0D0+
  588. & (1.0D0-D)*2.0D0*G*EPSDEV(I,J)+
  589. & SIGMPI(I,J)
  590. ENDDO
  591. ENDDO
  592. C------------------------------------------------------------------------
  593. C-----FIN INTEGRATION NUMERIQUE------------------------------------------
  594. C------------------------------------------------------------------------
  595. SIGF(1)= SIGMA(1,1)
  596. SIGF(2)= SIGMA(2,2)
  597. SIGF(3)= SIGMA(3,3)
  598. SIGF(4)= (SIGMA(1,2)+SIGMA(2,1))/DEUX
  599. SIGF(5)= (SIGMA(1,3)+SIGMA(3,1))/DEUX
  600. SIGF(6)= (SIGMA(2,3)+SIGMA(3,2))/DEUX
  601. C
  602. C GLISSEMENT (EPSILON_PI)
  603. C
  604. VARF(2)=EPSIPI(1,1)
  605. VARF(3)=EPSIPI(2,2)
  606. VARF(4)=EPSIPI(3,3)
  607. VARF(5)=EPSIPI(1,2)
  608. VARF(6)=EPSIPI(1,3)
  609. VARF(7)=EPSIPI(2,3)
  610. C
  611. C ECROUISSAGE CINEMATIQUE (ALPHA)
  612. C
  613. VARF(8 )=ALPHA(1,1)
  614. VARF(9 )=ALPHA(2,2)
  615. VARF(10)=ALPHA(3,3)
  616. VARF(11)=ALPHA(1,2)
  617. VARF(12)=ALPHA(1,3)
  618. VARF(13)=ALPHA(2,3)
  619. C
  620. C ENDOMMAGEMENT (D)
  621. C
  622. VARF(14)=D
  623. C
  624. C FORCE LIEE A L ECROUISSAGE ISOTROPE
  625. C
  626. VARF(17)=FFFZ
  627. C
  628. C DEFORMATION TOTALE
  629. C
  630. DO I=1,6
  631. VARF(18+I)=EPSTFBIS(I)
  632. ENDDO
  633. C
  634. C ECROUISSAGES
  635. C
  636. VARF(25)=FORCED
  637. VARF(26)=FORCEI
  638. C
  639. C CONTRAINTES DE FROTTEMENT
  640. C
  641. * VARF(27)=SIGMPI(1,1)
  642. * VARF(28)=SIGMPI(2,2)
  643. * VARF(29)=SIGMPI(3,3)
  644. * VARF(30)=SIGMPI(1,3)
  645.  
  646. 2000 CONTINUE
  647.  
  648. RETURN
  649. END
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  

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