31 1 NEL ,NUPARAM,NUVAR ,
32 2 TIME ,TIMESTEP,UPARAM ,RHO0 ,RHO ,
34 4 EPSPXX ,EPSPYY ,EPSPZZ ,EPSPXY ,EPSPYZ ,EPSPZX ,
35 5 DEPSXX ,DEPSYY ,DEPSZZ ,DEPSXY ,DEPSYZ ,DEPSZX ,
36 7 SIGOXX ,SIGOYY ,SIGOZZ ,SIGOXY ,SIGOYZ ,SIGOZX ,
37 8 SIGNXX ,SIGNYY ,SIGNZZ ,SIGNXY ,SIGNYZ ,SIGNZX ,
38 9 SIGVXX ,SIGVYY ,SIGVZZ ,SIGVXY ,SIGVYZ ,SIGVZX ,
39 A SOUNDSP,VISCMAX,UVAR ,OFF ,NGL , IPT ,
40 B IPM ,MAT ,WXX ,WYY,WZZ ,MTN ,DELTAX ,
49#include "implicit_f.inc"
58 INTEGER NEL, NUPARAM, NUVAR,MAT(NEL),NGL(NEL),IPM(NPROPMI,*),IPT
59 my_real TIME,,UPARAM(*),
60 . RHO(NEL),RHO0(NEL),VOLUME(NEL),EINT(NEL),
61 . EPSPXX(NEL),EPSPYY(NEL),EPSPZZ(NEL),
62 . EPSPXY(NEL),EPSPYZ(NEL),EPSPZX(NEL),
63 . DEPSXX(NEL),DEPSYY(NEL),DEPSZZ(NEL),
64 . DEPSXY(NEL),DEPSYZ(),DEPSZX(NEL),
65 . SIGOXX(NEL),SIGOYY(NEL),SIGOZZ(NEL),
66 . SIGOXY(NEL),SIGOYZ(NEL),SIGOZX(NEL),
72 . signxx(nel),signyy(nel),signzz(nel),
73 . signxy(nel),signyz(nel),signzx(nel),
74 . sigvxx(nel),sigvyy(nel),sigvzz(nel),
75 . sigvxy(nel),sigvyz(nel),sigvzx(nel),
76 . soundsp(nel),viscmax(nel)
80 my_real uvar(nel,nuvar), off(nel),wxx(nel),wyy(nel),wzz(nel)
88 INTEGER I,J,ISGS,IADBUF,K
91 . dav(mvsiz),dxx(mvsiz),dyy(mvsiz),dzz(mvsiz),
92 . dxy(mvsiz),dyz(mvsiz),dzx(mvsiz),ss(mvsiz),
93 . ca,vis2(mvsiz),vis2n,viscpression,
94 . vis1(mvsiz),delta(mvsiz),fac,kapa,e,c,vis1o,vis1n,y2p,ypm
106 IF(time==zero .AND.
ale%GLOBAL%INCOMP==1)
THEN
108 sigoxx(i)=third*(sigoxx(i)+sigoyy(i)+sigozz(i))
114 IF(time==zero .AND. mtn==47)
THEN
122 iadbuf = ipm(7,mat(1))-1
123 vis = uparam(iadbuf+1)
124 c1 = uparam(iadbuf+2)
125 isgs = int(uparam(iadbuf+3))
126 smag2= uparam(iadbuf+4)
127 ca = uparam(iadbuf+5)
131 IF(
ale%GLOBAL%INCOMP==1)
THEN
133 signxx(i)=sigoxx(i)+c1*(depsxx(i)+depsyy(i)+depszz(i))
139 soundsp(i) = sqrt(c1/rho(i))
143 signxx(i)=c1*(one -rho(i)/rho0(i))
149 soundsp(i) = sqrt(c1/rho(i))
157 dav(i)=third*(epspxx(i)+epspyy(i)+epspzz(i))
158 dxy(i)=half*epspxy(i)
159 dyz(i)=half*epspyz(i)
160 dzx(i)=half*epspzx(i)
161 ss(i)=sqrt(two*(epspxx(i)**2+epspyy(i)**2+epspzz(i)**2+dxy(i)**2+dyz(i)**2+dzx(i)**2))
162 dxx(i)=epspxx(i)-dav(i)
163 dyy(i)=epspyy(i)-dav(i)
164 dzz(i)=epspzz(i)-dav(i)
171 delta(i)=deltax(i)**2
175 delta(i)=volume(i)**two_third
181 delta(i)=deltax(i)**2
190 vis1(i)=vis+smag2*ss(i)*delta(i)
192 uvar(i,1)=vis1(i)/vis
199 c=ss(i)*kapa*deltax(i)*deltax(i)/vis
206 vis1n=kapa*y2p/log(e*y2p)
208 IF(isgs>=2)vis2n=kapa*y2p
221 vis1(i)=rho(i)*vis1(i)
222 vis2(i)=three*rho(i)*vis2(i)
223 viscpression=vis2(i)*dav(i)
224 viscmax(i) = vis1(i)+half*vis2(i)
226 sigvxx(i)=vis1(i)*dxx(i)+viscpression
227 sigvyy(i)=vis1(i)*dyy(i)+viscpression
228 sigvzz(i)=vis1(i)*dzz(i)+viscpression
229 sigvxy(i)=vis1(i)*dxy(i)
230 sigvyz(i)=vis1(i)*dyz(i)
231 sigvzx(i)=vis1(i)*dzx(i)
236 IF((anim_e(10)==1 .OR. anim_se(10)==1) .AND. timestep/=0.)
THEN
240 uvar(i,2)=fac*sqrt(wxx(i)**2+wyy(i)**2+wzz(i)**2)
subroutine sigeps46(nel, nuparam, nuvar, time, timestep, uparam, rho0, rho, volume, eint, epspxx, epspyy, epspzz, epspxy, epspyz, epspzx, depsxx, depsyy, depszz, depsxy, depsyz, depszx, sigoxx, sigoyy, sigozz, sigoxy, sigoyz, sigozx, signxx, signyy, signzz, signxy, signyz, signzx, sigvxx, sigvyy, sigvzz, sigvxy, sigvyz, sigvzx, soundsp, viscmax, uvar, off, ngl, ipt, ipm, mat, wxx, wyy, wzz, mtn, deltax, aire)