1 : C INCR33 SOURCE PV 11/03/07 21:16:54 6885 2 : SUBROUTINE INCR33(DT,SIG,EPSV,VAR,XMAT,EPSVPT,VARPT,ALFA,NSTRS0, 3 : & NVARI) 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8(A-H,O-Z) 6 : -INC CCOPTIO 7 : DIMENSION SIG(*),EPSV(*),VAR(*),XMAT(*),EPSVPT(*),VARPT(*) 8 : DIMENSION SM(4),SB(4),EM(4),EB(4),EPLU(8),EMIN(8),EPSCRP(8) 9 : C 10 : C ICI : le modele est obligatoirement CERAMIQUE 11 : C______________________________________________________________________ 12 : C 13 : C THIS ROUTINE COMPUTES INCREMENTAL STRAIN AND INTERNAL VARIABLES 14 : C______________________________________________________________________ 15 : C 16 : C STEP-1 : SEPERATE OUT MEMBRANE AND BENDING CONTRIBUTIONS 17 : C --------------------------------------------------------- 18 : NSTRS=NSTRS0+2 19 : NS = NSTRS/2 20 : SM(1)=SIG(1) 21 : SM(2)=SIG(2) 22 : SM(3)=0.D0 23 : SM(4)=0.D0 24 : IF (NS.EQ.4) SM(4)=SIG(3) 25 : SB(1)=SIG(NS) 26 : SB(2)=SIG(NS+1) 27 : SB(3)=0.D0 28 : SB(4)=0.D0 29 : IF (NS.EQ.4) SB(4)=SIG(NS+2) 30 : EM(1)=EPSV(1) 31 : EM(2)=EPSV(2) 32 : EM(3)=-1.D0*(EM(1)+EM(2)) 33 : EM(4)=0.D0 34 : IF (NS.EQ.4) EM(4)=EPSV(3) 35 : EB(1)=EPSV(NS) 36 : EB(2)=EPSV(NS+1) 37 : EB(3)=-1.D0*(EB(1)+EB(2)) 38 : EB(4)=0.D0 39 : IF (NS.EQ.4) EB(4)=EPSV(NS+2) 40 : C 41 : CCC IF ((IFOUR.EQ.2.AND.MFR.EQ.3).OR.IFOUR.EQ.-2) THEN 42 : CCC IBID = 11 43 : CCC ELSE IF(IFOUR.EQ.-3.OR.IFOUR.EQ.-1 44 : CCC 1 .OR.IFOUR.EQ.0) THEN 45 : CCC IBID = 14 46 : CCC ELSE IF(IFOUR.EQ.2.AND.MFR.EQ.1) THEN 47 : CCC IBID = 19 48 : CCC ENDIF 49 : CCC Eloi : correction de IBID 50 : CCC de plus : ici on a obligatoirement MFR = 3 51 : IBID=NVARI-(2*NSTRS)-5 52 : C 53 : DO 10 I = 1,NSTRS 54 : EPLU(I) = VAR(I+IBID) 55 : EMIN(I) = VAR(NSTRS+I+IBID) 56 : 10 CONTINUE 57 : EEFF = VAR(2*NSTRS+1+IBID) 58 : EPSH = VAR(2*NSTRS+2+IBID) 59 : LL = nint(VAR(2*NSTRS+3+IBID) ) 60 : DO 20 I=1,NS 61 : EPSCRP(I) = EM(I) 62 : 20 CONTINUE 63 : DO 30 I=1,NS 64 : EPSCRP(NS+I) = EB(I) 65 : 30 CONTINUE 66 : DO 40 I=1,NSTRS0 67 : EPSVPT(I)=0.D0 68 : 40 CONTINUE 69 : DO 50 I=1,NVARI 70 : VARPT(I)=0.D0 71 : 50 CONTINUE 72 : 73 : C ------------------------------------------------------------- 74 : C 75 : C STEP-2 : COMPUTATION OF SMEMB,SBEND AND SEQUV 76 : C --------------------------------------------- 77 : c 78 : c fmemb et fbend ajoute a l'esthetique par chloe 79 : c 80 : FMEMB=SM(1)*SM(1)+ SM(2)*SM(2)-SM(1)*SM(2)+3*SM(4)*SM(4) 81 : FBEND=SB(1)*SB(1)+SB(2)*SB(2)-SB(1)*SB(2)+3*SB(4)*SB(4) 82 : SEQUV=SQRT(FMEMB+ALFA*ALFA*FBEND) 83 : C ------------------------------------------------------------- 84 : C 85 : C STEP-3 : COMPUTATION OF INCREMENTS OF INTERNAL VARIABLES 86 : C --------------------------------------------------------- 87 : ALF1 = 1.D0 88 : ALF2 = 1.D0/ALFA/ALFA 89 : C 89 : CALL UPVAR2(SM,SB,EPSCRP,EPLU,EMIN,EEFF,EPSH,LL,ALF1,ALF2,NSTRS) 90 : DO 60 I = 1,NSTRS 91 : VARPT(I+IBID) = EPLU(I) 92 : VARPT(NSTRS+I+IBID) = EMIN(I) 93 : 60 CONTINUE 94 : VARPT(2*NSTRS+1+IBID) = EEFF 95 : VARPT(2*NSTRS+2+IBID) = EPSH 96 : VARPT(2*NSTRS+3+IBID) = LL 97 : C ------------------------------------------------------------- 98 : C 99 : C STEP-4 : COMPUTATION OF INCREMENTS OF INELASTIC STRAINS 100 : C ------------------------------------------------------- 101 : DECT = 0.D0 102 : IF(SEQUV.NE.0.D0) THEN 103 : CCC Eloi : ici on a obligatoirement MFR = 3 104 : CCC IF(MFR.EQ.1.AND.IFOMOD.EQ.2) THEN 105 : CCC IBIDI = 15 106 : CCC ELSE 107 : IBIDI = 10 108 : CCC ENDIF 109 : IBID1 = IBIDI + 1 110 : IBID2 = IBIDI + 2 111 : IBID3 = IBIDI + 3 111 : CALL NORTON(SEQUV,EPSH,DT,XMAT(IBID1),XMAT(IBID2),XMAT(IBID3), 112 : & DECT) 113 : VARPT(1)=DECT 114 : VARPT(NVARI)=DECT 115 : CONS = DECT/SEQUV 116 : IF(NS.EQ.3) THEN 117 : EPSVPT(1)= CONS*(SIG(1)-0.5D0*SIG(2)) 118 : EPSVPT(2)= CONS*(SIG(2)-0.5D0*SIG(1)) 119 : EPSVPT(3)= CONS*(SIG(3)-0.5D0*SIG(4)) * ALFA * ALFA 120 : EPSVPT(4)= CONS*(SIG(4)-0.5D0*SIG(3)) * ALFA * ALFA 121 : ELSE 122 : EPSVPT(1)= CONS*(SIG(1)-0.5D0*SIG(2)) 123 : EPSVPT(2)= CONS*(SIG(2)-0.5D0*SIG(1)) 124 : EPSVPT(3)= 1.5D0*CONS*SIG(3) 125 : EPSVPT(4)= CONS*(SIG(4)-0.5D0*SIG(5)) * ALFA * ALFA 126 : EPSVPT(5)= CONS*(SIG(5)-0.5D0*SIG(4)) * ALFA * ALFA 127 : EPSVPT(6)= 1.5D0*CONS*SIG(6) * ALFA * ALFA 128 : ENDIF 129 : C 130 : ENDIF 131 : RETURN 132 : END 133 : 134 : 135 : 136 : 137 : 138 : 139 : 140 :
© Cast3M 2003 - All rights reserved.
Disclaimer