105
106
107
108 USE python_funct_mod
109 USE elbufdef_mod
111 USE sensor_mod
114 USE preload_axial_mod
115 use element_mod , only : nixr
116
117
118
119#include "implicit_f.inc"
120
121
122
123#include "mvsiz_p.inc"
124
125
126
127#include "param_c.inc"
128#include "parit_c.inc"
129#include "units_c.inc"
130#include "com04_c.inc"
131#include "com08_c.inc"
132#include "userlib.inc"
133
134
135
136 TYPE(python_), INTENT(INOUT) :: PYTHON
137 INTEGER, INTENT(IN) :: STF
138 INTEGER, INTENT(IN) :: SANIN
139 INTEGER, INTENT(IN) :: IRESP
140 INTEGER, INTENT(IN) :: IMPL_S
141 INTEGER, INTENT(IN) :: IDYNA
142 INTEGER, INTENT(IN) :: SNPC
143 INTEGER, INTENT(INOUT) :: IAD
144 INTEGER, INTENT(IN) :: IGRE
145 INTEGER, INTENT(IN) :: NFT
146 INTEGER IXR(NIXR,*), NPF(SNPC),IADR(3,*),IPARTR(*),
147 . IGEO(NPROPGI,*),JFT,JLT,NELTST ,ITYPTST,OFFSET,
148 . NEL,MTN,GRTH(*),IGRTH(*),FLG_KJ2,ITASK
149 INTEGER, INTENT(IN) :: JSMS
151 . geo(npropg,*),x(*),f(*),tf(stf),skew(lskew,*),fsky(*),
152 . vr(*), v(3,*), ar(*), stifn(*),stifr(*),ms(*), in(*),
153 . anim(sanin),partsav(*),tani(15,*),
154 . fr_wave(*),bufmat(*),bufgeo(*),pm(*),rby(*),
155 . fx1(mvsiz),fy1(mvsiz),fz1(mvsiz),
156 . fx2(mvsiz),fy2(mvsiz),fz2(mvsiz),
157 . mx1(mvsiz),my1(mvsiz),mz1(mvsiz),
158 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),gresav(*),
159 . msrt(*), dmelrt(*)
160 my_real,
INTENT(IN) :: preld1,stf_f
161 DOUBLE PRECISION XDP(3,*)
162 TYPE(TTABLE) TABLE(*)
163
164 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
165 TYPE(H3D_DATABASE) :: H3D_DATA
166 TYPE (SENSORS_) , INTENT(INOUT) :: SENSORS
167
168
169
170 INTEGER NGL(MVSIZ),MGN(MVSIZ),NC1(MVSIZ),NC2(MVSIZ),NC3(MVSIZ),IEQUIL(MVSIZ)
171
173 . sti(3,mvsiz),stir(3,mvsiz),visi(mvsiz),visir(mvsiz),
174 . usti(mvsiz),ustir(mvsiz),df(mvsiz),al(mvsiz),unused(mvsiz),
175 . uiner(mvsiz),fr_w_e(mvsiz),off(mvsiz),bid
177 . exx2(mvsiz), eyx2(mvsiz), ezx2(mvsiz),
178 . exy2(mvsiz), eyy2(mvsiz), ezy2(mvsiz),
179 . exz2(mvsiz), eyz2(mvsiz), ezz2(mvsiz),
180 . al2(mvsiz),x1(mvsiz),y1(mvsiz),z1(mvsiz),
181 . x2(mvsiz),y2(mvsiz),z2(mvsiz),
182 . ex(mvsiz),ey(mvsiz),ez(mvsiz),
183 . exx(mvsiz),eyx(mvsiz),ezx(mvsiz),
184 . exy(mvsiz),eyy(mvsiz),ezy(mvsiz),
185 . exz(mvsiz),eyz(mvsiz),ezz(mvsiz),
186 . xcr(mvsiz),xk(mvsiz),xm(mvsiz),xc(mvsiz),rx1(mvsiz),rx2(mvsiz),
187 . ry1(mvsiz),ry2(mvsiz),rz1(mvsiz),rz2(mvsiz),xin(mvsiz),
188 . ak(mvsiz),xkm(mvsiz),xcm(mvsiz),xkr(mvsiz),
189 . ex2(mvsiz),ey2(mvsiz),ez2(mvsiz),vx1(mvsiz),vx2(mvsiz),
190 . vy1(mvsiz),vy2(mvsiz),vz1(mvsiz),vz2(mvsiz),vl12(mvsiz)
191 INTEGER IGTYP,I,I0,NUVAR,NSENSOR
192 double precision
193 . x1dp(3,mvsiz),x2dp(3,mvsiz),x3dp(3,mvsiz),
194 . al2dp(mvsiz),aldp(mvsiz)
195 my_real user_fx(mvsiz),user_fy(mvsiz),user_fz(mvsiz),
196 * user_momx(mvsiz),user_momy(mvsiz),user_momz(mvsiz),
197 * user_v_repcvtx(mvsiz),user_v_repcvty(mvsiz),user_v_repcvtz(mvsiz),
198 * user_vr_repcvtx(mvsiz),user_vr_repcvty(mvsiz),user_vr_repcvtz(mvsiz),
199 * user_eint(mvsiz)
200 my_real,
DIMENSION(:),
ALLOCATABLE :: user_uvar
201
202 TYPE(G_BUFEL_),POINTER :: GBUF
203 INTEGER II(6)
204
205 CHARACTER OPTION*256
206 INTEGER SIZE
207
208 gbuf => elbuf_str%GBUF
209 nsensor = sensors%NSENSOR
210
211 fx1(1:mvsiz) = zero
212 fx2(1:mvsiz) = zero
213 fy1(1:mvsiz) = zero
214 fy2(1:mvsiz) = zero
215 fz1(1:mvsiz) = zero
216 fz2(1:mvsiz) = zero
217 mx1(1:mvsiz) = zero
218 mx2(1:mvsiz) = zero
219 my1(1:mvsiz) = zero
220 my2(1:mvsiz) = zero
221 mz1(1:mvsiz) = zero
222 mz2(1:mvsiz) = zero
223
224 DO i=1,6
225 ii(i) = (i-1)*nel + 1
226 ENDDO
227
228 i0 = ixr(1,1)
229 igtyp = igeo(11,i0)
230
231 bid = zero
232
233 nuvar = nint(geo(25,i0))
234
235 fr_w_e(1:nel) = zero
236
237 IF (igtyp == 4) THEN
238
240 1 x, vr, ixr, xdp,
241 2 x1dp, x2dp
242 3 nc1, nc2, nel)
244 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
245 2 gbuf%LENGTH(ii(1)), igeo, mgn, nel,nsensor)
246
247 DO i=jft,jlt
248 IF (gbuf%OFF(i) /= -ten) THEN
249 off(i)=
min(one,abs(gbuf%OFF(i)))
250 ELSE
251
252 off(i)=zero
253 ENDIF
254 ENDDO
255
257 1 geo, gbuf%FOR(ii(1)), gbuf%LENGTH(ii(1)), gbuf%EINT,
258 2 gbuf%TOTDEPL(ii(1)), npf, tf, off,
259 3 gbuf%DEP_IN_TENS(ii(1)),gbuf%FOREP(ii(1)), gbuf%DEP_IN_COMP(ii(1)),anim,
260 4 gbuf%POSX, igeo, gbuf%LENGTH_ERR,
261 5 x1dp, x2dp, v, gbuf%YIELD(ii(1)),
262 6 ngl, mgn, ex, ey,
263 7 ez, xk, xm, xc,
264 8 ak, nc1, nc2, nuvar,
265 9 gbuf%VAR, gbuf%DEFINI, nel, nft,stf,
266 a sanin, iresp, snpc)
267
268 DO i=jft,jlt
269 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
270 ENDDO
271
273 1 jft, jlt, gbuf%OFF, dt2t,
274 2 neltst, ityptst, sti, ms,
275 3 msrt, dmelrt, gbuf%G_DT,gbuf%DT,
276 4 ngl, xk, xm, xc,
277 5 ak, nc1, nc2, jsms)
279 1 gbuf%EINT, partsav, ixr, geo,
280 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
281 3 grth, igrth, gbuf%OFF, nc1,
282 4 nc2, x, vr, itask,
283 5 nel, igre, sensors)
285 1 gbuf%FOR(ii(1)),tani, h3d_data, nel)
286
287 IF (preld1>zero) THEN
288 DO i=jft,jlt
289 vl12(i) = (v(1,nc2(i))-v(1,nc1(i)))*ex(i)+
290 1 (v(2,nc2(i))-v(2,nc1(i)))*ey(i)+
291 2 (v(3,nc2(i))-v(3,nc1(i)))*ez(i)
292 ENDDO
293 CALL preload_axial(nel,preld1,gbuf%BPRELD,vl12,stf_f,gbuf%FOR)
294 gbuf%FOREP(jft:jlt) = gbuf%FOR(jft:jlt)
295 END IF
296 IF (iparit == 0) THEN
298 1 f, gbuf%FOR(ii(1)),sti, stifn,
299 2 fx1, fx2, fy1, fy2,
300 3 fz1, fz2, mx1, mx2,
301 4 my1, my2, mz1, mz2,
302 5 ex, ey, ez, nc1,
303 6 nc2, nel)
304 ELSE
306 1 gbuf%FOR(ii(1)),sti, fsky, fsky,
307 2 iadr, fx1, fx2, fy1,
308 3 fy2, fz1, fz2, mx1,
309 4 mx2, my1, my2, mz1,
310 5 mz2, ex, ey, ez,
311 6 nel, nft)
312 ENDIF
313
314
315 ELSEIF (igtyp == 26) THEN
316
318 1 x, vr, ixr, xdp,
319 2 x1dp, x2dp, ngl, mgn,
320 3 nc1, nc2, nel)
322 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL
323 2 gbuf%LENGTH(ii(1)), igeo, mgn, nel ,nsensor)
324
325 DO i=jft,jlt
326 IF (gbuf%OFF(i) /= -ten) THEN
327 off(i)=
min(one,abs(gbuf%OFF(i)))
328 ELSE
329
330 off(i)=zero
331 ENDIF
332 ENDDO
333
335 1 gbuf%FOR(ii(1)), gbuf%EINT, gbuf%TOTDEPL(ii(1)), gbuf%LENGTH(ii(1)),
336 2 gbuf%DV, gbuf%FOREP(ii(1)), gbuf%DEP_IN_COMP(ii(1)),gbuf%POSX,
337 3 geo, igeo, npf, tf,
338 4 v, off, anim, fr_wave,
339 5 gbuf%LENGTH_ERR, x1dp, x2dp, ngl,
340 6 mgn, ex, ey, ez,
341 7 xk, xm, xc, ak,
342 8 nel, nft, iad, gbuf%RUPTCRIT(ii(1)))
343
344 DO i=jft,jlt
345 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
346 ENDDO
347
349 1 jft, jlt, gbuf%OFF, dt2t,
350 2 neltst, ityptst, sti, ms,
351 3 msrt, dmelrt, gbuf%G_DT,gbuf%DT,
352 4 ngl, xk, xm, xc,
353 5 ak, nc1, nc2, jsms)
355 1 gbuf%EINT, partsav, ixr, geo,
356 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
357 3 grth, igrth, gbuf%OFF, nc1,
358 4 nc2, x, vr, itask,
359 5 nel, igre, sensors)
361 1 gbuf%FOR(ii(1)),tani, h3d_data, nel)
362
363 IF (iparit == 0) THEN
365 1 f, gbuf%FOR(ii(1)),sti, stifn,
366 2 fx1, fx2, fy1, fy2,
367 3 fz1, fz2, mx1, mx2,
368 4 my1, my2, mz1,
369 5 ex, ey, ez, nc1,
370 6 nc2, nel)
371 ELSE
373 1 gbuf%FOR(ii(1)),sti, fsky, fsky,
374 2 iadr, fx1, fx2, fy1,
375 3 fy2, fz1, fz2, mx1,
376 4 mx2, my1, my2, mz1,
377 5 mz2, ex, ey, ez,
378 6 nel, nft)
379 ENDIF
380
381 ELSEIF (igtyp == 27) THEN
382
384 1 x, vr, ixr, xdp,
385 2 x1dp, x2dp, ngl, mgn,
386 3 nc1, nc2, nel)
388 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
389 2 gbuf%LENGTH(ii(1)), igeo, mgn, nel ,nsensor )
390
391 DO i=jft,jlt
392 IF (gbuf%OFF(i) /= -ten) THEN
393 off(i)=
min(one,abs(gbuf%OFF(i)))
394 ELSE
395
396 off(i)=zero
397 ENDIF
398 ENDDO
399
401 1 gbuf%FOR(ii(1)), gbuf%EINT, gbuf%TOTDEPL(ii(1)),gbuf%LENGTH(ii(1)),
402 2 gbuf%POSX, geo, igeo, npf,
403 3 tf, v, off, anim,
404 4 gbuf%LENGTH_ERR, x1dp, x2dp, ngl,
405 5 mgn, ex, ey, ez,
406 6 xk, xm, xc, ak,
407 7 nel, nft, gbuf%RUPTCRIT(ii(1)))
408
409 DO i=jft,jlt
410 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
411 ENDDO
412
414 1 jft, jlt, gbuf%OFF, dt2t,
415 2 neltst, ityptst, sti, ms,
416 3 msrt, dmelrt, gbuf%G_DT,gbuf%DT,
417 4 ngl, xk, xm, xc,
418 5 ak, nc1, nc2, jsms)
420 1 gbuf%EINT, partsav, ixr, geo,
421 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
422 3 grth, igrth, gbuf%OFF, nc1,
423 4 nc2, x, vr, itask,
424 5 nel, igre, sensors)
426 1 gbuf%FOR(ii(1)),tani, h3d_data, nel)
427
428 IF (iparit == 0) THEN
430 1 f, gbuf%FOR(ii(1)),sti, stifn,
431 2 fx1, fx2, fy1, fy2,
432 3 fz1, fz2, mx1, mx2,
433 4 my1, my2, mz1, mz2,
434 5 ex, ey, ez, nc1,
435 6 nc2, nel)
436 ELSE
438 1 gbuf%FOR(ii(1)),sti, fsky, fsky,
439 2 iadr, fx1, fx2, fy1,
440 3 fy2, fz1, fz2, mx1,
441 4 mx2, my1, my2, mz1,
442 5 mz2, ex, ey, ez,
443 6 nel, nft)
444 ENDIF
445
446 ELSEIF (igtyp == 8) THEN
447
449 1 x, vr, ixr, xdp,
450 2 x1dp, x2dp, ngl, x1,
451 3 y1, z1, x2, y2,
452 4 z2, mgn, rx1, ry1,
453 5 rz1, rx2, ry2, rz2,
454 6 nc1, nc2, nel)
456 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
457 2 gbuf%TOTDEPL(ii(2)),gbuf%TOTDEPL(ii(3)),gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)),
458 3 gbuf%LENGTH(ii(3)), gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)),
459 4 igeo, mgn, nel, nsensor)
460
461 DO i=jft,jlt
462 IF (gbuf%OFF(i) /= -ten) THEN
463 off(i)=
min(one,abs(gbuf%OFF(i)))
464 ELSE
465
466 off(i)=zero
467 ENDIF
468 ENDDO
469
471 1 skew, geo, gbuf%FOR(ii(1)), gbuf%FOR(ii(2)),
472 2 gbuf%FOR(ii(3)), gbuf%EINT, gbuf%TOTDEPL(ii(1)), gbuf%TOTDEPL(ii(2)),
473 3 gbuf%TOTDEPL(ii(3)), npf, tf, off,
474 4 gbuf%DEP_IN_TENS(ii(1)),gbuf%DEP_IN_TENS(ii(2)),gbuf%DEP_IN_TENS(ii(3)),gbuf%DEP_IN_COMP(ii(1)),
475 5 gbuf%DEP_IN_COMP(ii(2)),gbuf%DEP_IN_COMP(ii(3)),gbuf%FOREP(ii(1)), gbuf%FOREP(ii(2)),
476 6 gbuf%FOREP(ii(3)), gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)), gbuf%LENGTH(ii(3)),
477 7 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%TOTROT(ii(1)),
478 8 gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)), gbuf%ROT_IN_TENS(ii(1)),gbuf%ROT_IN_TENS(ii(2)),
479 9 gbuf%ROT_IN_TENS(ii(3)),gbuf%MOMEP(ii(1)), gbuf%MOMEP(ii(2)), gbuf%MOMEP(ii(3)),
480 a gbuf%ROT_IN_COMP(ii(1)),gbuf%ROT_IN_COMP(ii(2)),gbuf%ROT_IN_COMP(ii(3)),anim,
481 b gbuf%POSX, gbuf%POSY, gbuf%POSZ, gbuf%POSXX,
482 c gbuf%POSYY, gbuf%POSZZ, v,
483 d igeo, gbuf%E6, gbuf%RUPTCRIT, nel,
484 e gbuf%LENGTH_ERR, x1dp, x2dp, gbuf%YIELD(ii(1)),
485 f gbuf%YIELD(ii(2)), gbuf%YIELD(ii(3)), gbuf%YIELD(ii(4)), gbuf%YIELD
486 g gbuf%YIELD(ii(6)), ngl, xkr, mgn,
487 h exx, eyx, ezx, exy,
488 i eyy, ezy, exz, eyz,
489 j ezz, xcr, rx1, ry1,
490 k rz1, rx2, ry2, rz2,
491 l xin, ak, xm, xkm,
492 m xcm, nc1, nc2, nuvar,
493 n gbuf%VAR, gbuf%DEFINI(ii(1)), gbuf%DEFINI(ii(2)), gbuf%DEFINI(ii(3)),
494 o gbuf%DEFINI(ii(4)), gbuf%DEFINI(ii(5)), gbuf%DEFINI(ii(6)), iequil,
495 p gbuf%SKEW_ID, nft, stf, sanin,
496 q iresp, snpc)
497
498 DO i=jft,jlt
499 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
500 ENDDO
501
502 CALL rsens_nic(nel ,ixr ,gbuf%FOR,gbuf%MOM,skew ,
503 . nsensor,sensors%SENSOR_TAB)
504
506 1 jft, jlt, gbuf%OFF, dt2t,
507 2 neltst, ityptst, sti, stir,
508 3 ms, in, msrt, dmelrt,
509 4 gbuf%G_DT,gbuf%DT, ngl, xcr,
510 5 xin, xm, xkm, xcm,
511 6 xkr, nc1, nc2, jsms)
513 1 gbuf%EINT,partsav, ixr, geo,
514 2 v, ipartr, bid, gresav,
515 3 grth, igrth, gbuf%OFF, nc1,
516 4 nc2, x, vr, itask,
517 5 nel, igre,sensors)
519 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
520 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, h3d_data,
521 3 nel)
522 IF (iparit == 0) THEN
524 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
525 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
526 3 sti, stir, stifn, stifr,
527 4 fx1, fx2, fy1, fy2,
528 5 fz1, fz2, mx1, mx2,
529 6 my1, my2, mz1, mz2,
530 7 geo, x1, y1, z1,
531 8 x2, y2, z2, iequil,
532 9 exx, eyx, ezx, exy,
533 a eyy, ezy, exz, eyz,
534 b ezz, nc1, nc2, nel)
535 ELSE
537 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
538 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
539 3 fsky, fsky, iadr, fx1,
540 4 fx2, fy1, fy2, fz1,
541 5 fz2, mx1, mx2, my1,
542 6 my2, mz1, mz2, geo,
543 7 x1, y1, z1, x2,
544 8 y2, z2, iequil, exx,
545 9 eyx, ezx, exy, eyy,
546 a ezy, exz, eyz, ezz,
547 b nel, nft)
548 ENDIF
549
550 ELSEIF (igtyp == 12) THEN
551
553 1 x, vr, ixr, xdp,
554 2 x1dp, x2dp, x3dp, ngl,
555 3 mgn, nc1, nc2, nc3,
556 4 nel)
558 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
559 2 gbuf%LENGTH(ii(1)), igeo, mgn, nel, nsensor )
560
561 DO i=jft,jlt
562 IF (gbuf%OFF(i) /= -ten) THEN
563 off(i)=
min(one,abs(gbuf%OFF(i)))
564 ELSE
565
566 off(i)=zero
567 ENDIF
568 ENDDO
569
571 1 geo, gbuf%FOR(ii(1)), gbuf%LENGTH(ii(1)), gbuf%EINT,
572 2 gbuf%TOTDEPL(ii(1)), npf, tf, off,
573 3 gbuf%DEP_IN_TENS(ii(1)),gbuf%FOREP(ii(1)), gbuf%DEP_IN_COMP(ii(1)),gbuf%DFS,
574 4 v, ixr, df, anim,
575 5 gbuf%POSX, igeo, gbuf%LENGTH_ERR,
576 6 x1dp, x2dp, x3dp, gbuf%YIELD(ii(1)),
577 7 table, gbuf%INIFRIC, ngl, mgn,
578 8 ex, ey, ez, xk,
579 9 xm, xc, ak, ex2,
580 a ey2, ez2, nc1, nc2,
581 b nc3, nuvar, gbuf%VAR, gbuf%DEFINI,
582 c nel, nft, stf, sanin,
583 d iresp, snpc)
584
585 DO i=jft,jlt
586 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
587 ENDDO
589 1 jft, jlt, gbuf%OFF, dt2t,
590 2 neltst, ityptst, sti, ms,
591 3 msrt, dmelrt, gbuf%G_DT,gbuf%DT,
592 4 ngl, xk, xm, xc,
593 5 ak, nc1, nc2, nc3,
594 6 jsms)
596 1 gbuf%EINT, partsav, ixr, geo,
597 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
598 3 grth, igrth, nc1, nc2,
599 4 nc3, x, vr, itask,
600 5 nel, igre,sensors)
602 1 gbuf%FOR(ii(1)),df, tani, h3d_data,
603 2 nel)
604 IF (iparit == 0) THEN
606 1 f, gbuf%FOR(ii(1)),sti, stifn,
607 2 df, ex, ey, ez,
608 3 ex2, ey2, ez2, nc1,
609 4 nc2, nc3, nel)
610 ELSE
612 1 gbuf%FOR(ii(1)),sti, fsky, fsky,
613 2 iadr, df, ex, ey,
614 3 ez, ex2, ey2, ez2,
615 4 nel, nft)
616 ENDIF
617
618 ELSEIF (igtyp == 13) THEN
619
621 1 x, vr, ixr, xdp,
622 2 x1dp, x2dp, ngl, x1,
623 3 y1, z1, x2, y2,
624 4 z2, mgn, rx1, ry1,
625 5 rz1, rx2, ry2, rz2,
626 6 nc1, nc2, nel)
628 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
629 2 gbuf%TOTDEPL(ii(2)),gbuf%TOTDEPL(ii(3)),gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)),
630 3 gbuf%LENGTH(ii(3)), gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)),
631 4 igeo, mgn, nel , nsensor )
632
633 DO i=jft,jlt
634 IF (gbuf%OFF(i) /= -ten) THEN
635 off(i)=
min(one,abs(gbuf%OFF(i)))
636 ELSE
637
638 off(i)=zero
639 ENDIF
640 ENDDO
641
643 1 gbuf%SKEW, v, exx2, eyx2,
644 2 ezx2, exy2, eyy2, ezy2,
645 3 exz2, eyz2, ezz2, al2dp,
646 4 x1dp, x2dp, al2, aldp,
647 5 gbuf%SKEW_ERR,ngl, al, exx,
648 6 eyx, ezx, exy, eyy,
649 7 ezy, exz, eyz, ezz,
650 8 rx1, ry1, rz1, rx2,
651 9 ry2, rz2, vx1, vx2,
652 a vy1, vy2, vz1, vz2,
653 b nc1, nc2, nel)
655 1 skew, geo, gbuf%FOR(ii(1)), gbuf%FOR(ii(2)),
656 2 gbuf%FOR(ii(3)), gbuf%EINT, gbuf%TOTDEPL(ii(1)), gbuf%TOTDEPL(ii(
657 3 gbuf%TOTDEPL(ii(3)), npf, tf, off,
658 4 gbuf%DEP_IN_TENS(ii(1)),gbuf%DEP_IN_TENS(ii(2)),gbuf%DEP_IN_TENS(ii(3)),gbuf%DEP_IN_COMP(ii(1)),
659 5 gbuf%DEP_IN_COMP(ii(2)),gbuf%DEP_IN_COMP(ii(3)),gbuf%FOREP(ii(1)), gbuf%FOREP(ii(2)),
660 6 gbuf%FOREP(ii(3)), gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)), gbuf%LENGTH(ii(3)),
661 7 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%TOTROT(ii(1)),
662 8 gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)), gbuf%ROT_IN_TENS(ii(1)),gbuf%ROT_IN_TENS(ii(2)),
663 9 gbuf%ROT_IN_TENS(ii(3)),gbuf%MOMEP(ii(1)), gbuf%MOMEP(ii(2)), gbuf%MOMEP(ii(3)),
664 a gbuf%ROT_IN_COMP(ii(1)),gbuf%ROT_IN_COMP(ii(2)),gbuf%ROT_IN_COMP(ii(3)),anim,
665 b gbuf%POSX, gbuf%POSY, gbuf%POSZ, gbuf%POSXX,
666 c gbuf%POSYY, gbuf%POSZZ, fr_wave, gbuf%E6,
667 d nel, exx2, eyx2, ezx2,
668 e exy2, eyy2, ezy2, exz2,
669 f eyz2, ezz2, al2dp, igeo,
670 g gbuf%RUPTCRIT, gbuf%LENGTH_ERR, aldp, gbuf%YIELD(ii(1)),
671 h gbuf%YIELD(ii(2)), gbuf%YIELD(ii(3)), gbuf%YIELD(ii(4)), gbuf%YIELD(ii(5)),
672 i gbuf%YIELD(ii(6)), ngl, mgn, exx,
673 j eyx, ezx, exy, eyy,
674 k ezy, exz, eyz, ezz,
675 l xcr, rx1, ry1, rz1,
676 m rx2, ry2, rz2, xin,
677 n ak, xm, xkm, xcm,
678 o xkr, vx1, vx2, vy1,
679 p vy2, vz1, vz2, nuvar,
680 q gbuf%VAR, gbuf%DEFINI(ii(1)), gbuf%DEFINI(ii(2)), gbuf%DEFINI(ii(3)),
681 r gbuf%DEFINI(ii(4)), gbuf%DEFINI(ii(5)), gbuf%DEFINI(ii(6)), gbuf%FORINI(ii(1)),
682 s gbuf%FORINI(ii(2)), gbuf%FORINI(ii(3)), gbuf%FORINI(ii(4)), gbuf%FORINI(ii(5)),
683 t gbuf%FORINI(ii(6)), nft, stf, sanin,
684 u iresp, snpc)
685
686 DO i=jft,jlt
687 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
688 ENDDO
690 1 jft, jlt, gbuf%OFF, dt2t,
691 2 neltst, ityptst, sti, stir,
692 3 ms, in, msrt, dmelrt,
693 4 gbuf%G_DT,gbuf%DT, ngl, xcr,
694 5 xin, xm, xkm, xcm,
695 6 xkr, nc1, nc2, jsms)
697 1 gbuf%EINT, partsav, ixr, geo,
698 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
699 3 grth, igrth, gbuf%OFF, nc1,
700 4 nc2, x, vr, itask,
701 5 nel, igre,sensors)
703 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
704 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
705 3 h3d_data, nel)
706
707 IF (preld1>zero) THEN
708 DO i=jft,jlt
709 vl12(i) = (vx2(i)-vx1(i))*exx(i)+
710 1 (vy2(i)-vy1(i))*eyx(i)+(vz2(i)-vz1(i))*ezx(i)
711 ENDDO
712 CALL preload_axial(nel,preld1,gbuf%BPRELD,vl12,stf_f,gbuf%FOR)
713 gbuf%FOREP(jft:jlt) = gbuf%FOR(jft:jlt)
714 END IF
715 IF (iparit == 0) THEN
717 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
718 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
719 3 sti, stir, stifn, stifr,
720 4 fx1, fx2, fy1, fy2,
721 5 fz1, fz2, mx1, mx2,
722 6 my1, my2, mz1, mz2,
723 7 al, exx, eyx, ezx,
724 8 exy, eyy, ezy, exz,
725 9 eyz, ezz, nc1, nc2,
726 a nel)
727 ELSE
729 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
730 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
731 3 fsky, fsky, iadr, fx1,
732 4 fx2, fy1, fy2, fz1,
733 5 fz2, mx1, mx2, my1,
734 6 my2, mz1, mz2, exx,
735 7 eyx, ezx, exy, eyy,
736 8 ezy, exz, eyz, ezz,
737 9 al, nel, nft)
738 ENDIF
739
740 ELSEIF (igtyp == 25) THEN
741
743 1 x, vr, ixr, xdp,
744 2 x1dp, x2dp, ngl, x1,
745 3 y1, z1, x2, y2,
746 4 z2, mgn, rx1, ry1,
747 5 rz1, rx2, ry2, rz2,
748 6 nc1, nc2, nel)
750 1 geo, gbuf%OFF, sensors%SENSOR_TAB, gbuf%TOTDEPL(ii(1)),
751 2 gbuf%TOTDEPL(ii(2)),gbuf%TOTDEPL(ii(3)),gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)),
752 3 gbuf%LENGTH(ii(3)), gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)),
753 4 igeo, mgn, nel , nsensor )
754
755 DO i=jft,jlt
756 IF (gbuf%OFF(i) /= -ten) THEN
757 off(i) =
min(one,abs(gbuf%OFF(i)))
758 ELSE
759
760 off(i) = zero
761 ENDIF
762 ENDDO
763
765 1 gbuf%SKEW, v, exx2, eyx2,
766 2 ezx2, exy2, eyy2, ezy2,
767 3 exz2, eyz2, ezz2, al2dp,
768 4 x1dp, x2dp, al2, aldp,
769 5 gbuf%SKEW_ERR,ngl, al, exx,
770 6 eyx, ezx, exy, eyy,
771 7 ezy, exz, eyz, ezz,
772 8 rx1, ry1, rz1, rx2,
773 9 ry2, rz2, vx1, vx2,
774 a vy1, vy2, vz1, vz2,
775 b nc1, nc2, nel)
777 1 skew, geo, gbuf%FOR(ii(1)), gbuf%FOR(ii(2)),
778 2 gbuf%FOR(ii(3)), gbuf%EINT, gbuf%TOTDEPL(ii(1)), gbuf%TOTDEPL(ii(2)),
779 3 gbuf%TOTDEPL(ii(3)), npf, tf, gbuf%OFF,
780 4 gbuf%DEP_IN_TENS(ii(1)),gbuf%DEP_IN_TENS(ii(2)),gbuf%DEP_IN_TENS(ii(3)),gbuf%DEP_IN_COMP(ii(1)),
781 5 gbuf%DEP_IN_COMP(ii(2)),gbuf%DEP_IN_COMP(ii(3)),gbuf%FOREP(ii(1)), gbuf%FOREP(ii(2)),
782 6 gbuf%FOREP(ii(3)), gbuf%LENGTH(ii(1)), gbuf%LENGTH(ii(2)), gbuf%LENGTH(ii(3)),
783 7 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%TOTROT(ii(1)),
784 8 gbuf%TOTROT(ii(2)), gbuf%TOTROT(ii(3)), gbuf%ROT_IN_TENS(ii(1)),gbuf%ROT_IN_TENS(ii(2)),
785 9 gbuf%ROT_IN_TENS(ii(3)),gbuf%MOMEP(ii(1)), gbuf%MOMEP(ii(2)), gbuf%MOMEP(ii(3)),
786 a gbuf%ROT_IN_COMP(ii(1)),gbuf%ROT_IN_COMP(ii(2)),gbuf%ROT_IN_COMP(ii(3)),anim,
787 b gbuf%POSX, gbuf%POSY, gbuf%POSZ, gbuf%POSXX,
788 c gbuf%POSYY, gbuf%POSZZ, gbuf%E6,
789 d nel, al2dp, exx2, eyx2,
790 e ezx2, exy2, eyy2, ezy2,
791 f exz2, eyz2, ezz2, igeo,
792 g gbuf%LENGTH_ERR, aldp, gbuf%YIELD(ii(1)), gbuf%YIELD(ii(2)),
793 h gbuf%YIELD(ii(3)), gbuf%YIELD(ii(4)), ngl, mgn,
794 i xcr, rx1, ry1, rz1,
795 j rx2, ry2, rz2, xin,
796 k ak, xm, xkm, xcm,
797 l xkr, vx1, vx2, vy1,
798 m vy2, vz1, vz2, nuvar,
799 n gbuf%VAR, gbuf%DEFINI(ii(1)), gbuf%DEFINI(ii(2)), gbuf%DEFINI(ii(3)),
800 o gbuf%DEFINI(ii(4)), gbuf%DEFINI(ii(5)), gbuf%DEFINI(ii(6)), gbuf%FORINI(ii(1)),
801 p gbuf%FORINI(ii(2)), gbuf%FORINI(ii(3)), gbuf%FORINI(ii(4)), gbuf%FORINI(ii(5)),
802 q gbuf%FORINI(ii(6)), gbuf%RUPTCRIT, nft, stf,
803 r sanin, iresp, impl_s, idyna,
804 s snpc)
805
806 DO i=jft,jlt
807 IF (gbuf%OFF(i) /= -ten .AND. off(i) < one) gbuf%OFF(i) = off(i)
808 ENDDO
809
811 1 jft, jlt, gbuf%OFF, dt2t,
812 2 neltst, ityptst, sti, stir,
813 3 ms, in, msrt, dmelrt,
814 4 gbuf%G_DT,gbuf%DT, ngl, xcr,
815 5 xin, xm, xkm, xcm,
816 6 xkr, nc1, nc2, jsms)
818 1 gbuf%EINT, partsav, ixr, geo,
819 2 v, ipartr, gbuf%LENGTH(ii(1)),gresav,
820 3 grth, igrth, gbuf%OFF, nc1,
821 4 nc2, x, vr, itask,
822 5 nel, igre, sensors)
824 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
825 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
826 3 h3d_data, nel)
827 IF (iparit == 0) THEN
829 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
830 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
831 3 sti, stir, stifn, stifr,
832 4 fx1, fx2, fy1, fy2,
833 5 fz1, fz2, mx1, mx2,
834 6 my1, my2, mz1, mz2,
835 7 al, exx, eyx, ezx,
836 8 exy, eyy, ezy, exz,
837 9 eyz, ezz, nc1, nc2,
838 a nel)
839 ELSE
841 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
842 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
843 3 fsky, fsky, iadr, fx1,
844 4 fx2, fy1, fy2, fz1,
845 5 fz2, mx1, mx2, my1,
846 6 my2, mz1, mz2, exx,
847 7 eyx, ezx, exy, eyy,
848 8 ezy, exz, eyz, ezz,
849 9 al, nel, nft)
850 ENDIF
851
852 ELSEIF (igtyp >= 29 .AND. igtyp <= 31) THEN
853
855 1 x, vr, ixr, gbuf%SKEW,
856 2 ngl, x1, y1, z1,
857 3 x2, y2, z2, mgn,
858 4 rx1, ry1, rz1, rx2,
859 5 ry2, rz2, nc1, nc2,
860 6 nel)
862 1 gbuf%SKEW,v, ngl, al,
863 2 x1, y1, z1, x2,
864 3 y2, z2, exx, eyx,
865 4 ezx, exy, eyy, ezy,
866 5 exz, eyz, ezz, rx1,
867 6 ry1, rz1, rx2, ry2,
868 7 rz2, vx1, vx2, vy1,
869 8 vy2, vz1, vz2, nc1,
870 9 nc2, nel)
871
873 1 al, gbuf%V_REPCVT(ii(1):), gbuf%V_REPCVT(ii(2):), gbuf%V_REPCVT(ii(3):),
874 2 gbuf%VR_REPCVT(ii(1):),gbuf%VR_REPCVT(ii(2):),gbuf%VR_REPCVT(ii(3):), fr_wave,
875 3 fr_w_e, gbuf%EINT, gbuf%FOR(ii(1):), gbuf%MOM(ii(1):),
876 4 gbuf%MOM(ii(2):), gbuf%MOM(ii(3):), gbuf%FOR(ii(2):), gbuf%FOR(ii(3):),
877 5 partsav, ipartr, exx, eyx,
878 6 ezx, exy, eyy, ezy,
879 7 exz, eyz, ezz, rx1,
880 8 ry1, rz1, rx2, ry2,
881 9 rz2, vx1, vx2, vy1,
882 a vy2, vz1, vz2, nc1,
883 b nc2, nel)
884
885 DO i=jft,jlt
886 off(i)=
min(one,abs(gbuf%OFF(i)))
887 ENDDO
888
890
891 IF( igtyp==29 .OR. igtyp==30 .OR. igtyp==31)THEN
892 DO i=1,nel
893 user_eint(i) = gbuf%EINT(i)
894
895 user_fx(i) = gbuf%FOR(ii(1)+i-1)
896 user_fy(i) = gbuf%FOR(ii(2)+i-1)
897 user_fz(i) = gbuf%FOR(ii(3)+i-1)
898
899 user_momx(i) = gbuf%MOM(ii(1)+i-1)
900 user_momy(i) = gbuf%MOM(ii(2)+i-1)
901 user_momz(i) = gbuf%MOM(ii(3)+i-1)
902
903 user_v_repcvtx(i) = gbuf%V_REPCVT(ii(1)+i-1)
904 user_v_repcvty(i) = gbuf%V_REPCVT(ii(2)+i-1)
905 user_v_repcvtz(i) = gbuf%V_REPCVT(ii(3)+i-1)
906
907 user_vr_repcvtx(i) = gbuf%VR_REPCVT(ii(1)+i-1)
908 user_vr_repcvty(i) = gbuf%VR_REPCVT(ii(2)+i-1)
909 user_vr_repcvtz(i) = gbuf%VR_REPCVT(ii(3)+i-1)
910 ENDDO
911 ALLOCATE(user_uvar(nuvar*nel))
912 user_uvar(1:nuvar*nel)=gbuf%VAR(1:nuvar*nel)
913 ENDIF
914
915
916 IF (igtyp == 29) THEN
917
918 IF (userl_avail>0) THEN
919 CALL eng_userlib_ruser(igtyp,
920 1 nel ,i0 ,user_uvar ,nuvar ,
921 2 user_fx ,user_fy ,user_fz ,user_momx ,user_momy ,
922 3 user_momz ,user_eint ,off ,usti ,ustir ,
923 4 visi ,visir ,unused ,uiner ,dt1 ,
924 5 al ,user_v_repcvtx ,user_v_repcvty ,user_v_repcvtz ,user_vr_repcvtx,
925 6 user_vr_repcvty ,user_vr_repcvtz ,fr_w_e )
926 ELSE
927
928
929 option='PROP/USER1 - SPRING'
930 size=len_trim(option)
931 CALL ancmsg(msgid=257,c1=option(1:size),anmode=aninfo)
933
934 ENDIF
935 ELSEIF (igtyp == 30) THEN
936 IF (userl_avail>0) THEN
937 CALL eng_userlib_ruser(igtyp,
938 1 nel ,i0 ,user_uvar ,nuvar ,
939 2 user_fx ,user_fy ,user_fz ,user_momx ,user_momy ,
940 3 user_momz ,user_eint ,off ,usti ,ustir ,
941 4 visi ,visir ,unused ,uiner ,dt1 ,
942 5 al ,user_v_repcvtx ,user_v_repcvty ,user_v_repcvtz ,user_vr_repcvtx,
943 6 user_vr_repcvty ,user_vr_repcvtz ,fr_w_e )
944 ELSE
945
946
947 option='PROP/USER2 - SPRING'
948 size=len_trim(option)
949 CALL ancmsg(msgid=257,c1=option(1:size),anmode=aninfo)
951
952 ENDIF
953 ELSEIF (igtyp == 31) THEN
954 IF (userl_avail>0) THEN
955 CALL eng_userlib_ruser(igtyp,
956 1 nel ,i0 ,user_uvar ,nuvar ,
957 2 user_fx ,user_fy ,user_fz ,user_momx ,user_momy,
958 3 user_momz ,user_eint ,off ,usti ,ustir,
959 4 visi ,visir ,unused ,uiner ,dt1,
960 5 al ,user_v_repcvtx ,user_v_repcvty ,user_v_repcvtz ,user_vr_repcvtx,
961 6 user_vr_repcvty ,user_vr_repcvtz ,fr_w_e )
962 ELSE
963
964
965 option='PROP/USER3 - SPRING'
966 size=len_trim(option)
967 CALL ancmsg(msgid=257,c1=option(1:size),anmode=aninfo)
969
970 ENDIF
971 ENDIF
972
973
974 IF( igtyp==29 .OR. igtyp==30 .OR. igtyp==31)THEN
975 DO i=1,nel
976 gbuf%EINT(i) = user_eint(i)
977
978 gbuf%FOR(ii(1)+i-1) = user_fx(i)
979 gbuf%FOR(ii(2)+i-1) = user_fy(i)
980 gbuf%FOR(ii(3)+i-1) = user_fz(i)
981
982 gbuf%MOM(ii(1)+i-1) = user_momx(i)
983 gbuf%MOM(ii(2)+i-1) = user_momy(i)
984 gbuf%MOM(ii(3)+i-1) = user_momz(i)
985
986 gbuf%V_REPCVT(ii(1)+i-1) = user_v_repcvtx(i)
987 gbuf%V_REPCVT(ii(2)+i-1) = user_v_repcvty(i)
988 gbuf%V_REPCVT(ii(3)+i-1) = user_v_repcvtz(i)
989
990 gbuf%VR_REPCVT(ii(1)+i-1) = user_vr_repcvtx(i)
991 gbuf%VR_REPCVT(ii(2)+i-1) = user_vr_repcvty(i)
992 gbuf%VR_REPCVT(ii(3)+i-1) = user_vr_repcvtz(i)
993 ENDDO
994 gbuf%VAR(1:nuvar*nel) = user_uvar(1:nuvar*nel)
995 DEALLOCATE(user_uvar)
996 ENDIF
997
998 DO i=jft,jlt
999 IF (off(i) < one) gbuf%OFF(i) = off(i)
1000 ENDDO
1001
1003 1 jft, jlt, gbuf%OFF, dt2t,
1004 2 neltst, ityptst, sti, stir,
1005 3 ms, in, usti, ustir,
1006 4 visi, visir, gbuf%MASS, uiner,
1007 5 fr_wave, fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)),
1008 6 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%V_REPCVT(ii(1)),
1009 7 gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)), gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),
1010 8 gbuf%VR_REPCVT(ii(3)),al, gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1011 9 partsav, ipartr, msrt, dmelrt,
1012 a gbuf%G_DT, gbuf%DT, ngl, nc1,
1013 b nc2, jsms)
1014
1016 1 gbuf%EINT,partsav, ixr, gbuf%MASS,
1017 2 v, ipartr, uiner, x,
1018 3 vr, gresav, grth, igrth,
1019 4 nc1, nc2, itask, iad,
1020 5 igre, nft, nel,sensors)
1022 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1023 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
1024 3 h3d_data, nel)
1025 IF (iparit == 0) THEN
1027 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
1028 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
1029 3 sti, stir, stifn, stifr,
1030 4 fx1, fx2, fy1, fy2,
1031 5 fz1, fz2, mx1, mx2,
1032 6 my1, my2, mz1, mz2,
1033 7 gbuf%MOM(ii(4)),gbuf%MOM(ii(5)),al, exx,
1034 8 eyx, ezx, exy, eyy,
1035 9 ezy, exz, eyz, ezz,
1036 a nc1, nc2, nel)
1037 ELSE
1039 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1040 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
1041 3 fsky, fsky, iadr, fx1,
1042 4 fx2, fy1, fy2, fz1,
1043 5 fz2, mx1, mx2, my1,
1044 6 my2, mz1, mz2, gbuf%MOM(ii(4)),
1045 7 gbuf%MOM(ii(5)),exx, eyx, ezx,
1046 8 exy, eyy, ezy, exz,
1047 9 eyz, ezz, al, nel,
1048 a nft)
1049 ENDIF
1050
1051 ELSEIF (igtyp == 32) THEN
1052
1054 1 x, vr, ixr, xdp,
1055 2 x1dp, x2dp, ngl, x1,
1056 3 y1, z1, x2, y2,
1057 4 z2, mgn, rx1, ry1,
1058 5 rz1, rx2, ry2, rz2,
1059 6 nc1, nc2, nel)
1061 1 gbuf%SKEW, v, exx2, eyx2,
1062 2 ezx2, exy2, eyy2, ezy2,
1063 3 exz2, eyz2, ezz2, al2dp,
1064 4 x1dp, x2dp, al2, aldp,
1065 5 gbuf%SKEW_ERR,ngl, al, exx,
1066 6 eyx, ezx, exy, eyy,
1067 7 ezy, exz, eyz, ezz,
1068 8 rx1, ry1, rz1, rx2,
1069 9 ry2, rz2, vx1, vx2,
1070 a vy1, vy2, vz1, vz2,
1071 b nc1, nc2, nel)
1073 1 al, gbuf%V_REPCVT(ii(1)), gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)),
1074 2 gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_wave,
1075 3 fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)), gbuf%MOM(ii(1)),
1076 4 gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1077 5 partsav, ipartr, exx, eyx,
1078 6 ezx, exy, eyy, ezy,
1079 7 exz, eyz, ezz, rx1,
1080 8 ry1, rz1, rx2, ry2,
1081 9 rz2, vx1, vx2, vy1,
1082 a vy2, vz1, vz2, nc1,
1083 b nc2, nel)
1084
1085 nuvar = nint(geo(25,i0))
1086 DO i=jft,jlt
1087 off(i)=
min(one,abs(gbuf%OFF(i)))
1088 ENDDO
1089
1091 1 nel ,iout ,i0 ,gbuf%VAR ,nuvar ,
1092 2 gbuf%FOR(ii(1)) ,gbuf%FOR(ii(2)) ,gbuf%FOR(ii(3)) ,gbuf%MOM(ii(1)) ,gbuf%MOM(ii(2)) ,
1093 3 gbuf%MOM(ii(3)) ,gbuf%EINT ,off ,usti ,ustir ,
1094 4 visi ,visir ,unused ,uiner ,dt1 ,
1095 5 al ,gbuf%V_REPCVT(ii(1)) ,gbuf%V_REPCVT(ii(2)),gbuf%V_REPCVT(ii(3)),gbuf%VR_REPCVT(ii(1)),
1096 6 gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_w_e ,nsensor,sensors%SENSOR_TAB )
1097
1098 DO i=jft,jlt
1099 IF (off(i) < one) gbuf%OFF(i) = off(i)
1100 ENDDO
1101
1103 1 jft, jlt, gbuf%OFF, dt2t,
1104 2 neltst, ityptst, sti, stir,
1105 3 ms, in, usti, ustir,
1106 4 visi, visir, gbuf%MASS, uiner,
1107 5 fr_wave, fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)),
1108 6 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%V_REPCVT(ii(1)),
1109 7 gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)), gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),
1110 8 gbuf%VR_REPCVT(ii(3)),al, gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1111 9 partsav, ipartr, msrt, dmelrt,
1112 a gbuf%G_DT, gbuf%DT, ngl, nc1,
1113 b nc2, jsms)
1114
1116 1 gbuf%EINT,partsav, ixr, gbuf%MASS,
1117 2 v, ipartr, uiner, x,
1118 3 vr, gresav, grth, igrth,
1119 4 nc1, nc2, itask, iad,
1120 5 igre, nft, nel, sensors)
1122 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1123 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
1124 3 h3d_data, nel)
1125 IF (iparit == 0) THEN
1127 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
1128 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
1129 3 sti, stir, stifn, stifr,
1130 4 fx1, fx2, fy1, fy2,
1131 5 fz1, fz2, mx1, mx2,
1132 6 my1, my2, mz1, mz2,
1133 7 al, exx, eyx, ezx,
1134 8 exy, eyy, ezy, exz,
1135 9 eyz, ezz, nc1, nc2,
1136 a nel)
1137 ELSE
1139 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1140 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
1141 3 fsky, fsky, iadr, fx1,
1142
1143 5 fz2, mx1, mx2, my1,
1144 6 my2, mz1, mz2, exx,
1145 7 eyx, ezx, exy, eyy,
1146 8 ezy, exz, eyz, ezz,
1147 9 al, nel, nft)
1148 ENDIF
1149
1150 ELSEIF (igtyp == 33 .OR. igtyp == 45) THEN
1151
1152
1153 nuvar = nint(geo(25,i0))
1154 IF (igtyp == 45) flg_kj2 = 1
1155
1157 1 jft, jlt, ipartr, nel,
1158 2 nuvar, iout, i0, iadr,
1159 3 fsky, fsky, gbuf%OFF, gbuf%FOR(ii(1)),
1160 4 gbuf%FOR(ii(2)), gbuf%FOR(ii(3)), gbuf%EINT, gbuf%TOTDEPL(ii(1)),
1161 5 gbuf%TOTDEPL(ii(2)),gbuf%TOTDEPL(ii(3)),gbuf%TOTROT(ii(1)), gbuf%TOTROT(ii(2)),
1162 6 gbuf%TOTROT(ii(3)), gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)),
1163 7 gbuf%VAR, stifn, stifr, ixr,
1164 8 tani, rby, x, v,
1165 9 vr, sti, stir, ms,
1166 a in, partsav, dt1, dt2t,
1167 b f, ar, fx1, fx2,
1168 c fy1, fy2, fz1, fz2,
1169 d mx1, mx2, my1, my2,
1170 e mz1, mz2, gresav, grth,
1171 f igrth, msrt, dmelrt, neltst,
1172 g ityptst, igtyp, sensors%SENSOR_TAB, nc1,
1173 h nc2, xdp, gbuf%LENGTH_ERR, h3d_data,
1174 i jsms, igre, nft, nsensor )
1175
1176 ELSEIF (igtyp == 35 .OR. igtyp == 36) THEN
1177
1179 1 x, vr, ixr, gbuf%SKEW,
1180 2 ngl, x1, y1, z1,
1181 3 x2, y2, z2, mgn,
1182 4 rx1, ry1, rz1, rx2,
1183 5 ry2, rz2, nc1, nc2,
1184 6 nel)
1186 1 gbuf%SKEW,v, ngl, al,
1187 2 x1, y1, z1, x2,
1188 3 y2, z2, exx, eyx,
1189 4 ezx, exy, eyy, ezy,
1190 5 exz, eyz, ezz, rx1,
1191 6 ry1, rz1, rx2, ry2,
1192 7 rz2, vx1, vx2, vy1,
1193 8 vy2, vz1, vz2, nc1,
1194 9 nc2, nel)
1196 1 al, gbuf%V_REPCVT(ii(1)), gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)),
1197 2 gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_wave,
1198 3 fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)), gbuf%MOM(ii(1)),
1199 4 gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1200 5 partsav, ipartr, exx, eyx,
1201 6 ezx, exy, eyy, ezy,
1202 7 exz, eyz, ezz, rx1,
1203 8 ry1, rz1, rx2, ry2,
1204 9 rz2, vx1, vx2, vy1,
1205 a vy2, vz1, vz2, nc1,
1206 b nc2, nel)
1207
1208 nuvar = nint(geo(25,i0))
1209 DO i=jft,jlt
1210 off(i)=
min(one,abs(gbuf%OFF(i)))
1211 ENDDO
1212
1213 IF (igtyp == 35) THEN
1215 1 nel ,iout ,i0 ,gbuf%VAR ,nuvar ,
1216 2 gbuf%FOR(ii(1)) ,gbuf%FOR(ii(2)) ,gbuf%FOR(ii(3)) ,gbuf%MOM(ii(1)) ,gbuf%MOM(ii(2)) ,
1217 3 gbuf%MOM(ii(3)) ,gbuf%EINT ,off ,usti ,ustir ,
1218 4 visi ,visir ,unused ,uiner ,dt1 ,
1219 5 al ,gbuf%V_REPCVT(ii(1)) ,gbuf%V_REPCVT(ii(2)),gbuf%V_REPCVT(ii(3)),gbuf%VR_REPCVT(ii(1)),
1220 6 gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_w_e )
1221 ELSEIF (igtyp == 36) THEN
1223 1 nel ,i0 ,gbuf%VAR ,nuvar ,fr_w_e ,
1224 2 gbuf%FOR(ii(1)) ,gbuf%FOR(ii(2)) ,gbuf%FOR(ii(3)) ,gbuf%MOM(ii(1))
1225 3 gbuf%MOM(ii(3)) ,gbuf%EINT ,off ,usti ,ustir ,
1226 4 visi ,visir ,unused ,uiner ,dt1 ,
1227 5 al ,gbuf%V_REPCVT(ii(1)) ,gbuf%V_REPCVT(ii(2)),gbuf%V_REPCVT(ii(3)),gbuf%VR_REPCVT(ii(1)),
1228 6 gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)))
1229 ENDIF
1230
1231 DO i=jft,jlt
1232 IF (off(i) < one) gbuf%OFF(i) = off(i)
1233 ENDDO
1234
1236 1 jft, jlt, gbuf%OFF, dt2t,
1237 2 neltst, ityptst, sti, stir,
1238 3 ms, in, usti, ustir,
1239 4 visi, visir, gbuf%MASS, uiner,
1240 5 fr_wave, fr_w_e, gbuf%EINT, gbuf%FOR(ii(
1241 6 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%V_REPCVT(ii(1)),
1242 7 gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)), gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),
1243 8 gbuf%VR_REPCVT(ii(3)),al, gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1244 9 partsav, ipartr, msrt, dmelrt,
1245 a gbuf%G_DT, gbuf%DT, ngl, nc1,
1246 b nc2, jsms)
1247
1249 1 gbuf%EINT,partsav, ixr, gbuf%MASS,
1250 2 v, ipartr, uiner, x,
1251 3 vr, gresav, grth, igrth,
1252 4 nc1, nc2, itask, iad,
1253 5 igre, nft, nel, sensors)
1255 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1256 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
1257 3 h3d_data, nel)
1258 IF (iparit == 0) THEN
1260 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
1261 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
1262 3 sti, stir, stifn, stifr,
1263 4 fx1, fx2, fy1, fy2,
1264 5 fz1, fz2, mx1, mx2,
1265 6 my1, my2, mz1, mz2,
1266 7 gbuf%MOM(ii(4)),gbuf%MOM(ii(5)),al, exx,
1267 8 eyx, ezx, exy, eyy,
1268 9 ezy, exz, eyz, ezz,
1269 a nc1, nc2, nel)
1270 ELSE
1272 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1273 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
1274 3 fsky, fsky, iadr, fx1,
1275 4 fx2, fy1, fy2, fz1
1276 5 fz2, mx1, mx2, my1,
1277 6 my2, mz1, mz2, gbuf%MOM(ii(4)),
1278 7 gbuf%MOM(ii(5)),exx, eyx, ezx
1279 8 exy, eyy, ezy, exz,
1280 9 eyz, ezz, al, nel,
1281 a nft)
1282 ENDIF
1283
1284 ELSEIF (igtyp == 44) THEN
1285
1287 1 x, vr, ixr, gbuf%SKEW,
1288 2 ngl, x1, y1, z1,
1289 3 x2, y2, z2, mgn,
1290 4 rx1, ry1, rz1, rx2,
1291 5 ry2, rz2, nc1, nc2,
1292 6 nel)
1294 1 gbuf%SKEW,v, ngl, al,
1295 2 x1, y1, z1, x2,
1296 3 y2, z2, exx, eyx,
1297 4 ezx, exy, eyy, ezy,
1298 5 exz, eyz, ezz, rx1,
1299 6 ry1, rz1, rx2, ry2,
1300 7 rz2, vx1, vx2, vy1,
1301 8 vy2, vz1, vz2, nc1,
1302 9 nc2, nel)
1304 1 al, gbuf%V_REPCVT(ii(1)), gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)),
1305 2 gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_wave,
1306 3 fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)), gbuf%MOM(ii(1)),
1307 4 gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1308 5 partsav, ipartr, exx, eyx,
1309 6 ezx, exy,
1310 7 exz, eyz, ezz, rx1,
1311 8 ry1, rz1, rx2, ry2,
1312 9 rz2, vx1,
1313 a vy2, vz1, vz2, nc1,
1314 b nc2, nel)
1315
1316 nuvar = nint(geo(25,i0))
1317 DO i=jft,jlt
1318 off(i)=
min(one,abs(gbuf%OFF
1319 ENDDO
1320
1322 1 nel ,iout ,i0 ,gbuf%VAR
1323 2 gbuf%FOR(ii(1)) ,gbuf%FOR(ii(2)) ,gbuf%FOR(ii(3)) ,gbuf%MOM
1324 3 gbuf%MOM(ii(3)) ,gbuf%EINT ,off ,usti
1325 4 visi ,visir ,unused
1326 5 al ,gbuf%V_REPCVT(ii(1)) ,gbuf%V_REPCVT(ii(
1327 6 gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_w_e
1328
1329 DO i=jft,jlt
1330 IF (off(i) < one) gbuf%OFF(i) = off(i)
1331 ENDDO
1332
1334 1 jft, jlt, gbuf%OFF, dt2t,
1335 2 neltst, ityptst, sti, stir,
1336 3 ms, in, usti, ustir,
1337 4 visi, visir, gbuf%MASS, uiner,
1338 5 fr_wave, fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)),
1339 6 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%V_REPCVT
1340 7 gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)), gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),
1341 8 gbuf%VR_REPCVT(ii(3)),al, gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1342 9 partsav, ipartr, msrt, dmelrt,
1343 a gbuf%G_DT, gbuf%DT, ngl,
1344 b nc2, jsms)
1345
1347 1 gbuf%EINT,partsav, ixr, gbuf%MASS,
1348 2 v, ipartr, uiner, x,
1349 3 vr, gresav, grth, igrth,
1350 4 nc1, nc2, itask, iad
1351 5 igre, nft, nel,sensors)
1353 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1354 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
1355 3 h3d_data, nel)
1356 IF (iparit == 0) THEN
1358 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
1359 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
1360 3 sti, stir, stifn, stifr,
1361 4 fx1, fx2, fy1, fy2,
1362 5 fz1, fz2, mx1, mx2,
1363 6 my1, my2, mz1, mz2,
1364 7 gbuf%MOM(ii(4)),gbuf%MOM(ii(5)),al, exx,
1365 8 eyx, ezx, exy, eyy,
1366 9 ezy, exz, eyz, ezz,
1367 a nc1, nc2, nel)
1368 ELSE
1370 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM
1371 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
1372 3 fsky, fsky, iadr, fx1,
1373 4 fx2, fy1, fy2, fz1,
1374 5 fz2, mx1, mx2, my1,
1375 6 my2, mz1, mz2, gbuf%MOM(ii(4)),
1376 7 gbuf%MOM(ii(5)),exx, eyx, ezx,
1377 8 exy, eyy, ezy, exz,
1378 9 eyz, ezz, al, nel,
1379 a nft)
1380 ENDIF
1381
1382 ELSEIF (igtyp == 46) THEN
1383
1385 1 x, vr, ixr, gbuf%SKEW,
1386 2 ngl, x1, y1, z1,
1387 3 x2, y2, z2, mgn,
1388 4 rx1, ry1, rz1, rx2,
1389 5 ry2, rz2, nc1, nc2,
1390 6 nel)
1392 1 gbuf%SKEW,v, ngl, al,
1393 2 x1, y1, z1, x2,
1394 3 y2, z2, exx, eyx,
1395 4 ezx, exy, eyy, ezy,
1396 5 exz, eyz, ezz, rx1,
1397 6 ry1, rz1, rx2, ry2,
1398 7 rz2, vx1, vx2, vy1,
1399 8 vy2, vz1, vz2, nc1,
1400 9 nc2, nel)
1402 1 al, gbuf%V_REPCVT(ii(1)), gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)),
1403 2 gbuf%VR_REPCVT(ii(1)),gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT
1404 3 fr_w_e, gbuf%EINT, gbuf%FOR(ii(1)), gbuf%MOM(ii(1)),
1405 4 gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%FOR(ii(2)), gbuf%FOR
1406 5 partsav, ipartr, exx, eyx,
1407 6 ezx, exy, eyy,
1408 7 exz, eyz, ezz,
1409 8 ry1, rz1, rx2, ry2,
1410
1411 a vy2, vz1, vz2
1412 b nc2, nel)
1413
1414 nuvar = nint(geo(25,i0))
1415 DO i=jft,jlt
1416 off(i)=
min(one,abs(gbuf%OFF(i)))
1417 ENDDO
1418
1420 1 nel ,iout ,i0
1421 2 gbuf%FOR(ii(1)) ,gbuf%FOR(ii(2)) ,gbuf%FOR(ii(
1422 3 gbuf%MOM(ii(3)) ,gbuf%EINT ,off
1423 4 visi ,visir ,unused
1424 5 al ,gbuf%V_REPCVT(ii(1)) ,gbuf%V_REPCVT
1425 6 gbuf%VR_REPCVT(ii(2)),gbuf%VR_REPCVT(ii(3)),fr_w_e )
1426
1427 DO i=jft,jlt
1428 IF (off(i) < one) gbuf%OFF(i) = off(i)
1429 ENDDO
1430
1432 1 jft, jlt, gbuf%OFF, dt2t,
1433 2 neltst, ityptst, sti, stir,
1434 3 ms, in, usti, ustir,
1435 4 visi, visir, gbuf%MASS,
1436 5 fr_wave, fr_w_e, gbuf%EINT, gbuf%FOR(ii
1437 6 gbuf%MOM(ii(1)), gbuf%MOM(ii(2)), gbuf%MOM(ii(3)), gbuf%V_REPCVT(ii(1)),
1438 7 gbuf%V_REPCVT(ii(2)), gbuf%V_REPCVT(ii(3)), gbuf%VR_REPCVT(ii(
1439 8 gbuf%VR_REPCVT(ii(3)),al, gbuf%FOR(ii(2)), gbuf%FOR(ii(3)),
1440 9 partsav, ipartr, msrt, dmelrt,
1441 a gbuf%G_DT, gbuf%DT, ngl, nc1,
1442 b nc2, jsms)
1443
1445 1 gbuf%EINT,partsav, ixr, gbuf%MASS,
1446 2 v, ipartr, uiner, x,
1447 3 vr, gresav, grth, igrth,
1448 4 nc1, nc2, itask, iad,
1449 5 igre, nft, nel,sensors)
1451 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1452 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),tani, al,
1453 3 h3d_data, nel)
1454 IF (iparit == 0) THEN
1456 1 f, gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),
1457 2 ar, gbuf%MOM(ii(1)),gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),
1458 3 sti, stir, stifn, stifr,
1459 4 fx1, fx2, fy1, fy2,
1460 5 fz1, fz2, mx1, mx2,
1461 6 my1, my2, mz1, mz2,
1462 7 gbuf%MOM(ii(4)),gbuf%MOM(ii(5)),al, exx,
1463 8 eyx, ezx, exy, eyy,
1464 9 ezy, exz, eyz, ezz,
1465 a nc1, nc2, nel)
1466 ELSE
1468 1 gbuf%FOR(ii(1)),gbuf%FOR(ii(2)),gbuf%FOR(ii(3)),gbuf%MOM(ii(1)),
1469 2 gbuf%MOM(ii(2)),gbuf%MOM(ii(3)),sti, stir,
1470 3 fsky, fsky, iadr, fx1,
1471 4 fx2, fy1, fy2, fz1,
1472 5 fz2, mx1, mx2, my1,
1473 6 my2, mz1, mz2, gbuf%MOM(ii(4)),
1474 7 gbuf%MOM(ii(5)),exx, eyx, ezx,
1475 8 exy, eyy, ezy, exz,
1476 9 eyz, ezz, al, nel,
1477 a nft)
1478 ENDIF
1479
1480 ENDIF
1481
1482 RETURN
subroutine set_spring_elnum(jft, jlt, ixr)
subroutine r1coor3(x, vr, ixr, xdp, x1dp, x2dp, ngl, mgm, nc1, nc2, nel)
subroutine r1cum3(f, for, sti, stifn, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, ex, ey, ez, nc1, nc2, nel)
subroutine r1cum3p(for, sti, fsky, fskyv, iadr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, ex, ey, ez, nel, nft)
subroutine r1def3(python, geo, f, al0, e, dl, npf, tf, off, dpl, fep, dpl2, anim, ipos, igeo, al0_err, x1dp, x2dp, v, yield, ngl, mgn, ex, ey, ez, xk, xm, xc, ak, nc1, nc2, nuvar, uvar, dl0, nel, nft, stf, sanin, iresp, snpc)
subroutine r1len3(jft, jlt, off, dt2t, neltst, ityptst, sti, ms, msrt, dmelrt, g_dt, dtel, ngl, xk, xm, xc, ak, nc1, nc2, jsms)
subroutine r1sens3(geo, off, sensor_tab, dx, x0, igeo, mgn, nel, nsensor)
subroutine r1tors(for, tani, h3d_data, nel)
subroutine r26def3(python, f, e, dl, al0, dv0, fep, dpl2, ipos, geo, igeo, npf, tf, v, off, anim, fr_wave, al0_err, x1dp, x2dp, ngl, mgn, ex, ey, ez, xk, xm, xc, ak, nel, nft, iad, crit)
subroutine r27def3(python, f, e, dl, al0, ipos, geo, igeo, npf, tf, v, off, anim, al0_err, x1dp, x2dp, ngl, mgn, ex, ey, ez, xk, xm, xc, fscale, nel, nft, crit)
subroutine r2coor3(x, vr, ixr, xdp, x1dp, x2dp, ngl, x1, y1, z1, x2, y2, z2, mgm, rx1, ry1, rz1, rx2, ry2, rz2, nc1, nc2, nel)
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)
subroutine r2cum3p(forx, fory, forz, xmom, ymom, zmom, sti, stir, fsky, fskyv, iadr, 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, nel, nft)
subroutine r2def3(python, 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, igeo, e6, critnew, nel, x0_err, x1dp, x2dp, yieldx, yieldy, yieldz, yieldx2, yieldy2, yieldz2, ngl, xkr, mgn, 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, dx0, dy0, dz0, rx0, ry0, rz0, iequil, skew_id, nft, stf, sanin, iresp, snpc)
subroutine r2len3(jft, jlt, off, dt2t, neltst, ityptst, sti, stir, ms, in, msrt, dmelrt, g_dt, dtel, ngl, xcr, xin, xm, xkm, xcm, xkr, nc1, nc2, jsms)
subroutine r2sens3(geo, off, sensor_tab, dx, dy, dz, x0, y0, z0, rx, ry, rz, igeo, mgn, nel, nsensor)
subroutine r2tors(forx, fory, forz, xmom, ymom, zmom, tani, h3d_data, nel)
subroutine r3bilan(eint, partsav, ixr, geo, v, ipartr, al0, gresav, grth, igrth, nc1, nc2, nc3, x, vr, itask, nel, igre, sensors)
subroutine r3coor3(x, vr, ixr, xdp, x1dp, x2dp, x3dp, ngl, mgn, nc1, nc2, nc3, nel)
subroutine r3cum3(f, for, sti, stifn, df, ex, ey, ez, ex2, ey2, ez2, nc1, nc2, nc3, nel)
subroutine r3cum3p(for, sti, fsky, fskyv, iadr, df, ex, ey, ez, ex2, ey2, ez2, nel, nft)
subroutine r3def3(python, geo, f, al0, e, dl, npf, tf, off, dpl, fep, dpx2, dfs, v, ixr, df, anim, ipos, igeo, al0_err, x1dp, x2dp, x3dp, yield, table, inifric, ngl, mgn, ex, ey, ez, xk, xm, xc, ak, ex2, ey2, ez2, nc1, nc2, nc3, nuvar, uvar, dl0, nel, nft, stf, sanin, iresp, snpc)
subroutine r3len3(jft, jlt, off, dt2t, neltst, ityptst, sti, ms, msrt, dmelrt, g_dt, dtel, ngl, xk, xm, xc, ak, nc1, nc2, nc3, jsms)
subroutine r3tors(for, df, tani, h3d_data, nel)
subroutine r4coor3(x, vr, ixr, rloc, ngl, x1, y1, z1, x2, y2, z2, mgn, rx1, ry1, rz1, rx2, ry2, rz2, nc1, nc2, nel)
subroutine r4cum3(f, forx, fory, forz, xm, xmom, ymom, zmom, sti, stir, stifn, stifr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, al, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, nc1, nc2, nel)
subroutine r4cum3p(forx, fory, forz, xmom, ymom, zmom, sti, stir, fsky, fskyv, iadr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, al, nel, nft)
subroutine r4def3(python, 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, posx, posy, posz, posxx, posyy, poszz, fr_wave, e6, nel, exx2, eyx2, ezx2, exy2, eyy2, ezy2, exz2, eyz2, ezz2, al2dp, igeo, crit_new, x0_err, aldp, yieldx, yieldy, yieldz, yieldx2, yieldy2, yieldz2, ngl, mgn, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, xcr, rx1, ry1, rz1, rx2, ry2, rz2, xin, ak, xm, xkm, xcm, xkr, vx1, vx2, vy1, vy2, vz1, vz2, nuvar, uvar, dx0, dy0, dz0, rx0, ry0, rz0, fx0, fy0, fz0, xmom0, ymom0, zmom0, nft, stf, sanin, iresp, snpc)
subroutine r4evec3(rloc, v, exx2, eyx2, ezx2, exy2, eyy2, ezy2, exz2, eyz2, ezz2, al2dp, x1dp, x2dp, al2, aldp, rloc_err, ngl, al, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, rx1, ry1, rz1, rx2, ry2, rz2, vx1, vx2, vy1, vy2, vz1, vz2, nc1, nc2, nel)
subroutine r4tors(forx, fory, forz, xmom, ymom, zmom, tani, al, h3d_data, nel)
subroutine r5bilan(eint, partsav, ixr, umas, v, ipartr, uiner, x, vr, gresav, grth, igrth, nc1, nc2, itask, iad, igre, nft, nel, sensors)
subroutine r5cum3(f, forx, fory, forz, xm, xmom, ymom, zmom, sti, stir, stifn, stifr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, mom1y, mom1z, al, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, nc1, nc2, nel)
subroutine r5cum3p(forx, fory, forz, xmom, ymom, zmom, sti, stir, fsky, fskyv, iadr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, mom1y, mom1z, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, al, nel, nft)
subroutine r5def3(xl, vx2l, ry1l, rz1l, rx2l, ry2l, rz2l, fr_wave, fr_w_e, eint, fx, xmom, ymom, zmom, fy, fz, partsav, ipartr, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, rx1, ry1, rz1, rx2, ry2, rz2, vx1, vx2, vy1, vy2, vz1, vz2, nc1, nc2, nel)
subroutine r5evec3(rloc, v, ngl, al, x1, y1, z1, x2, y2, z2, exx, eyx, ezx, exy, eyy, ezy, exz, eyz, ezz, rx1, ry1, rz1, rx2, ry2, rz2, vx1, vx2, vy1, vy2, vz1, vz2, nc1, nc2, nel)
subroutine r5len3(jft, jlt, off, dt2t, neltst, ityptst, sti, stir, ms, in, usti, ustir, visi, visir, umas, uiner, fr_wave, fr_w_e, eint, fx, xmom, ymom, zmom, vx, ry1, rz1, rx, ry2, rz2, xl, fy, fz, partsav, ipartr, msrt, dmelrt, g_dt, dtel, ngl, nc1, nc2, jsms)
subroutine r6def3(python, 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, rmep, zmep, rpx2, rpy2, rpz2, anim, posx, posy, posz, posxx, posyy, poszz, e6, nel, al2dp, exx2, eyx2, ezx2, exy2, eyy2, ezy2, exz2, eyz2, ezz2, igeo, x0_err, aldp, yieldx, yieldy, yieldx2, yieldy2, ngl, mgn, xcr, rx1, ry1, rz1, rx2, ry2, rz2, xin, ak, xm, xkm, xcm, xkr, vx1, vx2, vy1, vy2, vz1, vz2, nuvar, uvar, dx0, dy0, dz0, rx0, ry0, rz0, fx0, fy0, fz0, xmom0, ymom0, zmom0, critnew, nft, stf, sanin, iresp, impl_s, idyna, snpc)
subroutine rbilan(eint, partsav, ixr, geo, v, ipartr, al0, gresav, grth, igrth, off_dum, nc1, nc2, x, vr, itask, nel, igre, sensors)
subroutine rgjoint(jft, jlt, ipartr, nel, nuvar, iout, iprop, iadr, fsky, fskyv, off, forx, fory, forz, e, dx, dy, dz, rx, ry, rz, xmom, ymom, zmom, uvar, stifn, stifr, ixr, tani, rby, x, vx, vr, sti, stir, ms, in, partsav, dt1, dt2t, f, ar, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, gresav, grth, igrth, msrt, dmelrt, neltst, ityptst, igtyp, sensor_tab, nc1, nc2, xdp, x0_err, h3d_data, jsms, igre, nft, nsensor)
subroutine rsens_nic(nel, ixr, for, mom, skew, nsensor, sensor_tab)
subroutine ruser32(nel, iout, iprop, uvar, nuvar, fx, fy, fz, xmom, ymom, zmom, e, off, stifm, stifr, viscm, viscr, mass, xiner, dt, xl, vx, ry1, rz1, rx, ry2, rz2, fr_wave, nsensor, sensor_tab)
subroutine ruser35(nel, iout, iprop, uvar, nuvar, fx, fy, fz, xmom, ymom, zmom, e, off, stifm, stifr, viscm, viscr, mass, xiner, dt, xl, vx, ry1, rz1, rx, ry2, rz2, fr_wave)
subroutine ruser36(nel, iprop, uvar, nuvar, fr_wave, fx, fy, fz, xmom, ymom, zmom, e, off, stifm, stifr, viscm, viscr, mass, xiner, dt, xl, vx, ry1, rz1, rx, ry2, rz2)
subroutine ruser44(nel, iout, iprop, uvar, nuvar, fx, fy, fz, xmom, ymom, zmom, e, off, stifm, stifr, viscm, viscr, mass, xiner, dt, xl, vx, ry1, rz1, rx, ry2, rz2, fr_wave_e)
subroutine ruser46(nel, iout, iprop, uvar, nuvar, fx, fy, fz, xmom, ymom, zmom, e, off, stifm, stifr, viscm, viscr, mass, xiner, dt, xl, vx, ry1, rz1, rx, ry2, rz2, fr_wave)
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)