41 SUBROUTINE mmats(JFT ,JLT ,PM ,MAT ,HH ,
42 . MTN ,IORTH ,IPM ,IGEO ,GAMA ,
43 . UPARAM ,CC ,CG ,G33 ,JHBE ,
44 . SIG ,EPS ,NPPT ,NEL )
53#include "implicit_f.inc"
66 INTEGER JFT, JLT ,IORTH ,JHBE,MTN,NPPT,NEL
67 INTEGER MAT(*),IPM(NPROPMI,*),IGEO(NPROPGI,*)
70 . pm(npropm,*),hh(2,*),cc(3,3,*),uparam(*),
71 . gama(mvsiz,6),
cg(3,3,*),g33(3,3,*),sig(nel,6),eps(*)
75 INTEGER I,MX,IAD,J,K,IPLAST
78 . nu,lamda,gg,c1,qc(9,mvsiz),qcg(9,mvsiz
79 . qgc(9,mvsiz),g3(3,mvsiz),tt,tv,ca,cb,cn,g(mvsiz),qh(mvsiz),
80 . fac(mvsiz),smin,s1,nu12,nu21,efac
84 CALL gettrans(jft,jlt,gama,qc,qcg,qgc,qg)
85 IF (mtn==14.OR.mtn==12)
THEN
99 . qg ,cc ,g3 ,g33 ,
cg )
100 ELSEIF (mtn==25)
THEN
106 cc(1,1,i) =pm(33,mx)/
max(em20,s1)
107 cc(2,2,i) =pm(34,mx)/
max(em20,s1)
108 cc(3,3,i) =pm(186,mx)
109 cc(1,2,i) =half*(nu21*cc(1,1,i)+nu12*cc(2,2,i))
117 . qg ,cc ,g3 ,g33 ,
cg )
118 ELSEIF (mtn==28.OR.mtn==50.OR.mtn==68)
THEN
121 cc(1,1,i) = uparam(1)
122 cc(2,2,i) = uparam(2)
123 cc(3,3,i) = uparam(3)
132 . qg ,cc ,g3 ,g33 ,
cg )
133 ELSEIF (mtn==53)
THEN
136 cc(1,1,i) = uparam(1)
137 cc(2,2,i) = uparam(2)
138 cc(3,3,i) = cc(2,2,i)
147 . qg ,cc ,g3 ,g33 ,
cg )
154 c1 =three*pm(32,mx)/(one+nu)
169 lamda=efac*fac(i)*pm(100,mx)
171 gg =efac*fac(i)*pm(32,mx)
175 ELSEIF (mtn==62.OR.mtn==62.OR.mtn==69.OR.mtn==82)
THEN
180 c1 =three*pm(32,mx)/(one+nu)
183 gg =c1*(one-two*nu)*fac(i)
191 c1 =three*pm(32,mx)/(one+nu)
211 IF(fac(i)<one.AND.iter_nl>0)
THEN
223 IF (iorth==0.AND.iplast==1) iorth=1
235 IF(fac(i)<one.AND.iter_nl>0) iplast =1
237 IF (iorth==0.AND.iplast==1) iorth=1
subroutine mmats(jft, jlt, pm, mat, hh, mtn, iorth, ipm, igeo, gama, uparam, cc, cg, g33, jhbe, sig, eps, nppt, nel)