Télécharger pakzad.eso

Retour à la liste

Numérotation des lignes :

  1. C PAKZAD SOURCE PV 11/03/07 21:17:46 6885
  2. SUBROUTINE PAKZAD(DEPST,NSTRS,NCOMAT,NVARI,
  3. . MFR1,IB,IGAU,
  4. . XMAT,SIG0,VAR0,SIGF,VARF,DEFP,KERRE,DSIGT,
  5. . SUCC1,SUCC2,necou)
  6. *
  7. *
  8. ***************************************************************
  9. *
  10. * Modèle d'argile de PAKZAD
  11. *
  12. ***************************************************************
  13. *
  14. *
  15. *_________________________________________________________________
  16. *
  17. *
  18. * ENTREES :
  19. * ---------
  20. *
  21. * DEPST = INCREMENT DE DEFORMATIONS TOTALES
  22. * NSTRS = NBRE DE COMPOSANTES DES DEFORMATIONS
  23. * NCOMAT= NBRE DE CARACTERISTIQUES MECANIQUES DU MATERIAU
  24. * NVARI = NBRE DE VARIABLES INTERNES
  25. * MFR1 = NUMERO DE LA FORMULATION
  26. * IB = NUMERO DE L ELEMENT COURANT
  27. * IGAU = NUMERO DU POINT COURANT
  28. * SIG0(NSTRS) = CONTRAINTES AU DEBUT DU PAS D'INTEGRATION
  29. * VAR0(NVARI) = VARIABLES INTERNES AU DEBUT DU PAS DE TEMPS
  30. * XMAT(NCOMAT) = CARACTERISTIQUES MECANIQUES DU MATERIAU
  31. * SUCC1 SUCCION AU DEBUT DU PAS
  32. * SUCC2 SUCCION A LA FIN DU PAS
  33. *
  34. * SORTIE :
  35. * --------
  36. *
  37. * SIGF(NSTRS) = CONTRAINTES FINALES
  38. * VARF(NVARI) = VARIALES INTERNES A LA FIN DU PAS D'INTEGRATION
  39. * DEFP(NSTRS) = INCREMENT DE DEFORMATION PLASTIQUE A LA FIN
  40. * DU PAS D'INTEGRATION
  41. * ============================================================
  42. * ICI IL FAUT PROGRAMMER EN FORTRAN PUR
  43. *=============================================================
  44. *
  45. IMPLICIT INTEGER(I-N)
  46. IMPLICIT REAL*8(A-H,O-Z)
  47. *
  48. -INC CCOPTIO
  49. *
  50. SEGMENT NECOU
  51. * COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,
  52. INTEGER NCOURB,IPLAST,IT,IMAPLA,ISOTRO,
  53. . ITYP,IFOURB,IFLUAG,
  54. . ICINE,ITHER,IFLUPL,ICYCL,IBI,
  55. . JFLUAG,KFLUAG,LFLUAG,
  56. . IRELAX,JNTRIN,MFLUAG,JSOUFL,JGRDEF
  57. ENDSEGMENT
  58. C COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,
  59. C . ITYP,IFOURB,IFLUAG,
  60. C . ICINE,ITHER,IFLUPL,ICYCL,IBI,
  61. C . JFLUAG,KFLUAG,LFLUAG,
  62. C . IRELAX,JNTRIN,MFLUAG,JSOUFL,JGRDEF
  63. *
  64. DIMENSION SIG0(*),DEPST(*),VAR0(*),XMAT(*),SIGF(*),
  65. & VARF(*),DEFP(*),DSIGT(*)
  66. DIMENSION RSIG0(6),RDEPS0(6),RSIGF(6),RDEFP(6),RSIG1(6)
  67. DIMENSION DEVT(6),SIGT(6),DEFT(6)
  68. REAL*8 LS0,LS1
  69. *
  70. * Adaptation de l'option de calcul vers le 3D massif de SIG0 a RSIG0
  71. *====================================================================
  72. *
  73. IF (MFR1 .EQ. 1 .OR. MFR1 .EQ. 31) THEN
  74. *
  75. *---> 1 formulation massive
  76. *---> 2 formulation quasi incompressible
  77. *---> MASSIF 3D
  78. *
  79. IF (NSTRS .EQ. 6) THEN
  80. DO 110 I=1,NSTRS
  81. RSIG0(I)=SIG0(I)
  82. RDEPS0(I)=DEPST(I)
  83. 110 CONTINUE
  84. ELSE IF ( NSTRS .EQ. 4 .AND. ((IFOUR .EQ. 0)
  85. & .OR.(IFOUR .EQ. -1))) THEN
  86. *
  87. *---> Calcul en mode deformations planes ou axisymetrique
  88. *
  89. DO 115 I=1,NSTRS
  90. RSIG0(I)=SIG0(I)
  91. RDEPS0(I)=DEPST(I)
  92. 115 CONTINUE
  93. RSIG0(5)=0.D0
  94. RSIG0(6)=0.D0
  95. RDEPS0(5)=0.D0
  96. RDEPS0(6)=0.D0
  97. ENDIF
  98. ELSE
  99. KERRE = 99
  100. RETURN
  101. ENDIF
  102. *
  103. *
  104. * Passage des deformations de cisaillement exprimées
  105. * en GAMA aux déformations de cisaillement exprimées
  106. * en déformations
  107. *
  108. DO 116 I=1,6
  109. A=1.D0
  110. IF (I.GT.3) A=2.D0
  111. RDEPS0(I)=RDEPS0(I)/A
  112. 116 CONTINUE
  113. *
  114. * Données du materiau
  115. *===========================================================
  116. *
  117. YOUN0=XMAT(1)
  118. XNU0=XMAT(2)
  119. XN0=XMAT(5)
  120. XKA0=XMAT(6)
  121. XGA0=XMAT(7)
  122. XPA0=XMAT(8)
  123. XPC0=XMAT(9)
  124. XM0=XMAT(10)
  125. XBET1=XMAT(11)
  126. XA0=XMAT(12)
  127. XPCR0=XMAT(13)
  128. XS0=XMAT(14)
  129. XM1=XMAT(15)
  130. XM2=XMAT(16)
  131. XM3=XMAT(17)
  132. XBET2=XMAT(18)
  133. XTAU0=XMAT(19)
  134. *
  135. *
  136. * Quelques initialisations
  137. *=============================================================
  138. *
  139. *---> Succion
  140. * . Succion initiale
  141. * . succion finale
  142. * . Succion de désaturation
  143. *
  144. ******************************
  145. * MODIFICATION POUR LA SUCCION
  146. *
  147. IF(SUCC1.LT.-1.E34.AND.SUCC2.LT.-1.E34) THEN
  148. *
  149. * cas à succion constante : on la prend dans var0
  150. *
  151. SUCI0=VAR0(3)
  152. SUCF0=SUCI0
  153. ELSE
  154. SUCI0=SUCC1
  155. SUCF0=SUCC2
  156. ENDIF
  157. *
  158. IF (VAR0(2).LE.1.D-10) VAR0(2)=XS0+XM1*(XPC0-XS0)
  159. SDT=VAR0(2)
  160. *
  161. *---> Pression de consolidation initiale dans le domaine saturé
  162. *
  163. IF (VAR0(4).LE.1.D-10) VAR0(4)=XPC0
  164. *
  165. *---> On est en train d'activer la surface de contact ou de gonflement
  166. *
  167. IF ((VAR0(21).LE.1.D-10).AND.(VAR0(22).LE.1.D-10)) THEN
  168. *
  169. * On active la surface de contact
  170. *
  171. IGONF=1
  172. ELSE
  173. *
  174. * On active la surface de gonflement
  175. *
  176. IGONF=0
  177. ENDIF
  178. *
  179. *---> On initialise les variables internes à leur valeur initiale
  180. *
  181. DO 49 I=1,NVARI
  182. VARF(I)=VAR0(I)
  183. 49 CONTINUE
  184. *
  185. *---> On initialise les déformations plastiques au cours du pas à
  186. * zéro
  187. *
  188. DO 48 I=1,6
  189. RDEFP(I)=0.D0
  190. 48 CONTINUE
  191. *
  192. *
  193. *
  194. * Sous incrémentations : définition du nombre de sous
  195. * incréments
  196. *=============================================================
  197. *
  198. nmax0=1
  199. iter2=0
  200. crit0=XKA0*(RDEPS0(1)+RDEPS0(2)+RDEPS0(3))
  201. crit0=ABS(crit0)
  202. IF (crit0.GT.1.D-2) nmax0=NINT(100.D0*crit0)+1
  203. IF (nmax0.GT.10000) nmax0=10000
  204. DO 50 I=1,6
  205. RDEPS0(I)=RDEPS0(I)/nmax0
  206. 50 CONTINUE
  207. *
  208. *
  209. *
  210. * Début de la boucle de sous incrémentation
  211. *=============================================================
  212. *
  213. 51 iter2=iter2+1
  214. *
  215. *---> Succion au début (SUC1) et à la fin (SUC2) du sous incrémént
  216. *
  217. SUC1=SUCI0+(SUCF0-SUCI0)*(iter2-1)/nmax0
  218. SUC2=SUCI0+(SUCF0-SUCI0)*iter2/nmax0
  219. *
  220. *---> Variable de test de la plasticité
  221. * . iplas vaut 1 si on plastifie sur la surface de contact
  222. *
  223. IPLAS=0
  224. *
  225. *---> Pression d'origine capillaire au début du sous incrément
  226. *
  227. LS0=SUC1-XM1*VARF(4)+(XM1-1.D0)*XS0
  228. IF (LS0.LE.0.D0) THEN
  229. *
  230. * Etat quasi saturé
  231. *
  232. PSAT0=SUC1
  233. ELSE
  234. *
  235. * Etat partiellement saturé
  236. *
  237. XK1=(1.D0+(SUC1-SDT)/((XM2-1.D0)*SDT))**2.D0
  238. XK1=1/XK1
  239. PSAT0=SDT+(XK1**(.5D0))*(SUC1-SDT)
  240. ENDIF
  241. *
  242. *---> Contraintes effectives au début du sous incrément
  243. *
  244. DO 9 I=1,6
  245. A=0.D0
  246. IF (I.LE.3) A=1.D0
  247. RSIG1(I)=RSIG0(I)-PSAT0*A
  248. 9 CONTINUE
  249. PRES00=-1.D0/3.D0*(RSIG1(1)+RSIG1(2)+RSIG1(3))
  250. *
  251. *---> Déformations élastiques test et déformation plastique
  252. *
  253. DO 10 I=1,6
  254. DEFT(I)=0.D0
  255. 10 CONTINUE
  256. TREPEL0=RDEPS0(1)+RDEPS0(2)+RDEPS0(3)
  257. *
  258. *---> Contraintes test: 2 cas suivant la valeur de XN0
  259. *
  260. dif0=ABS(XN0-1.D0)
  261. IF (dif0.LE.1.D-5) THEN
  262. *
  263. * Cas où XN0=1
  264. *
  265. PRES1=PRES00*EXP(-1.D0*XKA0*TREPEL0)
  266. DO 11 I=1,6
  267. A=0.D0
  268. IF (I.LE.3) A=1.D0
  269. DEVT(I)=RSIG1(I)+PRES00*A
  270. DEVT(I)=DEVT(I)+2.D0*XGA0*PRES00*(RDEPS0(I)-TREPEL0/3.D0*A)
  271. SIGT(I)=DEVT(I)-PRES1*A
  272. 11 CONTINUE
  273. ELSE
  274. *
  275. * Autres cas
  276. *
  277. XKA1=XKA0*XPA0*((PRES00/XPA0)**XN0)
  278. XGA1=XGA0*XPA0*((PRES00/XPA0)**XN0)
  279. PRES1=PRES00-(XKA1*TREPEL0)
  280. DO 21 I=1,6
  281. A=0.D0
  282. IF (I.LE.3) A=1.D0
  283. DEVT(I)=RSIG1(I)+PRES00*A
  284. DEVT(I)=DEVT(I)+2.D0*XGA1*(RDEPS0(I)-TREPEL0/3.D0*A)
  285. SIGT(I)=DEVT(I)-PRES1*A
  286. 21 CONTINUE
  287. ENDIF
  288. *
  289. *---> Pressions de consolidation test à la succion SUC2 et module plastique BET1
  290. * à la fin du sous incrément
  291. * PCT1 : pression de consolidation
  292. * PCT0 : pression de consolidation "fictive" dans le domaine
  293. * saturé ( = VARF(4))
  294. *
  295. LS1=SUC2-XM1*VARF(4)+(XM1-1.D0)*XS0
  296. PCT0=VARF(4)
  297. IF (LS1.LE.0.D0) THEN
  298. *
  299. * Etat quasi saturé
  300. *
  301. PCT1=PCT0
  302. BET1=XBET1
  303. ELSE
  304. *
  305. * Etat partiellement saturé
  306. *
  307. XK2=(1.D0+(SUC2-SDT)/(XM3*SDT))**2.D0
  308. XK2=1/XK2
  309. PCT1=PCT0+(XK2**.5D0)*(SUC2-SDT)
  310. BET1=XBET2-((XBET2-XBET1)*EXP(-1.D0*XTAU0*(SUC2-SDT)))
  311. *
  312. * Dans ce qui suit, on va négliger les variations de BET1 avec SDT
  313. * (et donc avec l'écoulement plastique)
  314. *
  315. ENDIF
  316. *
  317. *---> Si on est en recharge, on vérifie la condition de gonflement avant
  318. * la condition de contact
  319. * A condition de ne pas déja avoir active la surface de charge
  320. * (IGONF=0)
  321. *
  322. IF (((RDEPS0(1)+RDEPS0(2)+RDEPS0(3)).LE.0.D0)
  323. . .AND.(IGONF.EQ.0)) THEN
  324. CALL PAKGON(XMAT,SIGT,VARF,SIGT,DEFT,VARF,
  325. . RDEPS0,KERRE,IB,IGAU,PCT0,
  326. . SUC2,RSIG1)
  327. PRES1=-1.D0/3.D0*(SIGT(1)+SIGT(2)+SIGT(3))
  328. DO 52 I=1,6
  329. A=0.D0
  330. IF (I.LE.3) A=1.D0
  331. DEVT(I)=SIGT(I)+PRES1*A
  332. 52 CONTINUE
  333. IGONF=0
  334. ENDIF
  335. *
  336. *---> Contrainte équivalente
  337. *
  338. STEST2=3.D0*PROCON(DEVT,DEVT,6)/2.D0
  339. IF (STEST2.LE.(1.D-10*YOUN0)) STEST2=0.D0
  340. Stest=(STEST2)**(0.5D0)
  341. *
  342. *
  343. *---> Fonction de charge
  344. *
  345. PHIT=Stest*Stest+XM0*XM0*PRES1*(PRES1-PCT1)
  346. *
  347. *
  348. *
  349. * Vérification du critère de plasticité
  350. *=========================================================
  351. *
  352. *---> Erreur admise
  353. *
  354. ERR0=1.D-7*ABS(PHIT)
  355. ERR0=MAX(ERR0,1.D-10*YOUN0)
  356. *
  357. *---> Critère de plasticité
  358. *
  359. PHI0=PHIT
  360. iter0=0
  361. *
  362. 99 IF (PHI0.LE.ERR0) THEN
  363. *
  364. * On est élastique par rapport à la surface de contact
  365. *=========================================================
  366. *
  367. *
  368. *---> On vérifie la condition de gonflement
  369. *
  370. IF (IPLAS.EQ.0) THEN
  371. *
  372. * On a pas plastifié sur la surface de contact
  373. * Si on est en décharge, on vérifie la condition de gonflement
  374. * après la condition de contact
  375. * Cas particulier, le premier pas du calcul, IGONF peut valoir 1 car
  376. * toutes les valeurs de des variables internes ne sont peut etre pas
  377. * initialisées de facon adéquate.
  378. * Or on doit vérifier la surface de gonflement systématiquement
  379. * au premier pas du calcul et ce jusqu'a ce qu'on active
  380. * la surface de gonflement ou la surface de contact
  381. *
  382. *
  383. IF (((RDEPS0(1)+RDEPS0(2)+RDEPS0(3)).GT.0.D0).OR.
  384. . (IGONF.EQ.1)) THEN
  385. CALL PAKGON(XMAT,SIGT,VARF,SIGT,DEFT,VARF,
  386. . RDEPS0,KERRE,IB,IGAU,PCT0,
  387. . SUC2,RSIG1)
  388. IGONF=0
  389. ENDIF
  390. DO 53 I=1,6
  391. RDEFP(I)=RDEFP(I)+DEFT(I)
  392. RSIGF(I)=SIGT(I)
  393. 53 CONTINUE
  394. ELSE
  395. *
  396. * On a plastifié sur la surface de contact, on ré-initialise
  397. * les variables internes du gonflement
  398. * . le rayon est remis à sa valeur initiale
  399. * . le "Centre" de l'ellipse (P1,Q1) est mis à
  400. * la valeur courante des contraintes
  401. *
  402. VARF(5)=XA0
  403. VARF(6)=XA0
  404. VARF(7)=PRES1
  405. VARF(8)=PRES1
  406. VARF(21)=0.D0
  407. VARF(22)=0.D0
  408. DO 399 I=1,6
  409. RDEFP(I)=RDEFP(I)+DEFT(I)
  410. RSIGF(I)=SIGT(I)
  411. VARF(8+I)=DEVT(I)
  412. VARF(14+I)=DEVT(I)
  413. 399 CONTINUE
  414. ENDIF
  415. *
  416. *---> A la fin du sous incrémént: Est on saturé ou non ?
  417. *
  418. LS1=SUC2-XM1*PCT0+(XM1-1.D0)*XS0
  419. *
  420. *---> Mise à jour de la succion de désaturation à la fin di sous incrément
  421. *
  422. SDT=XS0+XM1*(PCT0-XS0)
  423. *
  424. *---> Pression d'origine capillaire à la fin de sous incrément
  425. *
  426. IF (LS1.LE.0.D0) THEN
  427. *
  428. * Etat quasi saturé
  429. *
  430. PSAT0=SUC2
  431. ELSE
  432. *
  433. * Etat partiellement saturé
  434. *
  435. XK1=(1.D0+(SUC2-SDT)/((XM2-1.D0)*SDT))**2.D0
  436. XK1=1/XK1
  437. PSAT0=SDT+(XK1**(.5D0))*(SUC2-SDT)
  438. ENDIF
  439. *
  440. *---> Grandeurs à la fin de sous incrément
  441. *
  442. DO 400 I=1,6
  443. A=0.D0
  444. IF (I.LE.3) A=1.D0
  445. RSIGF(I)=RSIGF(I)+PSAT0*A
  446. RSIG0(I)=RSIGF(I)
  447. DEFT(I)=RDEFP(I)-(RDEFP(1)+RDEFP(2)+RDEFP(3))/3.D0*A
  448. 400 CONTINUE
  449. EPSPT=PROCON(DEFT,DEFT,6)
  450. IF (EPSPT.LE.1.D-10) EPSPT=0.D0
  451. EPSPT=(2.D0/3.D0*EPSPT)**.5D0
  452. VARF(1)=VAR0(1)+EPSPT
  453. VARF(2)=SDT
  454. VARF(3)=SUCF0
  455. VARF(4)=PCT0
  456. *
  457. *
  458. ELSE
  459. *
  460. * On plastifie
  461. *=========================================================
  462. *
  463. *---> Mise du flag IPLAS à 1: on plastifie en contact
  464. * Mise du flag IGONF à 1: on plastifie en contact
  465. *
  466. IPLAS=1
  467. IGONF=1
  468. *
  469. *---> Condition de consistance: calcul du paramètre plastique
  470. *
  471. IF (dif0.LE.1.D-5) THEN
  472. *
  473. * Cas où XN0=1
  474. *
  475. DF1=XM0*XM0*(2.D0*PRES1-PCT1)
  476. DF2=XM0*XM0*PCT1
  477. DF0=12.D0*XGA0*PRES00*Stest*Stest
  478. denom0=DF0+XKA0*DF1*DF1*PRES1+PRES1*BET1*DF1*DF2
  479. *
  480. ELSE
  481. *
  482. * Autres cas
  483. *
  484. DF1=XM0*XM0*(2.D0*PRES1-PCT1)
  485. DF2=XM0*XM0*PCT1
  486. DF0=12.D0*XGA1*Stest*Stest
  487. denom0=DF0+XKA1*DF1*DF1+PRES1*BET1*DF1*DF2
  488. ENDIF
  489. *
  490. dlam0=PHIT/denom0
  491. *
  492. *---> Mise à jour des contraintes
  493. *
  494. IF (dif0.LE.1.D-5) THEN
  495. *
  496. * Cas où XN0=1
  497. *
  498. PRES1=PRES1*EXP(-1.D0*XKA0*DF1*dlam0)
  499. DO 12 I=1,6
  500. A=0.D0
  501. IF (I.LE.3) A=1.D0
  502. DEVT(I)=DEVT(I)-6.D0*XGA0*PRES00*DEVT(I)*dlam0
  503. SIGT(I)=DEVT(I)-PRES1*A
  504. 12 CONTINUE
  505. ELSE
  506. *
  507. * Autres cas
  508. *
  509. PRES1=PRES1-(XKA1*DF1*dlam0)
  510. DO 22 I=1,6
  511. A=0.D0
  512. IF (I.LE.3) A=1.D0
  513. DEVT(I)=DEVT(I)-6.D0*XGA1*DEVT(I)*dlam0
  514. SIGT(I)=DEVT(I)-PRES1*A
  515. 22 CONTINUE
  516. ENDIF
  517. *
  518. *---> Mise à jour de la pression de consolidation à la succion finale
  519. *
  520. PCT1=PCT1*EXP(BET1*DF1*dlam0)
  521. PCT0=PCT0*EXP(XBET1*DF1*dlam0)
  522. *
  523. *---> Déformation élastiques et plastiques
  524. *
  525. IF (dif0.LE.1.D-5) THEN
  526. *
  527. * Cas où XN0=1
  528. *
  529. TREPEL0=-1.D0/XKA0*LOG(PRES1/PRES00)
  530. DO 13 I=1,6
  531. A=0.D0
  532. IF (I.LE.3) A=1.D0
  533. DEFT(I)=(DEVT(I)-RSIG1(I)-PRES00*A)/(2.D0*XGA0*PRES00)
  534. DEFT(I)=RDEPS0(I)-DEFT(I)-TREPEL0*A/3.D0
  535. 13 CONTINUE
  536. ELSE
  537. *
  538. * Autres cas
  539. *
  540. TREPEL0=-1.D0/XKA1*(PRES1-PRES00)
  541. DO 23 I=1,6
  542. A=0.D0
  543. IF (I.LE.3) A=1.D0
  544. DEFT(I)=(DEVT(I)-RSIG1(I)-PRES00*A)/(2.D0*XGA1)
  545. DEFT(I)=RDEPS0(I)-DEFT(I)-TREPEL0*A/3.D0
  546. 23 CONTINUE
  547. ENDIF
  548. *
  549. *---> Mise à jour de la contrainte équivalente
  550. *
  551. STEST2=3.D0*PROCON(DEVT,DEVT,6)/2.D0
  552. IF (STEST2.LE.(1.D-10*YOUN0)) STEST2=0.D0
  553. Stest=(STEST2)**(0.5D0)
  554. *
  555. *---> Mise à jour de la fonction de charge
  556. *
  557. PHIT=Stest*Stest+XM0*XM0*PRES1*(PRES1-PCT1)
  558. PHI0=ABS(PHIT)
  559. *
  560. *---> Test de convergence ou itération suivante
  561. *
  562. iter0=iter0+1
  563. IF (iter0.LT.200) THEN
  564. GOTO 99
  565. ELSE
  566. PHI0=0.D0
  567. KERRE=460
  568. GOTO 99
  569. ENDIF
  570. *
  571. ENDIF
  572. *
  573. *
  574. * Vérification des sous incrémentations
  575. *========================================================================
  576. *
  577. IF ((iter2.LT.nmax0).AND.(KERRE.EQ.0)) THEN
  578. GOTO 51
  579. ENDIF
  580. *
  581. *
  582. *
  583. *
  584. *===========================================================================
  585. *
  586. *
  587. *
  588. * Passage des deformations de cisaillement exprimées
  589. * en déformations aux déformations de cisaillement exprimées
  590. * en GAMA
  591. *
  592. DO 117 I=1,6
  593. A=1.D0
  594. IF (I.GT.3) A=2.D0
  595. RDEFP(I)=RDEFP(I)*A
  596. 117 CONTINUE
  597. *
  598. *
  599. * Passage a l'option de calcul pour les contraintes
  600. * Grandeurs finales
  601. *=========================================================
  602. *
  603. IF (MFR1 .EQ. 1 .OR. MFR1 .EQ. 31) THEN
  604. IF (NSTRS .EQ. 6) THEN
  605. *
  606. *---> MASSIF 3D
  607. *
  608. DO 170 I=1,NSTRS
  609. SIGF(I)=RSIGF(I)
  610. DEFP(I)=RDEFP(I)
  611. DSIGT(I)=RSIGF(I)-RSIG0(I)
  612. 170 CONTINUE
  613. ELSE IF ( NSTRS .EQ. 4 ) THEN
  614. *
  615. *---> Calcul axisymétrique ou contraintes planes
  616. *
  617. DO 180 I=1,NSTRS
  618. SIGF(I)=RSIGF(I)
  619. DEFP(I)=RDEFP(I)
  620. DSIGT(I)=RSIGF(I)-RSIG0(I)
  621. 180 CONTINUE
  622. ENDIF
  623. ENDIF
  624. *
  625. RETURN
  626. *
  627. END
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  

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