45 1 ELBUF_STR, JFT, JLT, NEL,
46 2 MTN, IGEO, GEO, IPM,
50 6 DT2T, NELTST, ITYPTST, STIFN,
51 7 STIFR, MS, IN, FSKY,
52 8 IADR, NSENSOR, SENSOR_TAB,OFFSET, ANIM,
53 9 PARTSAV, IPARTR, TANI,
54 A BUFMAT, BUFGEO, PM, RBY,
58 E GRESAV, GRTH, IGRTH, MSRT,
59 F DMELRT, H3D_DATA, JSMS, IGRE,
60 G NFT, STF, SANIN, IRESP,
70 use element_mod ,
only : nixr
74#include "implicit_f.inc"
88 type(python_),
intent(inout) :: PYTHON
89 INTEGER,
INTENT(IN) :: STF
90 INTEGER,
INTENT(IN) :: SANIN
91 INTEGER,
INTENT(IN) :: IRESP
92 INTEGER,
INTENT(IN) :: SNPC
93 INTEGER,
INTENT(IN) :: IGRE,NSENSOR
94 INTEGER,
INTENT(IN) :: NFT
95 INTEGER,
INTENT(IN) :: JSMS
96 INTEGER IXR(NIXR,*), NPF(*),IADR(3,*),IPARTR(*),
97 . IGEO(NPROPGI,*),,JLT,NELTST ,ITYPTST,OFFSET,
98 . NEL,MTN,GRTH(*),IGRTH(*),FLG_KJ2,IPM(NPROPMI,*)
100 . GEO(NPROPG,*),X(*),F(*),TF(STF),SKEW(LSKEW,*),FSKY(*),
101 . VR(*), V(*), AR(*), STIFN(*),STIFR(*),MS(*), IN(*),
102 . ANIM(),PARTSAV(*),TANI(15,*),
103 . BUFMAT(*),BUFGEO(*),PM(*),RBY(*),
104 . FX1(MVSIZ),FY1(MVSIZ),FZ1(MVSIZ),
105 . fx2(mvsiz),fy2(mvsiz),fz2(mvsiz),
106 . mx1(mvsiz),my1(mvsiz),mz1(mvsiz),
107 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),gresav(*),
109 DOUBLE PRECISION XDP(3,*)
112 TYPE (ELBUF_STRUCT_),
TARGET :: ELBUF_STR
114 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR),
INTENT(IN) ::
118 INTEGER NGL(MVSIZ), PID(MVSIZ), NC1(MVSIZ), NC2(MVSIZ),
119 . MID(MVSIZ),IEQUIL(MVSIZ)
122 . STI(3,MVSIZ),STIR(3,MVSIZ),
123 . FR_W_E(MVSIZ),OFF(MVSIZ),BID
125 . X1(MVSIZ),Y1(MVSIZ),Z1(MVSIZ),
126 . x2(mvsiz),y2(mvsiz),z2(mvsiz),
127 . exx(mvsiz),eyx(mvsiz),ezx(mvsiz),
128 . exy(mvsiz),eyy(mvsiz),ezy(mvsiz),
129 . exz(mvsiz),eyz(mvsiz),ezz(mvsiz),
130 . xcr(mvsiz),xm(mvsiz),rx1(mvsiz),rx2(mvsiz),
131 . ry1(mvsiz),ry2(mvsiz),rz1(mvsiz),rz2(mvsiz),xin(mvsiz),
132 . ak(mvsiz),xkm(mvsiz),xcm(mvsiz),xkr(mvsiz)
133 INTEGER IGTYP,,I0,NUVAR,IADBUF
135 . x1dp(3,mvsiz),x2dp(3,mvsiz)
137 TYPE(g_bufel_),
POINTER :: GBUF
140 GBUF => elbuf_str%GBUF
156 ii(i) = (i-1)*nel + 1
169 2 x1dp, x2dp, ngl, x1,
172 5 ry1, rz1, rx2, ry2,
173 6 rz2, nc1, nc2, nel)
175 1 geo, gbuf%OFF, sensor_tab, gbuf%TOTDEPL(ii(1)),
176 2 gbuf%TOTDEPL(ii(2)),gbuf%TOTDEPL(ii(3)),gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)),
177 3 gbuf%LENGTH(ii(3)), gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)),
178 4 igeo, pid, nel, nsensor )
181 IF (gbuf%OFF(i) /= -ten)
THEN
182 off(i)=
min(one,abs(gbuf%OFF(i)))
189 nuvar = nint(geo(25,i0))
192 iadbuf = ipm(7,mid(i))
193 nuvar =
max(nuvar, nint(bufmat(iadbuf + 4 -1)))
197 1 ipm, igeo, mid, pid,
198 2 bufmat, skew, geo, gbuf%FOR(ii(1)),
199 3 gbuf%FOR(ii(2)), gbuf%FOR(ii(3)), gbuf%EINT, gbuf%TOTDEPL(ii(1)),
200 4 gbuf%TOTDEPL(ii(2)), gbuf%TOTDEPL(ii(3)), npf, tf,
201 5 off, gbuf%DEP_IN_TENS(ii(1)), gbuf%DEP_IN_TENS(ii(2)), gbuf%DEP_IN_TENS(ii(3)),
202 6 gbuf%DEP_IN_COMP(ii(1)), gbuf%DEP_IN_COMP(ii(2)), gbuf%DEP_IN_COMP(ii(3)), gbuf%FOREP(ii(1)),
203 7 gbuf%FOREP(ii(2)), gbuf%FOREP(ii(3)), gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)),
204 8 gbuf%LENGTH(ii(3)), gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)),
205 9 gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)), gbuf%ROT_IN_TENS(ii(1)),
206 a gbuf%ROT_IN_TENS(ii(2)), gbuf%ROT_IN_TENS(ii(3)), gbuf%MOMEP(ii(1)), gbuf%MOMEP(ii(2)),
207 b gbuf%MOMEP(ii(3)), gbuf%ROT_IN_COMP(ii(1)), gbuf%ROT_IN_COMP(ii(2)), gbuf%ROT_IN_COMP(ii(3)),
208 c anim, gbuf%POSX, gbuf%POSY, gbuf%POSZ,
209 d gbuf%POSXX, gbuf%POSYY, gbuf%POSZZ,
210 e v, gbuf%E6, gbuf%RUPTCRIT, nel,
211 f gbuf%LENGTH_ERR, x1dp, x2dp, gbuf%YIELD(ii(1)),
212 g gbuf%YIELD(ii(2)), gbuf%YIELD(ii(3)), gbuf%YIELD(ii(4)), gbuf%YIELD(ii(5)),
213 h gbuf%YIELD(ii(6)), ngl, xkr, exx,
214 i eyx, ezx, exy, eyy,
215 j ezy, exz, eyz, ezz,
216 k xcr, rx1, ry1, rz1,
217 l rx2, ry2, rz2, xin,
219 n nc1, nc2, nuvar, gbuf%VAR,
220 o gbuf%MASS, gbuf%DEFINI(ii(1)), gbuf%DEFINI(ii(2)), gbuf%DEFINI(ii(3)),
221 p gbuf%DEFINI(ii(4)), gbuf%DEFINI(ii(5)), gbuf%DEFINI(ii(6)), iequil,
222 q gbuf%SKEW_ID, nft, stf, sanin,
223 r iresp, snpc, gbuf%G_YIELD_IN_COMP ,gbuf%G_XXOLD_IN_COMP,
224 s gbuf%YIELD_IN_COMP(ii(1)),gbuf%YIELD_IN_COMP(ii(2)),gbuf%YIELD_IN_COMP(ii(3)),gbuf%YIELD_IN_COMP
225 t gbuf%YIELD_IN_COMP(ii(5)),gbuf%YIELD_IN_COMP(ii(6)),gbuf%XXOLD_IN_COMP(ii(1)),gbuf%XXOLD_IN_COMP
226 u gbuf%XXOLD_IN_COMP(ii(3)),gbuf%XXOLD_IN_COMP(ii(4)),gbuf%XXOLD_IN_COMP(ii(5)),gbuf%XXOLD_IN_COMP(ii(6)))
229 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
233 1 jft, jlt, gbuf%OFF, dt2t,
234 2 neltst, ityptst, sti, stir,
235 3 ms, in, msrt, dmelrt,
236 4 gbuf%G_DT,gbuf%DT, ngl, xcr,
238 6 xkr, nc1, nc2, jsms)
240 1 gbuf%EINT,partsav, ixr, geo,
241 2 v, ipartr, gbuf%MASS,gresav,
242 3 grth, igrth, gbuf%OFF, nc1,
246 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
247 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, h3d_data,
249 IF (iparit == 0)
THEN
251 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
252 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
253 3 sti, stir, stifn, stifr,
254 4 fx1, fx2, fy1, fy2,
255 5 fz1, fz2, mx1, mx2,
256 6 my1, my2, mz1, mz2,
258 8 x2, y2, z2, iequil,
259 9 exx, eyx, ezx, exy,
260 a eyy, ezy, exz, eyz,
261 b ezz, nc1, nc2, nel)
264 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
265 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
266 3 fsky, fsky, iadr, fx1,
267 4 fx2, fy1, fy2, fz1,
268 5 fz2, mx1, mx2, my1,
269 6 my2, mz1, mz2, geo,
271 8 y2, z2, iequil, exx,
272 9 eyx, ezx, exy, eyy,
273 a ezy, exz, eyz, ezz,
subroutine r23l108def3(python, ipm, igeo, mid, pid, uparam, skew, geo, fx, fy, fz, e, dx, dy, dz, npf, tf, off, dpx, dpy, dpz, dpx2, dpy2, dpz2, fxep, fyep, fzep, x0, y0, z0, xmom, ymom, zmom, rx, ry, rz, rpx, rpy, rpz, xmep, ymep, zmep, rpx2, rpy2, rpz2, anim, iposx, iposy, iposz, iposxx, iposyy, iposzz, v, e6, critnew, nel, x0_err, x1dp, x2dp, yieldx, yieldy, yieldz, yieldx2, yieldy2, yieldz2, ngl, xkr, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, xcr, rx1, ry1, rz1, rx2, ry2, rz2, xin, ak, xm, xkm, xcm, nc1, nc2, nuvar, uvar, mass, dx0, dy0, dz0, rx0, ry0, rz0, iequil, skew_id, nft, stf, sanin, iresp, snpc, szyield_comp, szxxold_comp, yieldxc, yieldyc, yieldzc, yieldrxc, yieldryc, yieldrzc, dxoldc, dyoldc, dzoldc, drxoldc, dryoldc, drzoldc)
subroutine r23law108(python, elbuf_str, jft, jlt, nel, mtn, igeo, geo, ipm, ixr, x, table, xdp, f, npf, tf, skew, flg_kj2, vr, ar, v, dt2t, neltst, ityptst, stifn, stifr, ms, in, fsky, iadr, nsensor, sensor_tab, offset, anim, partsav, ipartr, tani, bufmat, bufgeo, pm, rby, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, gresav, grth, igrth, msrt, dmelrt, h3d_data, jsms, igre, nft, stf, sanin, iresp, snpc)
subroutine r2cum3(f, forx, fory, forz, xm, xmom, ymom, zmom, sti, stir, stifn, stifr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, geo, x1, y1, z1, x2, y2, z2, iequil, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, nc1, nc2, nel)