Télécharger rouss.eso

Retour à la liste

Numérotation des lignes :

rouss
  1. C ROUSS SOURCE OF166741 25/11/04 21:16:06 12349
  2. SUBROUTINE ROUSS(DEPST,NSTRS,MFR,IB,IGAU,
  3. 1 DSIGT,NCOMAT,SIG0,VAR0,XMAT,XCAR,NVARI,icarb,
  4. 2 SIGF,VARF,DEFP,TRAC,KERRE,necou)
  5.  
  6. *_________________________________________________________________
  7. *
  8. *
  9. * ENTREES :
  10. * ---------
  11. *
  12. * DEPST = INCREMENT DE DEFORMATIONS TOTALES
  13. * NSTRS = NBRE DE COMPOSANTES DES DEFORMATIONS
  14. * NCOMAT= NBRE DE CARACTERISTIQUES MECANIQUES DU MATERIAU
  15. * MFR = NUMERO DE LA FORMULATION
  16. * IB = NUMERO DE L ELEMENT COURANT
  17. * IGAU = NUMERO DU POINT COURANT
  18. * NVARI = NBRE DE VARIABLES INTERNES
  19. * SIG0(NSTRS) = CONTRAINTES AU DEBUT DU PAS D'INTEGRATION
  20. * VAR0(NVARI) = VARIABLES INTERNES AU DEBUT DU PAS DE TEMPS
  21. * XMAT(NCOMAT) = CARACTERISTIQUES MECANIQUES DU MATERIAU
  22. * ICARB = NBRE DE CARACTERISTIQUES GEOMETRIQUES DES ELEMENTS FINIS
  23. * XCARA(ICARB) = CARACTERISTIQUES GEOMETRIQUES DES ELEMENTS FINIS
  24. * TRAC = COURBE DE TRACTION NON ENDOMMAGEE
  25. *
  26. * SORTIE :
  27. * --------
  28. *
  29. * SIGF(NSTRS) = CONTRAINTES FINALES
  30. * VARF(NVARI) = VARIALES INTERNES A LA FIN DU PAS D'INTEGRATION
  31. * DEFP(NSTRS) = INCREMENT DE DEFORMATION PLASTIQUE A LA FIN
  32. * DU PAS D'INTEGRATION
  33. * ============================================================
  34. * ICI IL FAUT PROGRAMMER EN FORTRAN PUR
  35. *=============================================================
  36.  
  37. IMPLICIT INTEGER(I-N)
  38. IMPLICIT REAL*8(A-H,O-Z)
  39.  
  40. -INC PPARAM
  41. -INC CCOPTIO
  42.  
  43. -INC TECOU
  44.  
  45. DIMENSION SIG0(*),DEPST(*),VAR0(*),XMAT(*),XCAR(*),SIGF(*),
  46. & VARF(*),DEFP(*),DSIGT(*),TRAC(*)
  47. DIMENSION RDEPS0(6)
  48. DIMENSION RSIG0(6),RDEPS(6),RSIGF(6),RDEFP(6),RDIGT(6)
  49. DIMENSION DEVT(6),SIGTC(6),DEFT(6),SIGT1(6)
  50. *
  51. * Adaptation de l'option de calcul vers le 3D massif de SIG0 a RSIG0
  52. *====================================================================
  53.  
  54. IF (MFR .EQ. 1 .OR. MFR .EQ. 31 .OR. MFR.EQ.63) THEN
  55. *---> 1 formulation massive
  56. *---> 2 formulation quasi incompressible
  57. *---> MASSIF 3D
  58. *
  59. IF (NSTRS .EQ. 6) THEN
  60. DO 110 I=1,NSTRS
  61. RSIG0(I)=SIG0(I)
  62. RDEPS0(I)=DEPST(I)
  63. 110 CONTINUE
  64. ELSE IF ( NSTRS .EQ. 4 .AND. ((IFOUR .EQ. 0)
  65. & .OR.(IFOUR .EQ. -1).OR.(IFOUR.EQ.-2))) THEN
  66. *
  67. *---> Calcul en mode deformations planes ou axisymetrique
  68. * ou contraintes planes
  69. *
  70. DO 115 I=1,NSTRS
  71. RSIG0(I)=SIG0(I)
  72. RDEPS0(I)=DEPST(I)
  73. 115 CONTINUE
  74. RSIG0(5)=0.D0
  75. RSIG0(6)=0.D0
  76. RDEPS0(5)=0.D0
  77. RDEPS0(6)=0.D0
  78. ENDIF
  79. ELSE
  80. KERRE = 99
  81. RETURN
  82. ENDIF
  83. *
  84. * Passage des deformations de cisaillement exprimées
  85. * en GAMA aux déformations de cisaillement exprimées
  86. * en déformations
  87. *
  88. DO 116 I=1,6
  89. RDEPS(I)=0.D0
  90. 116 CONTINUE
  91. RDEPS0(4)=RDEPS0(4)*0.5D0
  92. RDEPS0(5)=RDEPS0(5)*0.5D0
  93. RDEPS0(6)=RDEPS0(6)*0.5D0
  94.  
  95. * Données du materiau
  96. *===========================================================
  97. YOUNG=XMAT(1)
  98. XNU=XMAT(2)
  99. F0=XMAT(6)
  100. XD0=XMAT(7)
  101. SIG1=XMAT(8)
  102. FC0=XMAT(9)
  103. IF (F0.GE.1.D0) F0=3.D-4
  104. RMAX0=(1.D0-FC0)/(1.D0-F0)
  105. IF ((RMAX0.LE.1.D-5).OR.(RMAX0.GE.1.D0)) THEN
  106. RMAX0=1.D-5
  107. ENDIF
  108. *
  109. * Calculs préliminaires
  110. *===================================
  111. *
  112. *---> Module de cisaillement G0 et de pression hydro XK0
  113. *
  114. G0=YOUNG/(2.D0*(1.D0+XNU))
  115. XK0=YOUNG/(3.D0*(1.D0-(2.D0*XNU)))
  116. XLAM0=XK0-(2.D0*G0/3.D0)
  117. *
  118. * Début des sous incrémentations
  119. *===================================
  120. *
  121. recal0=-100.D0
  122. iter2=0
  123. nmax0=1
  124. *
  125. *---> Variables internes test
  126. *
  127. * - déformation plastique équivalente
  128. * - variable d'endommagement
  129. * - densité relative
  130. *
  131. 93 CONTINUE
  132. EPSPT=VAR0(1)
  133. BETAT=VAR0(2)
  134. RHOT=VAR0(3)
  135. *
  136. * - initialisation de RHOT à 1.
  137. *
  138. IF (RHOT.LT.1.D-30) THEN
  139. RHOT=1.D0
  140. VAR0(3)=1.D0
  141. ENDIF
  142. RHOT0=RHOT
  143. *
  144. * Contraintes planes
  145. * - on stocke les variables internes au début de
  146. * chaque sous incrémentation
  147. * - on stocke les déformations plastiques au début de
  148. * chaque sous incrémentation
  149. *
  150. IF (IFOUR.EQ.-2) THEN
  151. EPSPT1=EPSPT
  152. BETAT1=BETAT
  153. RHOT1=RHOT
  154. def1=0.D0
  155. def2=0.D0
  156. def3=0.D0
  157. rdeps3=0.D0
  158. ENDIF
  159. *
  160. * Contraintes planes
  161. * - on stocke les contraintes non endommagées au début de
  162. * chaque sous incrémentation
  163. *
  164. DO 171 I=1,6
  165. IF (RHOT0.GT.RMAX0) THEN
  166. SIGTC(I)=RSIG0(I)/RHOT0
  167. ELSE
  168. SIGTC(I)=0.D0
  169. XLAM0=0.D0
  170. G0=0.D0
  171. ENDIF
  172. IF (IFOUR.EQ.-2) SIGT1(I)=SIGTC(I)
  173. 171 CONTINUE
  174. IF (RHOT0.GT.RMAX0) THEN
  175. SMT0=(RSIG0(1)+RSIG0(2)+RSIG0(3))/(3.D0*RHOT0)
  176. ELSE
  177. SMT0=0.D0
  178. ENDIF
  179. IF (IFOUR.EQ.-2) SMT1=SMT0
  180. *
  181. * On divise le chargement pour les sous incrementations
  182. *
  183. 95 DO 118 I=1,6
  184. RDEPS(I)=RDEPS0(I)/nmax0
  185. 118 CONTINUE
  186. iter2=iter2+1
  187. *
  188. * Initialisations
  189. *===================================
  190. *
  191. iter1=0
  192. *
  193. *---> Calcul de la trace de l'incrément de déformation
  194. *
  195. IF (IFOUR.EQ.-2) THEN
  196. RDEPS(3)=-1.D0*(XNU/(1.D0-XNU))*(RDEPS(1)+RDEPS(2))
  197. ENDIF
  198. 98 CONTINUE
  199. treps0=RDEPS(1)+RDEPS(2)+RDEPS(3)
  200. *
  201. * Calculs des grandeurs élastiques test
  202. *====================================================
  203. *
  204. *---> Variables internes test: cas contraintes planes
  205. *
  206. * - déformation plastique équivalente
  207. * - variable d'endommagement
  208. * - densité relative
  209. *
  210. IF (IFOUR.EQ.-2) THEN
  211. EPSPT=EPSPT1
  212. BETAT=BETAT1
  213. RHOT=RHOT1
  214. ENDIF
  215. *
  216. *---> Calcul des contraintes test élastiques efficaces
  217. * et de l'incrément des déformations plastiques test au
  218. * cours du pas
  219. *
  220. DO 101 I=1,6
  221. A=0.D0
  222. IF (I.LE.3) A=XLAM0*treps0
  223. IF (IFOUR.EQ.-2) SIGTC(I)=SIGT1(I)
  224. SIGTC(I)=SIGTC(I)+(2.D0*G0*RDEPS(I))+A
  225. DEFT(I)=0.D0
  226. 101 CONTINUE
  227. *
  228. *---> Déviateur et contrainte moyenne test
  229. *
  230. SMT=(SIGTC(1)+SIGTC(2)+SIGTC(3))/3.D0
  231. DO 200 I=1,6
  232. A=0.D0
  233. IF (I.LE.3) A=SMT
  234. DEVT(I)=SIGTC(I)-A
  235. 200 CONTINUE
  236. *
  237. *---> Contrainte équivalente STEST
  238. *
  239. r_z1=(SIGTC(1)*SIGTC(1))+(SIGTC(2)*SIGTC(2))+(SIGTC(3)*SIGTC(3))
  240. r_z2=(SIGTC(1)*SIGTC(2))+(SIGTC(2)*SIGTC(3))+(SIGTC(3)*SIGTC(1))
  241. r_z3=(SIGTC(4)*SIGTC(4))+(SIGTC(5)*SIGTC(5))+(SIGTC(6)*SIGTC(6))
  242. STEST2=r_z1 - r_z2 + (3.D0*r_z3)
  243. IF (STEST2.LE.1.D-20) STEST2=0.D0
  244. Stest=SQRT(STEST2)
  245. *
  246. *---> Potentiel d'endommagement
  247. *
  248. BT0=F0*SIG1*EXP(BETAT)
  249. BT0=BT0/(1.D0-F0+(F0*EXP(BETAT)))
  250. DBT0=BT0*(1.D0-F0)/(1.D0-F0+(F0*EXP(BETAT)))
  251. Ftest=BT0*XD0*EXP(SMT/SIG1)
  252. *
  253. *---> Limite d'élasticité lue sur la courbe d'écrouissage
  254. *
  255. * - Recherche des valeurs de déformations plastiques équivalentes
  256. * encadrant la valeur courante
  257. *
  258. EPSM0=TRAC(2*NCOURB)
  259. IF (EPSPT.GE.EPSM0) THEN
  260. Y1=TRAC(2*NCOURB-1)
  261. Y2=TRAC(2*NCOURB-1)
  262. EPS1=EPSM0
  263. EPS2=2.D0*EPSM0
  264. ELSE
  265. DO 300 I=1,(NCOURB-1)
  266. EPS1=TRAC(2*I)
  267. EPS2=TRAC(2*(I+1))
  268. IF ((EPSPT.GE.EPS1).AND.(EPSPT.LT.EPS2)) THEN
  269. Y1=TRAC(2*I-1)
  270. Y2=TRAC(2*(I+1)-1)
  271. GOTO 96
  272. ENDIF
  273. 300 CONTINUE
  274. ENDIF
  275. *
  276. * - Limite d'élasticité
  277. *
  278. 96 H0=(Y2-Y1)/(EPS2-EPS1)
  279. Ytest=(H0*(EPSPT-EPS2))+Y2
  280. *
  281. *---> Fonction de charge test PHIT
  282. *
  283. PHIT=Stest-Ytest+Ftest
  284. *
  285. *
  286. * Vérification du critère de plasticité
  287. *=========================================================
  288. *
  289. *---> Erreur admise
  290. *
  291. ERR0=1.E-7*ABS(PHIT)
  292. ERR0=MAX(ERR0,1.D-8*TRAC(1))
  293. *
  294. *---> Critère de plasticité
  295. *
  296. PHI0=PHIT
  297. IF (RHOT.LE.RMAX0) PHI0=0.D0
  298. iter0=0
  299. *
  300. 99 IF (PHI0.LE.ERR0) THEN
  301. *
  302. * On est élastique
  303. *=========================================================
  304. *
  305. *--------------------------------------------------------------
  306. * Cas particulier des contraintes planes
  307. *--------------------------------------------------------------
  308. *
  309. IF (IFOUR.EQ.-2) THEN
  310. *
  311. *---> On vérifie qu'on est en contraintes planes
  312. *
  313. iter1=iter1+1
  314. SIG3=ABS(SIGTC(3))
  315. SIG30=MAX(Stest*1.D-5,1.D-3)
  316. IF (SIG3.GT.SIG30) THEN
  317. RDEPS(3)=-1.D0*(XNU/(1.D0-XNU))*
  318. . (RDEPS(1)-DEFT(1)+RDEPS(2)-DEFT(2)+def1+def2)
  319. RDEPS(3)=RDEPS(3)+DEFT(3)-def3
  320. IF (iter1.LE.200)THEN
  321. GOTO 98
  322. ELSE
  323. KERRE=460
  324. ENDIF
  325. ELSE
  326. EPSPT1=EPSPT
  327. BETAT1=BETAT
  328. RHOT1=RHOT
  329. SIGT1(1)=SIGTC(1)
  330. SIGT1(2)=SIGTC(2)
  331. SIGT1(3)=SIGTC(3)
  332. SIGT1(4)=SIGTC(4)
  333. SIGT1(5)=SIGTC(5)
  334. SIGT1(6)=SIGTC(6)
  335. rdeps3=rdeps3+RDEPS(3)
  336. def1=DEFT(1)
  337. def2=DEFT(2)
  338. def3=DEFT(3)
  339. ENDIF
  340. ENDIF
  341. *
  342. *-----------------------------------------------------
  343. * Fin du cas particulier des contraintes planes
  344. *-----------------------------------------------------
  345. *
  346. DO 400 I=1,6
  347. RSIGF(I)=SIGTC(I)*RHOT
  348. RDEFP(I)=DEFT(I)
  349. RDIGT(I)=RSIGF(I)-RSIG0(I)
  350. 400 CONTINUE
  351. VARF(1)=EPSPT
  352. VARF(2)=BETAT
  353. VARF(3)=RHOT
  354. *
  355. ELSE
  356. *
  357. * On plastifie
  358. *=========================================================
  359. *
  360. *---> Pente d'écrouissage H0 = d PHI / d EPSP
  361. *
  362. * Ce terme est déjà calculé
  363. *
  364. *---> Condition de consistance
  365. *
  366. Ftest0=1.D-6*Ftest
  367. IF (Stest.GT.Ftest0) THEN
  368. denom0=(DBT0-BT0*BT0*XK0/(SIG1*SIG1))*EXP(2.D0*SMT/SIG1)
  369. denom0=H0+3.D0*G0-XD0*XD0*denom0
  370. ELSE
  371. denom0=(DBT0-BT0*BT0*XK0/(SIG1*SIG1))*EXP(2.D0*SMT/SIG1)
  372. denom0=H0-XD0*XD0*denom0
  373. ENDIF
  374. IF (denom0.GT.1.D-5) THEN
  375. dlam0=PHIT/denom0
  376. ELSE
  377. IF (recal0.LE.0.D0) THEN
  378. recal0=100.D0
  379. nmax0=2000
  380. iter2=0
  381. GOTO 93
  382. ENDIF
  383. ENDIF
  384. *
  385. * Vérification des hypothèses de calcul
  386. *===============================================================
  387. *
  388. IF (recal0.LE.0.D0) THEN
  389. *
  390. * RMAX1=MIN(0.5D0,RMAX0*2.D0)
  391. * RMAX1=MAX(RMAX1,0.1D0)
  392. * IF (RHOT.LT.RMAX1) THEN
  393. * xnum0=200.D0
  394. * ELSE
  395. xnum0=20.D0
  396. * ENDIF
  397. *
  398. xmax1=0.D0
  399. xmax2=0.D0
  400. xmax3=0.D0
  401. *
  402. *---> Condition: d SM / SIG1 << 1
  403. *
  404. cri00=XK0*(ABS(RDEPS(1)+RDEPS(2)+RDEPS(3)))/SIG1
  405. IF (cri00.GT.5.D-2) THEN
  406. xmax1=ABS(xnum0*cri00+10.D0)
  407. ENDIF
  408. *
  409. *---> Condition: 10.G.dp/Stest << 1
  410. *
  411. IF (Stest.GT.Ftest0) THEN
  412. cri01=10.D0*G0*dlam0/Stest
  413. IF (cri01.GT.5.D-2) THEN
  414. xmax2=ABS(xnum0*cri01+10.D0)
  415. ENDIF
  416. ENDIF
  417. * xmax2=0.D0
  418. *
  419. *---> Condition: B'(beta).d beta / B(beta) << 1
  420. *
  421. * cri02=DBT0*dlam0*XD0*EXP(SMT/SIG1)/BT0
  422. cri02=dlam0*XD0*EXP(SMT/SIG1)
  423. IF (cri02.GT.5.D-2) THEN
  424. xmax3=(xnum0*cri02+10.D0)
  425. ENDIF
  426.  
  427. IF (xmax1.GT.xmax2) THEN
  428. xmax00=xmax1
  429. ELSE
  430. xmax00=xmax2
  431. ENDIF
  432. IF (xmax3.GT.xmax00) xmax00=xmax3
  433. nmax00=NINT(xmax00)
  434. recal0=100.D0
  435. IF (nmax00.GT.nmax0) nmax0=nmax00
  436. IF (nmax0.GT.2000) nmax0=2000
  437. *
  438. *---> On recommence la calcul en sous incrémentant le
  439. * pas de temps
  440. *
  441. iter2=0
  442. GOTO 93
  443. *
  444. ENDIF
  445. *
  446. * Mise à jour des grandeurs après écoulement plastique
  447. *============================================================
  448. *
  449. *---> Variable interne de plasticité mise à jour
  450. *
  451. EPSPT=EPSPT+dlam0
  452. *
  453. *---> Contraintes mises à jour
  454. *
  455. tremp0=XD0*BT0*EXP(SMT/SIG1)*dlam0/SIG1
  456. . +XD0*XD0*(DBT0-BT0*BT0*XK0/(SIG1*SIG1))*EXP(2.D0*SMT/SIG1)
  457. . *dlam0*dlam0/SIG1
  458. SMT=SMT-XK0*tremp0
  459. IF (Stest.GT.Ftest0) THEN
  460. r_z = 1.D0 - (3.D0*G0*dlam0/Stest)
  461. DO I=1,6
  462. DEVT(I) = r_z * DEVT(I)
  463. ENDDO
  464. ELSE
  465. DO I=1,6
  466. DEVT(I)=0.D0
  467. ENDDO
  468. ENDIF
  469. DO I=1,3
  470. SIGTC(I)=DEVT(I)+SMT
  471. ENDDO
  472. DO 601 I=4,6
  473. SIGTC(I)=DEVT(I)
  474. 601 CONTINUE
  475. *
  476. *---> Endommagement
  477. *
  478. RHOT=RHOT*EXP(-tremp0)
  479. IF (RHOT.LT.1.D-10) RHOT=1.D-10
  480. BETAT=LOG((1.D0-(1.D0-F0)*RHOT)/(RHOT*F0))
  481. *
  482. IF (RHOT.LE.RMAX0) THEN
  483. SMT=0.D0
  484. DO 103 I=1,6
  485. SIGTC(I)=0.D0
  486. DEVT(I)=0.D0
  487. 103 CONTINUE
  488. ENDIF
  489. *
  490. *---> Incrément de déformations plastiques mise à jour
  491. *
  492. treps1=(SMT-SMT0)/XK0
  493. DO 610 I=1,6
  494. A=0.D0
  495. IF (I.LE.3) A=1.D0
  496. IF (RHOT0.GT.RMAX0) THEN
  497. depel0=(DEVT(I)-(RSIG0(I)/RHOT0)+(SMT0*A))/(2.D0*G0)
  498. ELSE
  499. depel0=(DEVT(I)+(SMT0*A))/(2.D0*G0)
  500. ENDIF
  501. depel0=depel0+(treps1*A/3.D0)
  502. DEFT(I)=RDEPS0(I)*iter2/nmax0-depel0
  503. IF ((IFOUR.EQ.-2).AND.(I.EQ.3)) THEN
  504. DEFT(3)=rdeps3+RDEPS(3)-depel0
  505. ENDIF
  506. 610 CONTINUE
  507. *
  508. *---> Contrainte équivalente Stest mise à jour
  509. *
  510. r_z1=(SIGTC(1)*SIGTC(1))+(SIGTC(2)*SIGTC(2))+(SIGTC(3)*SIGTC(3))
  511. r_z2=(SIGTC(1)*SIGTC(2))+(SIGTC(2)*SIGTC(3))+(SIGTC(3)*SIGTC(1))
  512. r_z3=(SIGTC(4)*SIGTC(4))+(SIGTC(5)*SIGTC(5))+(SIGTC(6)*SIGTC(6))
  513. STEST2=r_z1 -r_z2 + (3.D0*r_z3)
  514. IF (STEST2.LE.(Ftest0*Ftest0)) STEST2=0.D0
  515. Stest=SQRT(STEST2)
  516. *
  517. *---> Potentiel d'endommagement mis à jour
  518. *
  519. BT0=F0*SIG1*EXP(BETAT)
  520. BT0=BT0/(1.D0-F0+(F0*EXP(BETAT)))
  521. DBT0=BT0*(1.D0-F0)/(1.D0-F0+(F0*EXP(BETAT)))
  522. Ftest=BT0*XD0*EXP(SMT/SIG1)
  523. *
  524. *---> Limite d'élasticité lue sur la courbe d'écrouissage
  525. * mise à jour
  526. *
  527. * - Recherche des valeurs de déformations plastiques équivalentes
  528. * encadrant la valeur courante
  529. *
  530. EPSM0=TRAC(2*NCOURB)
  531. IF (EPSPT.GE.EPSM0) THEN
  532. Y1=TRAC(2*NCOURB-1)
  533. Y2=TRAC(2*NCOURB-1)
  534. EPS1=EPSM0
  535. EPS2=2.D0*EPSM0
  536. ELSE
  537. DO 700 I=1,(NCOURB-1)
  538. EPS1=TRAC(2*I)
  539. EPS2=TRAC(2*(I+1))
  540. IF ((EPSPT.GE.EPS1).AND.(EPSPT.LT.EPS2)) THEN
  541. Y1=TRAC(2*I-1)
  542. Y2=TRAC(2*(I+1)-1)
  543. GOTO 97
  544. ENDIF
  545. 700 CONTINUE
  546. ENDIF
  547. *
  548. * - Limite d'élasticité mise à jour
  549. *
  550. 97 H0=(Y2-Y1)/(EPS2-EPS1)
  551. Ytest=(H0*(EPSPT-EPS2))+Y2
  552. *
  553. *---> Fonction de charge test PHIT mise à jour
  554. *
  555. PHIT=Stest-Ytest+Ftest
  556. PHI0=ABS(PHIT)
  557. *
  558. *---> Test de convergence ou itération suivante
  559. *
  560. iter0=iter0+1
  561. * if ((ib.eq.12).and.(rhot0.lt.0.45).and.(igau.eq.19)) write(6,*)
  562. * &'13iter2,iter0:',iter2,iter0,'phi',phit,var0(3),depst(1),depst(2)
  563. IF (RHOT.LE.RMAX0) PHI0=0.D0
  564. IF (iter0.LT.200) THEN
  565. GOTO 99
  566. ELSE
  567. PHI0=0.D0
  568. KERRE=460
  569. write(6,*) 'rho0,deps1 et 2',var0(3),depst(1),depst(2),ib,igau
  570. GOTO 99
  571. ENDIF
  572. *
  573. ENDIF
  574. *
  575. *
  576. * Vérification des sous incrémentations
  577. *
  578. IF ((iter2.LT.nmax0).AND.(KERRE.EQ.0)) THEN
  579. GOTO 95
  580. ENDIF
  581. *
  582. * Passage des deformations de cisaillement exprimées
  583. * en déformations aux déformations de cisaillement exprimées
  584. * en GAMA
  585. *
  586. DO 117 I=1,6
  587. A=1.D0
  588. IF (I.GT.3) A=2.D0
  589. RDEFP(I)=RDEFP(I)*A
  590. 117 CONTINUE
  591. *
  592. *
  593. * Passage a l'option de calcul pour les contraintes
  594. *=========================================================
  595. IF (MFR .EQ. 1 .OR. MFR .EQ. 31.OR.MFR.EQ.63) THEN
  596. IF (NSTRS .EQ. 6) THEN
  597. *
  598. *---> MASSIF 3D
  599. *
  600. DO 170 I=1,NSTRS
  601. SIGF(I)=RSIGF(I)
  602. DEFP(I)=RDEFP(I)
  603. DSIGT(I)=RDIGT(I)
  604. 170 CONTINUE
  605. ELSE IF ( NSTRS .EQ. 4 ) THEN
  606. *
  607. *---> Calcul axisymétrique ou contraintes planes
  608. *
  609. DO 180 I=1,NSTRS
  610. SIGF(I)=RSIGF(I)
  611. DEFP(I)=RDEFP(I)
  612. DSIGT(I)=RDIGT(I)
  613. 180 CONTINUE
  614. ENDIF
  615. ENDIF
  616. * if (ib.eq.13) write(6,*)
  617. * & '11:rho0,deps1,2,p',var0(3),depst(1),depst(2),var0(1),igau
  618.  
  619. RETURN
  620. END
  621.  
  622.  
  623.  

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