31 1 VOLNOD6, V, NC1, NC2,
32 2 NC3, NC4, VOL0, AMU,
33 3 OFFG, SAV, NEL, ISMSTR)
37#include "implicit_f.inc"
45 INTEGER,
INTENT(IN) :: ISMSTR
46 INTEGER NC1(*),NC2(*),NC3(*),NC4(*),NEL
48 . volnod6(6,2*numnod),sav(nel,9)
51 . v(3,*),offg(*),vol0(*),amu(*)
61 INTEGER I, K,INDEX(MVSIZ),NE_SM,J
65 . x41, y41, z41, x42, y42, z42, x43, y43, z43,
66 . dvol,detdp,b1dp,c1dp,d1dp
68 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
69 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
70 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz)
72 . b1(mvsiz), b2(mvsiz), b3(mvsiz), b4(mvsiz),
73 . c1(mvsiz), c2(mvsiz), c3(mvsiz), c4(mvsiz),
74 . d1(mvsiz), d2(mvsiz), d3(mvsiz), d4(mvsiz),
75 . det(mvsiz),vol(mvsiz),volref(mvsiz),d,dxx,dyy,dzz,
76 . px1(mvsiz), px2(mvsiz), px3(mvsiz), px4(mvsiz),
77 . py1(mvsiz), py2(mvsiz), py3(mvsiz), py4(mvsiz),
78 . pz1(mvsiz), pz2(mvsiz), pz3(mvsiz), pz4(mvsiz),
79 . vx1(mvsiz), vx2(mvsiz), vx3(mvsiz), vx4(mvsiz),
80 . vy1(mvsiz), vy2(mvsiz), vy3(mvsiz), vy4(mvsiz),
81 . vz1(mvsiz), vz2(mvsiz), vz3(mvsiz), vz4(mvsiz)
90 IF(ismstr==1.OR.ismstr==11)
THEN
139 ELSEIF((ismstr==2.OR.ismstr==12).AND.idtmin(1)==3)
THEN
141 IF(abs(offg(i))>one)
THEN
156 volref(ne_sm) = vol0(i)
157 vx1(ne_sm)=v(1,nc1(i))
158 vy1(ne_sm)=v(2,nc1(i))
159 vz1(ne_sm)=v(3,nc1(i))
160 vx2(ne_sm)=v(1,nc2(i))
161 vy2(ne_sm)=v(2,nc2(i))
162 vz2(ne_sm)=v(3,nc2(i))
163 vx3(ne_sm)=v(1,nc3(i))
164 vy3(ne_sm)=v(2,nc3(i))
165 vz3(ne_sm)=v(3,nc3(i))
166 vx4(ne_sm)=v(1,nc4(i))
167 vy4(ne_sm)=v(2,nc4(i))
168 vz4(ne_sm)=v(3,nc4(i))
179 vol(1:ne_sm) = volref(1:ne_sm)
192 b1dp = y43*z42 - y42*z43
193 c1dp = z43*x42 - z42*x43
194 d1dp = x43*y42 - x42*y43
198 b2(i) = y41*z43 - y43*z41
199 b3(i) = y42*z41 - y41*z42
200 b4(i) = -(b1(i) + b2(i) + b3(i))
202 c2(i) = z41*x43 - z43*x41
203 c3(i) = z42*x41 - z41*x42
204 c4(i) = -(c1(i) + c2(i) + c3(i))
206 d2(i) = x41*y43 - x43*y41
207 d3(i) = x42*y41 - x41*y42
208 d4(i) = -(d1(i) + d2(i) + d3(i))
210 detdp= (x41*b1dp + y41*c1dp + z41*d1dp)*one_over_6
231 dxx=px1(i)*vx1(i)+px2(i)*vx2(i)+
232 . px3(i)*vx3(i)+px4(i)*vx4(i)
233 dyy=py1(i)*vy1(i)+py2(i)*vy2(i)+
234 . py3(i)*vy3(i)+py4(i)*vy4(i)
235 dzz=pz1(i)*vz1(i)+pz2(i)*vz2(i)+
236 . pz3(i)*vz3(i)+pz4(i)*vz4(i)
237 dvol = (dxx+dyy+dzz)*dt1
238 detdp = volref(i)/
max(em20,(one+amu(i)-dvol))
246 IF(ismstr==1.OR.ismstr==11)
THEN
250 volnod6(k,nc1(i)) = volnod6(k,nc1(i)) + det6(k,i)
251 volnod6(k,nc2(i)) = volnod6(k,nc2(i)) + det6(k,i)
252 volnod6(k,nc3(i)) = volnod6(k,nc3(i)) + det6(k,i)
253 volnod6(k,nc4(i)) = volnod6(k,nc4(i)) + det6(k,i)
257#include "vectorize.inc"
262 volnod6(k,nc1(i)) = volnod6(k,nc1(i)) + det6(k,j)
263 volnod6(k,nc2(i)) = volnod6(k,nc2(i)) + det6(k,j)
264 volnod6(k,nc3(i)) = volnod6(k,nc3(i)) + det6(k,j)
265 volnod6(k,nc4(i)) = volnod6(k,nc4(i)) + det6(k,j)