49 I NFT, ISMSTR, JEUL, JHBE,
65#include "implicit_f.inc"
78 INTEGER,
INTENT(IN) :: NEL
79 INTEGER,
INTENT(IN) :: NFT
80 INTEGER,
INTENT(IN) :: ISMSTR
81 INTEGER,
INTENT(IN) :: JEUL
82 INTEGER,
INTENT(IN) :: JHBE
83 INTEGER,
INTENT(IN) :: JCVT
84 INTEGER,
INTENT(IN) :: ISROT
86 . VX1(*), VX2(*), VX3(*), VX4(*), VX5(*), VX6(*), VX7(*), VX8(*),
87 . VY1(*), VY2(*), VY3(*), VY4(*), VY5(*), VY6(*), VY7(*), VY8(*),
88 . VZ1(*), VZ2(*), VZ3(*), VZ4(*), VZ5(*), VZ6(*), VZ7(*), VZ8(*),
89 . PX1(*), PX2(*), PX3(*), PX4(*),
90 . PY1(*), (*), PY3(*), PY4(*),
91 . PZ1(*), PZ2(*), PZ3(*), PZ4(*),
92 . PX5(*), PX6(*), PX7(*), PX8(*),
93 . PY5(*), PY6(*), PY7(*), PY8(*),
94 . PZ5(*), PZ6(*), PZ7(*), PZ8(*),
95 . DXX(*), DXY(*), DXZ(*),
96 . dyx(*), dyy(*), dyz(*),
97 . dzx(*), dzy(*), dzz(*), d4(*), d5(*), d6(*),
98 . wxx(*), wyy(*), wzz(*), vxr(*),vyr(*),vzr(*)
107 . vx46, vy46, vz46, dt1d2, dt1d
109 . pxx2,pyy2,pzz2,aaa,bbb,fac,
110 . exx,exy,exz,eyx,eyy,eyz,ezx,ezy,ezz
114 IF(integ8*jeul==0)
THEN
129 dxx(i)=px1(i)*vx17+px2(i)*vx28+px3(i)*vx35+px4(i)*vx46
130 dyy(i)=py1(i)*vy17+py2(i)*vy28+py3(i)*vy35+py4(i)*vy46
131 dzz(i)=pz1(i)*vz17+pz2(i)*vz28+pz3(i)*vz35+pz4(i)*vz46
132 dxy(i)=py1(i)*vx17+py2(i)*vx28+py3(i)*vx35+py4(i)*vx46
133 dxz(i)=pz1(i)*vx17+pz2(i)*vx28+pz3(i)*vx35+pz4(i)*vx46
134 dyx(i)=px1(i)*vy17+px2(i)*vy28+px3(i)*vy35+px4(i)*vy46
135 dyz(i)=pz1(i)*vy17+pz2(i)*vy28+pz3(i)*vy35+pz4(i)*vy46
136 dzx(i)=px1(i)*vz17+px2(i)*vz28+px3(i)*vz35+px4(i)*vz46
137 dzy(i)=py1(i)*vz17+py2(i)*vz28+py3(i)*vz35+py4(i)*vz46
142 dxx(i)=px1(i)*vx1(i)+px2(i)*vx2(i)+px3(i)*vx3(i)+px4(i)*vx4(i)+px5(i)*vx5(i)+px6(i)*vx6(i)+px7(i)*vx7(i)+px8(i)*vx8(i)
143 dyy(i)=py1(i)*vy1(i)+py2(i)*vy2(i)+py3(i)*vy3(i)+py4(i)*vy4(i)+py5(i)*vy5(i)+py6(i)*vy6(i)+py7(i)*vy7(i)+py8(i)*vy8(i)
144 dzz(i)=pz1(i)*vz1(i)+pz2(i)*vz2(i)+pz3(i)*vz3(i)+pz4(i)*vz4(i)+pz5(i)*vz5(i)+pz6(i)*vz6(i)+pz7(i)*vz7(i)+pz8(i)*vz8(i)
145 dxy(i)=py1(i)*vx1(i)+py2(i)*vx2(i)+py3(i)*vx3(i)+py4(i)*vx4(i)+py5(i)*vx5(i)+py6(i)*vx6(i)+py7(i)*vx7(i)+py8(i)*vx8(i)
146 dxz(i)=pz1(i)*vx1(i)+pz2(i)*vx2(i)+pz3(i)*vx3(i)+pz4(i)*vx4(i)+pz5(i)*vx5(i)+pz6(i)*vx6(i)+pz7(i)*vx7(i)+pz8(i)*vx8(i)
147 dyx(i)=px1(i)*vy1(i)+px2(i)*vy2(i)+px3(i)*vy3(i)+px4(i)*vy4(i)+px5(i)*vy5(i)+px6(i)*vy6(i)+px7(i)*vy7(i)+px8(i)*vy8(i)
148 dyz(i)=pz1(i)*vy1(i)+pz2(i)*vy2(i)+pz3(i)*vy3(i)+pz4(i)*vy4(i)+pz5(i)*vy5(i)+pz6(i)*vy6(i)+pz7(i)*vy7(i)+pz8(i)*vy8(i)
149 dzx(i)=px1(i)*vz1(i)+px2(i)*vz2(i)+px3(i)*vz3(i)+px4(i)*vz4(i)+px5(i)*vz5(i)+px6(i)*vz6(i)+px7(i)*vz7(i)+px8(i)*vz8(i)
150 dzy(i)=py1(i)*vz1(i)+py2(i)*vz2(i)+py3(i)*vz3(i)+py4(i)*vz4(i)+py5(i)*vz5(i)+py6(i)*vz6(i)+py7(i)*vz7(i)+py8(i)*vz8(i)
155 IF(iscau>0 .OR. imp_lr>0)dt1d2=dt1
163 wzz(i)=dt1d2*(dyx(i)-dxy(i))
164 wyy(i)=dt1d2*(dxz(i)-dzx(i))
165 wxx(i)=dt1d2*(dzy(i)-dyz(i))
173 IF (impl_s == 0 .OR. (idyna > 0 .AND. ismdisp == 0))
THEN
184 dxx(i)=dxx(i)-dt1d2*(exx*exx+eyx*eyx+ezx*ezx)
185 dyy(i)=dyy(i)-dt1d2*(eyy*eyy+ezy*ezy+exy*exy)
186 dzz(i)=dzz(i)-dt1d2*(ezz*ezz+exz*exz+eyz*eyz)
187 aaa=dt1d2*(exx*exy+eyx*eyy+ezx*ezy)
191 aaa=dt1d2*(eyy*eyz+ezy*ezz+exy*exz)
195 aaa=dt1d2*(ezz*ezx+exz*exx+eyz*eyx)
200 ELSEIF (ismdisp>0.AND.iscau==0)
THEN
203 d4(i) = dxy(i)+dyx(i)
204 d5(i) = dyz(i)+dzy(i)
205 d6(i) = dxz(i)+dzx(i)
210 d4(i)=dxy(i)+dyx(i)-dt1d*(dxx(i)*dxy(i)+dyx(i)*dyy(i)+dzx(i)*dzy(i))
211 d5(i)=dyz(i)+dzy(i)-dt1d*(dyy(i)*dyz(i)+dzy(i)*dzz(i)+dxy(i)*dxz(i))
212 d6(i)=dxz(i)+dzx(i)-dt1d*(dzz(i)*dzx(i)+dxz(i)*dxx(i)+dyz(i)*dyx(i))
213 dxx(i)=dxx(i)-dt1d2*(dxx(i)*dxx(i)+dyx(i)*dyx(i)+dzx(i)*dzx(i))
214 dyy(i)=dyy(i)-dt1d2*(dyy(i)*dyy(i)+dzy(i)*dzy(i)+dxy(i)*dxy(i))
215 dzz(i)=dzz(i)-dt1d2*(dzz(i)*dzz(i)+dxz(i)*dxz(i)+dyz(i)*dyz(i))
220 ELSEIF (jhbe>=2)
THEN
232 dxx(i) = dxx(i)-dt1d2*(exx*exx+eyx*eyx+ezx*ezx)
233 dyy(i) = dyy(i)-dt1d2*(eyy*eyy+ezy*ezy+exy*exy)
234 dzz(i) = dzz(i)-dt1d2*(ezz*ezz+exz*exz+eyz*eyz)
235 aaa = dt1d2*(exx*exy+eyx*eyy+ezx*ezy)
238 d4(i) = dxy(i)+dyx(i)
239 aaa = dt1d2*(eyy*eyz+ezy*ezz+exy*exz)
242 d5(i) = dyz(i)+dzy(i)
243 aaa = dt1d2*(ezz*ezx+exz*exx+eyz*eyx)
246 d6(i) = dxz(i)+dzx(i)
248 pxx2 = px1(i)*px1(i)+px2(i)*px2(i)+px3(i)*px3(i)+px4(i)*px4(i)
249 pyy2 = py1(i)*py1(i)+py2(i)*py2(i)+py3(i)*py3(i)+py4(i)*py4(i)
250 pzz2 = pz1(i)*pz1(i)+pz2(i)*pz2(i)+pz3(i)*pz3(i)+pz4(i)*pz4(i)
251 wzz(i) = dt1*(pyy2*dyx(i)-pxx2*dxy(i))/(pxx2+pyy2)
252 wxx(i) = dt1*(pzz2*dzy(i)-pyy2*dyz(i))/(pyy2+pzz2)
253 wyy(i) = dt1*(pxx2*dxz(i)-pzz2*dzx(i))/(pzz2+pxx2)
258 d4(i) = dxy(i)+dyx(i)
259 d5(i) = dyz(i)+dzy(i)
260 d6(i) = dxz(i)+dzx(i)
264 wzz(i) = dt1d2*(dyx(i)-dxy(i))
265 wyy(i) = dt1d2*(dxz(i)-dzx(i))
266 wxx(i) = dt1d2*(dzy(i)-dyz(i))
273 dxy(i)=dxy(i) + vzr(i)
274 dyx(i)=dyx(i) - vzr(i)
275 dyz(i)=dyz(i) + vxr(i)
276 dzy(i)=dzy(i) - vxr(i)
277 dzx(i)=dzx(i) + vyr(i)
278 dxz(i)=dxz(i) - vyr(i)
283 wxx(i) = aaa*wxx(i) + bbb*vxr(i)
284 wyy(i) = aaa*wyy(i) + bbb*vyr(i)
285 wzz(i) = aaa*wzz(i) + bbb*vzr(i)
292 IF(fani_cell%IS_VORT_X_REQUESTED)
THEN
294 fani_cell%VORT_X(i+nft) = fac*wxx(i)
297 IF(fani_cell%IS_VORT_Y_REQUESTED)
THEN
299 fani_cell%VORT_Y(i+nft) = fac*wyy(i)
302 IF(fani_cell%IS_VORT_Z_REQUESTED)
THEN
304 fani_cell%VORT_Z(i+nft) = fac*wzz(i)
subroutine sdefo3(fani_cell, px1, px2, px3, px4, py1, py2, py3, py4, pz1, pz2, pz3, pz4, px5, px6, px7, px8, py5, py6, py7, py8, pz5, pz6, pz7, pz8, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, dxx, dxy, dxz, dyx, dyy, dyz, dzx, dzy, dzz, d4, d5, d6, wxx, wyy, wzz, vxr, vyr, vzr, nel, nft, ismstr, jeul, jhbe, jcvt, isrot)
subroutine sforc3(timers, output, elbuf_tab, ng, pm, geo, ixs, x, nv46, a, v, ms, w, flux, flu1, veul, fv, ale_connect, iparg, tf, npf, bufmat, partsav, itab, dt2t, neltst, ityptst, stifn, fsky, iads, offset, eani, iparts, 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, fskym, msnf, isky, fskyi, nvc, ipm, igeo, ar, vr, in, fr_wave, dr, bufvois, itask, qmv, istrain, temp, fthe, fthesky, iexpan, gresav, grth, igrth, mssa, dmels, table, phi1, phi2, vf, af, df, wf, ffsky, afglob, msf, iparg1, xdp, por, icontact, ifoam, voln, condn, condnsky, agrav, igrv, lgrav, sensors, skew, nale, d, ioutprt, nloc_dmg, mat_elem, h3d_strain, dt, idel7nok, nsvois, sz_bufvois, snpc, stf, sbufmat, svis, idtmins, iresp, idel7ng, maxfunc, userl_avail, glob_therm, impl_s, idyna, wfext)