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