46 D AJ8, AJ9, SMAX, SAV,
47 E OFFG, NNEGA, INDEX, NEL,
56#include "implicit_f.inc"
68 INTEGER,
INTENT(IN) :: ISMSTR
69 INTEGER NNEGA,INDEX(MVSIZ),NEL
72 . X1(*), X2(*), X3(*), X4(*), X5(*), X6(*), X7(*), X8(*),
73 . Y1(*), Y2(*), Y3(*), Y4(*), Y5(*), Y6(*), Y7(*), Y8(*),
74 . Z1(*), Z2(*), Z3(*), Z4(*), Z5(*), Z6(*), Z7(*), Z8(*),
79 . PX1(*), PX2(*), PX3(*), PX4(
80(*), PY2(*), PY3(*), PY4(*),
81 . PZ1(*), PZ2(*), PZ3(*), PZ4(*),
82 . HX(MVSIZ,4), HY(MVSIZ,4), HZ(,4),
83 . aj1(*),aj2(*),aj3(*),
84 . aj4(*),aj5(*),aj6(*),
85 . aj7(*),aj8(*),aj9(*),smax(*),offg(*)
89 INTEGER NGL(*), I, J ,ICOR
94 . aji1(mvsiz), aji2(mvsiz), aji3(mvsiz),
95 . aji4(mvsiz), aji5(mvsiz), aji6(mvsiz),
96 . aji7(mvsiz), aji8(mvsiz), aji9(mvsiz),
97 . x17(mvsiz) , x28(mvsiz) , x35(mvsiz) , x46(mvsiz),
98 . y17(mvsiz) , y28(mvsiz) , y35(mvsiz) , y46(mvsiz),
99 . z17(mvsiz) , z28(mvsiz) , z35(mvsiz) , z46(mvsiz),
100 . jac_59_68(mvsiz), jac_67_49(mvsiz), jac_48_57(mvsiz),
101 . jac_38_29(mvsiz), jac_19_37(mvsiz), jac_27_18(mvsiz),
102 . jac_26_35(mvsiz), jac_34_16(mvsiz), jac_15_24(mvsiz),
103 . aj12(mvsiz), aj45(mvsiz), aj78(mvsiz),
104 . a17(mvsiz) , a28(mvsiz) ,
105 . b17(mvsiz) , b28(mvsiz) ,
106 . c17(mvsiz) , c28(mvsiz)
109 IF (ismstr==10.OR.ismstr==12)
THEN
110#include "vectorize.inc"
139#include "vectorize.inc"
168#include "vectorize.inc"
173 CALL ancmsg(msgid=260,anmode=aninfo,
176 CALL ancmsg(msgid=262,anmode=aninfo,
179#include "lockoff.inc"
194 aj4(i)=x17(i)+x28(i)-x35(i)-x46(i)
195 aj5(i)=y17(i)+y28(i)-y35(i)-y46(i)
196 aj6(i)=z17(i)+z28(i)-z35(i)-z46(i)
210 jac_59_68(i)=aj5(i)*aj9(i)-aj6(i)*aj8(i)
211 jac_67_49(i)=aj6(i)*aj7(i)-aj4(i)*aj9(i)
212 jac_48_57(i)=aj4(i)*aj8(i)-aj5(i)*aj7(i)
214 det(i)=one_over_64*(aj1(i)*jac_59_68(i)+aj2(i)*jac_67_49(i)+aj3(i)
218#include "vectorize.inc"
221 jac_38_29(i)=(-aj2(i)*aj9(i)+aj3(i)*aj8(i))
222 jac_19_37(i)=( aj1(i)*aj9(i)-aj3(i)*aj7(i))
223 jac_27_18(i)=(-aj1(i)*aj8(i)+aj2(i)*aj7(i))
224 jac_26_35(i)=( aj2(i)*aj6(i)-aj3(i)*aj5(i))
225 jac_34_16(i)=(-aj1(i)*aj6(i)+aj3(i)*aj4(i))
226 jac_15_24(i)=( aj1(i)*aj5(i)-aj2(i)*aj4(i))
227 dett(i)=one_over_64/det(i)
228 aji1(i)=dett(i)*jac_59_68(i)
229 aji4(i)=dett(i)*jac_67_49(i)
230 aji7(i)=dett(i)*jac_48_57(i)
231 aji2(i)=dett(i)*jac_38_29(i)
232 aji5(i)=dett(i)*jac_19_37(i)
233 aji8(i)=dett(i)*jac_27_18(i)
234 aji3(i)=dett(i)*jac_26_35(i)
235 aji6(i)=dett(i)*jac_34_16(i)
236 aji9(i)=dett(i)*jac_15_24(i)
237 aj12(i)=aji1(i)-aji2(i)
238 aj45(i)=aji4(i)-aji5(i)
239 aj78(i)=aji7(i)-aji8(i)
240 px2(i)= aj12(i)-aji3(i)
241 py2(i)= aj45(i)-aji6(i)
242 pz2(i)= aj78(i)-aji9(i)
243 px4(i)=-aj12(i)-aji3(i)
244 py4(i)=-aj45(i)-aji6(i)
245 pz4(i)=-aj78(i)-aji9(i)
246 aj12(i)=aji1(i)+aji2(i)
247 aj45(i)=aji4(i)+aji5(i)
248 aj78(i)=aji7(i)+aji8(i)
249 px1(i)=-aj12(i)-aji3(i)
250 py1(i)=-aj45(i)-aji6(i)
251 pz1(i)=-aj78(i)-aji9(i)
252 px3(i)=aj12(i)-aji3(i)
253 py3(i)=aj45(i)-aji6(i)
254 pz3(i)=aj78(i)-aji9(i)
259#include "vectorize.inc"
262 hx(i,1)=(x1(i)+x2(i)-x3(i)-x4(i)-x5(i)-x6(i)+x7(i)+x8(i))
263 hy(i,1)=(y1(i)+y2(i)-y3(i)-y4(i)-y5(i)-y6(i)+y7(i)+y8(i))
264 hz(i,1)=(z1(i)+z2(i)-z3(i)-z4(i)-z5(i)-z6(i)+z7(i)+z8(i))
266 hx(i,2)=(x1(i)-x2(i)-x3(i)+x4(i)-x5(i)+x6(i)+x7(i)-x8(i))
267 hy(i,2)=(y1(i)-y2(i)-y3(i)+y4(i)-y5(i)+y6(i)+y7(i)-y8(i))
268 hz(i,2)=(z1(i)-z2(i)-z3(i)+z4(i)-z5(i)+z6(i)+z7(i)-z8(i))
270 hx(i,3)=(x1(i)-x2(i)+x3(i)-x4(i)+x5(i)-x6(i)+x7(i)-x8(i))
271 hy(i,3)=(y1(i)-y2(i)+y3(i)-y4(i)+y5(i)-y6(i)+y7(i)-y8(i))
272 hz(i,3)=(z1(i)-z2(i)+z3(i)-z4(i)+z5(i)-z6(i)+z7(i)-z8(i))
274 hx(i,4)=(-x1(i)+x2(i)-x3(i)+x4(i)+x5(i)-x6(i)+x7(i)-x8(i))
275 hy(i,4)=(-y1(i)+y2(i)-y3(i)+y4(i)+y5(i)-y6(i)+y7(i)-y8(i))
276 hz(i,4)=(-z1(i)+z2(i)-z3(i)+z4(i)+z5(i)-z6(i)+z7(i)-z8(i))
277 smax(i)= jac_59_68(i)*jac_59_68(i)+jac_67_49(i)*jac_67_49(i)
278 . +jac_48_57(i)*jac_48_57(i)
279 smax(i)=
max(smax(i),jac_38_29(i)*jac_38_29(i)+jac_19_37(i)*jac_19_37(i)
280 . +jac_27_18(i)*jac_27_18(i))
281 smax(i)=
max(smax(i),jac_26_35(i)*jac_26_35(i)+jac_34_16(i)*jac_34_16(i)
282 . +jac_15_24(i)*jac_15_24(i))
287 3000
FORMAT(/
' ZERO OR NEGATIVE SUB-VOLUME : 3D-ELEMENT NB:',i10/,
288 +
' ELEMENT IS SWITCHED TO SMALL STRAIN OPTION'/)
subroutine s8edericm3(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, hx, hy, hz, aj1, aj2, aj3, aj4, aj5, aj6, aj7, aj8, aj9, smax, sav, offg, nnega, index, nel, ismstr)
subroutine s8sforc3(timers, output, elbuf_tab, ng, pm, geo, ixs, x, a, v, ms, w, flux, flu1, veul, fv, ale_connect, iparg, tf, npf, bufmat, partsav, nloc_dmg, dt2t, neltst, ityptst, stifn, fsky, iads, offset, eani, iparts, icp, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nel, nvc, ipm, itask, istrain, temp, fthe, fthesky, iexpan, gresav, grth, igrth, mssa, dmels, table, igeo, xdp, voln, condn, condnsky, d, ioutprt, mat_elem, h3d_strain, snpc, stf, sbufmat, svis, nsvois, idtmins, iresp, idtmin, maxfunc, userl_avail, dt, glob_therm, sensors)
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)