35 1 JFT ,JLT ,PM ,THK ,OFF ,
36 2 GSTR ,IMAT ,DT1 ,IPLA ,SHF ,
37 3 NGL ,THK0 ,THKLYL ,CRAK ,DAM ,
38 4 SIGY ,ZCFAC ,DPLA ,ILAYER ,IPT ,
39 5 ISRATE ,NEL ,ZZ ,NPTTOT ,EPSD_PG,
40 6 DEPSXX ,DEPSYY ,DEPSXY ,DEPSYZ ,DEPSZX,
41 7 SIGOXX ,SIGOYY ,SIGOXY ,SIGOYZ ,SIGOZX,
42 8 SIGNXX ,SIGNYY ,SIGNXY ,SIGNYZ ,SIGNZX,
43 9 DIRDMG ,PLA ,INLOC ,DPLANL ,LOFF ,
48#include "implicit_f.inc"
60 INTEGER NGL(MVSIZ),IMAT,ILAYER,IPT,ISRATE,NPTTOT,
61 . JFT,JLT,IPLA,NEL,INLOC
62 my_real,
INTENT(IN) :: DT1
63 my_real,
INTENT(IN) :: ASRATE
64 my_real PM(NPROPM,*),THK(*),OFF(*),GSTR(NEL,8),
65 . SHF(*),SIGY(*),ZCFAC(MVSIZ,2),DPLA(*),
66 . THK0(MVSIZ),THKLYL(NEL),DPLANL(NEL)
68 . DEPSXX(MVSIZ),DEPSYY(MVSIZ),DEPSXY(MVSIZ),DEPSYZ(MVSIZ),
69 . DEPSZX(MVSIZ),SIGOXX(NEL),SIGOYY(NEL),SIGOXY(NEL),
70 . sigoyz(nel),sigozx(nel),signxx(nel),signyy(nel),signxy(nel
71 . signyz(nel),signzx(nel),dirdmg(nel,2),
72 . pla(nel),crak(nel),dam(nel),zz(mvsiz)
73 my_real,
DIMENSION(NEL),
INTENT(IN) :: loff
74 my_real ,
DIMENSION(NEL),
INTENT(IN) :: epsd_pg
75 my_real,
DIMENSION(NEL) ,
INTENT(INOUT) :: epsd
82 . SIG(NEL,5),NU,STRN1(MVSIZ),STRN2(MVSIZ),STRN3(MVSIZ),YLD(MVSIZ),
83 . etse(mvsiz),zt,ezz(mvsiz),young
104 CALL roto_sig(jft,jlt,sig,dirdmg,nel)
106 CALL m27elas(jft ,jlt ,pm ,sig ,imat ,
107 2 depsxx ,depsyy ,depsxy ,depsyz ,depszx,
108 3 dam ,crak ,shf ,nel )
112 CALL m27plas(jft ,jlt ,pm ,off ,sig ,
113 2 pla ,imat ,dt1 ,ipla ,ezz ,
114 3 epsd_pg,israte ,yld ,etse ,dpla ,
115 4 depsxx ,depsyy ,depsxy ,depsyz ,depszx,
116 5 nel ,epsd ,asrate )
134 strn1(i) = gstr(i,1)+zt*gstr(i,6)
135 strn2(i) = gstr(i,2)+zt*gstr(i,7)
136 strn3(i) =(gstr(i,3)+zt*gstr(i,8))*half
139 CALL m27crak(jft ,jlt ,pm ,dam ,dirdmg ,
140 2 imat ,ilayer ,off ,ngl ,nel ,
141 3 strn1 ,strn2 ,strn3 )
144 zcfac(i,1) = zcfac(i,1) + etse(i) / npttot
145 zcfac(i,2) =
min(etse(i),zcfac(i,2))
146 sigy(i) =
min(sigy(i),yld(i))
153 IF (loff(i) == one)
THEN
154 ezz(i) = -nu*(signxx(i)-sigoxx(i)+signyy(i)-sigoyy(i))/young
155 ezz(i) = ezz(i) -
max(dplanl(i),zero)*half*(signxx(i)+signyy(i))/yld(i)
158 ezz(i) =-(depsxx(i)+depsyy(i))*nu-(one - two*nu)*ezz(i)
159 ezz(i) = ezz(i)/(one-nu)
161 thk(i) = thk(i) + ezz(i) * thklyl(i)*off(i)
subroutine m27plas(jft, jlt, pm, off, sig, pla, imat, dt1, ipla, ezz, epsd_pg, israte, yld, etse, dpla, depsxx, depsyy, depsxy, depsyz, depszx, nel, epsd, asrate)
subroutine sigeps27c(jft, jlt, pm, thk, off, gstr, imat, dt1, ipla, shf, ngl, thk0, thklyl, crak, dam, sigy, zcfac, dpla, ilayer, ipt, israte, nel, zz, npttot, epsd_pg, depsxx, depsyy, depsxy, depsyz, depszx, sigoxx, sigoyy, sigoxy, sigoyz, sigozx, signxx, signyy, signxy, signyz, signzx, dirdmg, pla, inloc, dplanl, loff, epsd, asrate)