1 : C ELAST2 SOURCE CHAT 05/01/12 23:29:31 5004 2 : SUBROUTINE ELAST2(DDHOOK,LHOOK,VALMAT,VAR,INAT,IB,IGAU) 3 : * 4 : * 5 : ************************************************ 6 : * Calcul de la matrice de Hook endommagee 7 : ************************************************ 8 : * 9 : * ENTREES : 10 : * --------- 11 : * DDHOOK : matrice de Hook non endommagee 12 : * LHOOK : longueur de la matrice de Hook 13 : * VALMAT : données du matériau 14 : * VAR : variables internes 15 : * INAT : numero du modele de comportement 16 : * 17 : * SORTIES : 18 : * --------- 19 : * DDHOOK : matrice de Hook endommagee 20 : * 21 : ************************************************* 22 : * 23 : IMPLICIT INTEGER(I-N) 24 : IMPLICIT REAL*8(A-H,O-Z) 25 : * 26 : DIMENSION DDHOOK(LHOOK,*) 27 : DIMENSION VAR(*),VALMAT(*) 28 : * 29 : * BCN 30 : *---> Models: Mazars and Modifed Von Mises 31 : * 32 : IF (INAT.EQ.30.OR.INAT.EQ.118) THEN 33 : FT=VAR(2) 34 : END0=1.D0-FT 35 : IF (END0.GE.1.D0) END0=1.D0 36 : ENDIF 37 : * BCN 38 : * 39 : *---> Cas du modèle de Rousselier 40 : * 41 : IF (INAT.EQ.62) THEN 42 : * if(IB.EQ.1.AND.IGAU.EQ.1) then 43 : * write(6,*) var(3), valmat(3),valmat(4) 44 : * endif 45 : 46 : RHOT=VAR(3) 47 : IF (RHOT.LT.1.D-15) THEN 48 : END0=1.D0 49 : ELSE 50 : END0=RHOT 51 : F0=VALMAT(3) 52 : FC0=VALMAT(4) 53 : RMAX0=(1.D0-FC0)/(1.D0-F0) 54 : IF ((RMAX0.GT.1.D0).OR.(RMAX0.LE.1.D-5)) THEN 55 : RMAX0=1.D-5 56 : ENDIF 57 : IF (RHOT.LE.RMAX0) END0=1.d-15 58 : ENDIF 59 : ENDIF 60 : * 61 : *---> Cas du modèle de Gurson Tvergaard 62 : * 63 : IF (INAT.EQ.64) THEN 64 : FT=VAR(2) 65 : FF0=VALMAT(3) 66 : END0=1.D0-FT 67 : IF (END0.GE.1.D0) END0=1.D0 68 : * IF (FT.GE.FF0) END0=MIN(1.D-2,1.D0-FF0) 69 : ENDIF 70 : * 71 : *---> Matrice endommagée 72 : * 73 : DO 1 I=1,LHOOK 74 : DO 2 J=1,LHOOK 75 : DDHOOK(I,J)=DDHOOK(I,J)*END0 76 : 2 CONTINUE 77 : 1 CONTINUE 78 : * 79 : RETURN 80 : END 81 : * 82 : * 83 : 84 : 85 : 86 : 87 :
© Cast3M 2003 - All rights reserved.
Disclaimer