42 A PZ3, PZ4, PX1H1, PX1H2,
43 B PX1H3, PX1H4, PX2H1, PX2H2,
44 C PX2H3, PX2H4, PX3H1, PX3H2,
45 D PX3H3, PX3H4, PX4H1, PX4H2,
46 E PX4H3, PX4H4, HX, HY,
47 F HZ, JAC1, JAC2, JAC3,
48 G JAC4, JAC5, JAC6, JAC7,
49 H JAC8, JAC9, SMAX, SAV,
50 I OFFG, NNEGA, INDEX, NEL,
59#include "implicit_f.inc"
71 INTEGER,
INTENT(IN) :: ISMSTR
72 INTEGER NNEGA,INDEX(MVSIZ),NEL
75 . x1(*), x2(*), x3(*), x4(*), x5(*), x6(*), x7(*), x8(*),
76 . y1(*), y2(*), y3(*), y4(*), y5(*), y6(*), y7(*), y8(*),
77 . z1(*), z2(*), z3(*), z4(*), z5(*
82 . px1(*), px2(*), px3(*), px4(*),
83 . py1(*), py2(*), py3(*), py4(*),
84 . pz1(*), pz2(*), pz3(*), pz4(*),
85 . px1h1(*), px1h2(*), px1h3(*),px1h4(*),
86 . px2h1(*), px2h2(*), px2h3(*),px2h4(*),
87 . px3h1(*), px3h2(*), px3h3(*),px3h4(*),
88 . px4h1(*), px4h2(*), px4h3(*),px4h4(*),
89 . hx(mvsiz,4), hy(mvsiz,4), hz(mvsiz,4),
90 . jac1(*),jac2(*),jac3(*),
91 . jac4(*),jac5(*),jac6(*),
92 . jac7(*),jac8(*),jac9(*),smax(*),offg(*)
96 INTEGER NGL(*), I, J ,ICOR
101 . jaci1, jaci2, jaci3,
102 . jaci4, jaci5, jaci6,
103 . jaci7, jaci8, jaci9,
104 . x17 , x28 , x35 , x46,
105 . y17 , y28 , y35 , y46,
106 . z17 , z28 , z35 , z46,
107 . jac_59_68(mvsiz), jac_67_49(mvsiz), jac_48_57(mvsiz),
108 . jac_38_29(mvsiz), jac_19_37(mvsiz), jac_27_18(mvsiz),
109 . jac_26_35(mvsiz), jac_34_16(mvsiz), jac_15_24(mvsiz),
110 . jaci12, jaci45, jaci78,
111 . x_17_46 , x_28_35 ,
112 . y_17_46 , y_28_35 ,
115 IF (ismstr==10.OR.ismstr==12)
THEN
116#include "vectorize.inc"
145#include "vectorize.inc"
178 CALL ancmsg(msgid=260,anmode=aninfo,
181 CALL ancmsg(msgid=262,anmode=aninfo,
184#include
"lockoff.inc"
187#include "vectorize.inc"
203 jac4(i)=x17+x28-x35-x46
204 jac5(i)=y17+y28-y35-y46
205 jac6(i)=z17+z28-z35-z46
212 jac7(i)=x_17_46+x_28_35
213 jac8(i)=y_17_46+y_28_35
214 jac9(i)=z_17_46+z_28_35
215 jac1(i)=x_17_46-x_28_35
216 jac2(i)=y_17_46-y_28_35
217 jac3(i)=z_17_46-z_28_35
219 jac_59_68(i)=jac5(i)*jac9(i)-jac6(i)*jac8(i)
220 jac_67_49(i)=jac6(i)*jac7(i)-jac4(i)*jac9(i)
221 jac_48_57(i)=jac4(i)*jac8(i)-jac5(i)*jac7(i)
223 det(i)=one_over_64*(jac1(i)*jac_59_68(i)+jac2(i)*jac_67_49(i)+jac3(i)*jac_48_57(i))
225#include
"vectorize.inc"
228 jac_38_29(i)=(-jac2(i)*jac9(i)+jac3
229 jac_19_37(i)=( jac1(i)*jac9(i)-jac3(i)*jac7(i))
230 jac_27_18(i)=(-jac1(i)*jac8(i)+jac2(i)*jac7(i))
231 jac_26_35(i)=( jac2(i)*jac6(i)-jac3(i)*jac5(i))
232 jac_34_16(i)=(-jac1(i)*jac6(i)+jac3(i)*jac4(i))
233 jac_15_24(i)=( jac1(i)*jac5(i)-jac2(i)*jac4(i))
234 dett=one_over_64/det(i)
235 jaci1=dett*jac_59_68(i)
236 jaci4=dett*jac_67_49(i)
237 jaci7=dett*jac_48_57(i)
238 jaci2=dett*jac_38_29(i)
239 jaci5=dett*jac_19_37(i)
240 jaci8=dett*jac_27_18(i)
241 jaci3=dett*jac_26_35(i)
242 jaci6=dett*jac_34_16(i)
243 jaci9=dett*jac_15_24(i)
266#include "vectorize.inc"
269 hx(i,1)=(x1(i)+x2(i)-x3(i)-x4(i)-x5(i)-x6(i)+x7(i)+x8(i))
270 hy(i,1)=(y1(i)+y2(i)-y3(i)-y4(i)-y5(i)-y6(i)+y7(i)+y8(i))
271 hz(i,1)=(z1(i)+z2(i)-z3(i)-z4(i)-z5(i)-z6(i)+z7(i)+z8(i))
272 px1h1(i)=px1(i)*hx(i,1)+ py1(i)*hy(i,1)+pz1(i)*hz(i,1)
273 px2h1(i)=px2(i)*hx(i,1)+ py2(i)*hy(i,1)+pz2(i)*hz(i,1)
274 px3h1(i)=px3(i)*hx(i,1)+ py3(i)*hy(i,1)+pz3(i)*hz(i,1)
275 px4h1(i)=px4(i)*hx(i,1)+ py4(i)*hy(i,1)+pz4(i)*hz(i,1)
277 hx(i,2)=(x1(i)-x2(i)-x3(i)+x4(i)-x5(i)+x6(i)+x7(i)-x8(i))
278 hy(i,2)=(y1(i)-y2(i)-y3(i)+y4(i)-y5(i)+y6(i)+y7(i)-y8(i))
279 hz(i,2)=(z1(i)-z2(i)-z3(i)+z4(i)-z5(i)+z6(i)+z7(i)-z8(i))
280 px1h2(i)=px1(i)*hx(i,2)+ py1(i)*hy(i,2)+pz1(i)*hz(i,2)
281 px2h2(i)=px2(i)*hx(i,2)+ py2(i)*hy(i,2)+pz2(i)*hz(i,2)
282 px3h2(i)=px3(i)*hx(i,2)+ py3(i)*hy(i,2)+pz3(i)*hz(i,2)
283 px4h2(i)=px4(i)*hx(i,2)+ py4(i)*hy(i,2)+pz4(i)*hz(i,2)
285 hx(i,3)=(x1(i)-x2(i)+x3(i)-x4(i)+x5(i)-x6(i)+x7(i)-x8(i))
286 hy(i,3)=(y1(i)-y2(i)+y3(i)-y4(i)+y5(i)-y6(i)+y7(i)-y8(i))
287 hz(i,3)=(z1(i)-z2(i)+z3(i)-z4(i)+z5(i)-z6(i)+z7(i)-z8(i))
288 px1h3(i)=px1(i)*hx(i,3)+ py1(i)*hy(i,3)+pz1(i)*hz(i,3)
289 px2h3(i)=px2(i)*hx(i,3)+ py2(i)*hy(i,3)+pz2(i)*hz(i,3)
290 px3h3(i)=px3(i)*hx(i,3)+ py3(i)*hy(i,3)+pz3(i)*hz(i,3)
291 px4h3(i)=px4(i)*hx(i,3)+ py4(i)*hy(i,3)+pz4(i)*hz(i,3)
293 hx(i,4)=(-x1(i)+x2(i)-x3(i)+x4(i)+x5(i)-x6(i)+x7(i)-x8(i))
294 hy(i,4)=(-y1(i)+y2(i)-y3(i)+y4(i)+y5(i)-y6(i)+y7(i)-y8(i))
295 hz(i,4)=(-z1(i)+z2(i)-z3(i)+z4(i)+z5(i)-z6(i)+z7(i)-z8(i))
296 px1h4(i)=px1(i)*hx(i,4)+ py1(i)*hy(i,4)+pz1(i)*hz(i,4)
297 px2h4(i)=px2(i)*hx(i,4)+ py2(i)*hy(i,4)+pz2(i)*hz(i,4)
298 px3h4(i)=px3(i)*hx(i,4)+ py3(i)*hy(i,4)+pz3(i)*hz(i,4)
299 px4h4(i)=px4(i)*hx(i,4)+ py4(i)*hy(i,4)+pz4(i)*hz(i,4)
300 smax(i)= jac_59_68(i)*jac_59_68(i)+jac_67_49(i)*jac_67_49(i)
301 . +jac_48_57(i)*jac_48_57(i)
302 smax(i)=
max(smax(i),jac_38_29(i)*jac_38_29(i)+jac_19_37(i)*jac_19_37(i)
303 . +jac_27_18(i)*jac_27_18(i))
304 smax(i)=
max(smax(i),jac_26_35(i)*jac_26_35(i)+jac_34_16(i)*jac_34_16(i)
305 . +jac_15_24(i)*jac_15_24(i))
309 3000
FORMAT(/
' ZERO OR NEGATIVE SUB-VOLUME : 3D-ELEMENT NB:',i10/,
310 +
' ELEMENT IS SWITCHED TO SMALL STRAIN OPTION'/)
subroutine s8zdericm3(det, ngl, x1, x2, x3, x4, x5, x6, x7, x8, y1, y2, y3, y4, y5, y6, y7, y8, z1, z2, z3, z4, z5, z6, z7, z8, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px1h1, px1h2, px1h3, px1h4, px2h1, px2h2, px2h3, px2h4, px3h1, px3h2, px3h3, px3h4, px4h1, px4h2, px4h3, px4h4, hx, hy, hz, jac1, jac2, jac3, jac4, jac5, jac6, jac7, jac8, jac9, smax, sav, offg, nnega, index, nel, ismstr)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)