Télécharger ric3nl.eso

Retour à la liste

Numérotation des lignes :

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

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