92 3 ELBUF ,WA ,VAL2 ,VEUL ,FV ,
93 4 STIFN ,STIFR ,FSKY ,TF ,BUFMAT ,
94 5 PARTSAV ,D ,DR ,EANI ,ELBUF_TAB ,
95 6 TANI ,FANI ,FSAV ,SENSORS ,NLOC_DMG ,
96 7 SKEW ,ANIN ,DT2T ,BUFGEO ,ITAB ,
97 8 IADS ,IADQ ,IADT ,IADP ,MAT_ELEM ,
98 9 IADR ,IPARG ,ALE_CONNECT,NPC ,
99 A IXS ,IXQ ,IXT ,IXP ,
100 B IXR ,NELTST ,IPARI ,
101 C ITYPTST ,NSTRF ,IPART ,
102 D IPARTS ,IPARTQ ,IPARTT ,IPARTP ,
103 E IPARTR ,IPARTUR ,FR_WAVE ,RBY ,
104 F SECFCUM ,AGRAV ,IGRV ,LGRAV ,
106 H IXS20 ,IADS10 ,IADS20 ,IXS16 ,IADS16 ,
107 I W16 ,FSKYM ,MSNF ,IGEO ,IPM ,
108 J XSEC ,ITASK ,TEMP ,
109 K FTHE ,FTHESKY ,IGROUNC ,NGROUNC ,
110 M GRESAV ,GRTH ,IGRTH ,XDP ,MSSA ,
111 N DMELS ,MSTR ,DMELTR ,MSP ,DMELP ,
112 O MSRT ,DMELRT ,TABLE ,VF ,AF ,
113 P DF ,WF ,FFSKY ,AFGLOB ,NBSDVOIS ,
114 Q NERCVOIS ,NESDVOIS ,LERCVOIS ,LESDVOIS ,PHI1 ,
115 R PHI2 ,MSF ,NODFT ,NODLT ,
116 S FLG_KJ2 ,POR ,ICONTACT ,IFOAM ,SFEM_NODVAR,
117 T KXIG3D ,IXIG3D ,KNOT ,WIGE ,CONDN ,
118 U CONDNSKY ,S_SFEM_NODVAR,
119 V TAGPRT_SMS,ITAGND ,MS_2D ,NALE ,STRESSMEAN,
120 W KNOTLOCPC ,KNOTLOCEL ,SUBSET ,FLAG_SLIPRING_UPDATE,FLAG_RETRACTOR_UPDATE,
121 Y H3D_DATA ,IFTHE ,ICONDN ,DT ,OUTPUT,
122 Z SBUFMAT ,SNPC ,STF ,NODADT ,DTFAC1,
123 . DTMIN1 ,IDTMIN ,IOUT ,ISTDO ,IDTMINS,DTFACS,NSVOIS,
124 * IRESP ,MAXFUNC ,USERL_AVAIL,GLOB_THERM,IMON_MAT,DTMINS,SANIN,
143 USE preload_axial_mod
146 USE preload_solid_ini_mod
148 use element_mod ,
only : nixs,nixq,nixt,nixr,nixp
152#include
"implicit_f.inc"
153#include "comlock.inc"
157#include "mvsiz_p.inc"
161#include "com01_c.inc"
162#include "com04_c.inc"
163#include "com06_c.inc"
164#include "com08_c.inc"
165#include "param_c.inc"
166#include "vect01_c.inc"
167#include "scr06_c.inc"
168#include "scr07_c.inc"
169#include "scr14_c.inc"
170#include "scr17_c.inc"
172#include "impl1_c.inc"
173#include "stati_c.inc"
174#include "parit_c.inc"
178 TYPE(timer_),
INTENT(INOUT) :: TIMERS
179 INTEGER,
INTENT(IN) :: S_SFEM_NODVAR
180 type(python_),
intent(inout) :: PYTHON
181 INTEGER IXS(NIXS,*),ITAB(*),FLG_KJ2,
182 . ixq(nixq,*), ixt(nixt,*), ixp(nixp,*),
183 . ixr(nixr,*), igeo(npropgi,numgeo),ipari(npari,*),
184 . ipm(npropmi,nummat),npc(*), iparg(nparg,ngroup),
185 . nstrf(*), ipart(lipart1,*) ,
186 . iparts(*) ,ipartq(*) ,ipartt(*) ,ipartp(*) ,
187 . ipartr(*) ,ipartur(*) ,
188 . iads(8,*),iadq(4,*),iadt(2,*),
189 . iadp(2,*),iadr(3,*),
191 . ixs10(6,*),ixs20(12,*),iads10(6,*),iads20(12,*),
192 . ixs16(8,*),iads16(8,*),itask,igrounc(*),
193 . ngrounc,grth(*),igrth(*),nbsdvois(*),nercvois(*),
194 . nesdvois(*),lercvois(*),lesdvois(*),nodft, nodlt,
195 . icontact(*),ifoam(*),kxig3d(nixig3d,*),ixig3d(*),
197 . tagprt_sms(*),itagnd(*),nale(*),flag_slipring_update,flag_retractor_update
198 INTEGER ,
INTENT(IN) :: SANIN
199 INTEGER ,
INTENT(IN) :: SBUFMAT
200 INTEGER ,
INTENT(IN) :: SNPC
201 INTEGER ,
INTENT(IN) :: STF
202 INTEGER ,
INTENT(IN) :: IOUT
203 INTEGER ,
INTENT(IN) :: ISTDO
204 INTEGER ,
INTENT(IN) :: NSVOIS
205 INTEGER ,
INTENT(IN) :: IRESP
206 INTEGER ,
INTENT(IN) :: MAXFUNC
207 INTEGER,
INTENT(IN) :: USERL_AVAIL
208 INTEGER,
INTENT(IN) :: IMON_MAT
209 INTEGER,
INTENT(IN) :: IDTMINS
210 INTEGER,
INTENT(IN) :: NGRTH
211 INTEGER,
INTENT(IN) :: NELEM
212 my_real,
INTENT(IN) :: DTMINS
213 my_real,
INTENT(IN) :: DTFACS
215 . x(3,*),v(3,*),vr(3,*),d(3,*),ms(*),in(*),a(3,*),ar(3,*),
216 . dr(3,*),w(3,*),pm(npropm,nummat),skew(lskew,*),geo(npropg,numgeo),
217 . bufmat(*),veul(*),tf(*),fr_wave(*),elbuf(*) ,
218 . fsav(nthvki,*) ,wa(*),
219 . fv(*),val2(*),rby(*),
220 . fani(3,*) ,partsav(*) ,stifn(*) ,stifr(*),anin(*) ,
221 . fsky(*),tani(*),eani(*),bufgeo(*),
222 . dt2t, secfcum(7,numnod,nsect),w16(*), fskym(*),
223 . msnf(*),xsec(4,3,nsect),
224 . temp(*),fthe(*), fthesky(*),
225 . gresav(*), mssa(*), dmels(*), mstr(*), dmeltr(*),
226 . msp(*), dmelp(*), msrt(*), dmelrt(*),vf(3,*),af(3,*),ffsky(*),
227 . phi1(*),phi2(*),df(3,*),wf(3,*),msf(*),afglob(3,*),
228 . por(*) ,sfem_nodvar(s_sfem_nodvar),knot(*),wige(*),condn(*),condnsky(*),agrav(*),
229 . ms_2d(*),stressmean(6,*),knotlocpc(*),knotlocel(*)
230 DOUBLE PRECISION XDP(3,*)
231 TYPE(TTABLE) TABLE(*)
232 TYPE(ELBUF_STRUCT_),
DIMENSION(NGROUP),
TARGET :: ELBUF_TAB
234TYPE (MAT_ELEM_) ,
INTENT(INOUT) :: MAT_ELEM
235 TYPE (SUBSET_) ,
DIMENSION(NSUBS) :: SUBSET
237 INTEGER,
INTENT(IN) :: IFTHE, ICONDN
238 TYPE (SENSORS_) ,
INTENT(INOUT) ,
TARGET :: SENSORS
239 TYPE (DT_) ,
INTENT(INOUT) :: DT
240 TYPE(output_),
INTENT(INOUT) :: OUTPUT
241 INTEGER,
INTENT(IN) :: NODADT,IDTMIN(102)
242 my_real,
INTENT(IN) :: dtfac1(102),dtmin1(102)
243 TYPE(),
INTENT(IN) ::
244 type (glob_therm_) ,
intent(inout) :: glob_therm
248 DOUBLE PRECISION,
POINTER :: pFBSAV6
249 INTEGER IERROR, NV46,IPREID,FUN_ID,SENS_ID
250 INTEGER I,J,N, NG, NVC, MLW, JFT, JLT,ISOLNOD,ITHK,IPLA,IFAIL,
251 . K1, K2, KAD,NF1,IPRI, OFFSET,
252 . K0, K3, K6, K7, K8, NSG, NEL, KFTS, ISTRA,
253 . NPE,NIPMAX,ICNOD,IBID,NN,
254 . L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,L13,L14,L15,L16,
255 . L17,L18,L19,L20,L21,L22,L23,L24,L25,L26,L27,L28,L29,L30,
256 . ICP,ICS,IMATVIS,IEXPAN,NPT0,IG,OFF_IGRTH,
257 . NCTRL,IPARSENS,ISECT,GAMA(6),PX,PY,PZ,ISENS_ENERGY
258 my_real BID,QMVBID,PRELOAD1,STF_F
261 my_real,
ALLOCATABLE,
DIMENSION(:,:) :: FX,FY,FZ,MX,MY,MZ,JFAC
262 my_real,
DIMENSION(MVSIZ,6) :: SVIS
263 TYPE(G_BUFEL_) ,
POINTER :: GBUF
265 ALLOCATE(FX(MVSIZ,64),FY(MVSIZ,64),FZ(MVSIZ,64),STAT=ierror)
266 ALLOCATE(mx(mvsiz,4),my(mvsiz,4),mz(mvsiz,4),stat=ierror)
267 ALLOCATE(jfac(mvsiz,729))
271 CALL ancmsg(msgid=246,anmode=aninfo)
276 IF(mod(ncycle,iabs(ncpri))==0.OR.tt>=output%TH%THIS.OR.mdess /= 0.
277 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS).
278 . or.tt>=output%TH%THIS1(1).OR.tt>=output%TH%THIS1(2).
279 . or.tt>=output%TH%THIS1(3).OR.tt>=output%TH%THIS1(4).OR.tt>=output%TH%THIS1(5).
280 . or.tt>=output%TH%THIS1(6).OR.tt>=output%TH%THIS1(7).OR.tt>=output%TH%THIS1(8).
281 . or.tt>=output%TH%THIS1(9).OR.nth /= 0.OR.nanim /= 0 .
282 . or.tt>=tabfis(1).OR.tt>=tabfis(2).
283 . or.tt>=tabfis(3).OR.tt>=tabfis(4).OR.tt>=tabfis(5).
284 . or.tt>=tabfis(6).OR.tt>=tabfis(7).OR.tt>=tabfis(8).
285 . or.tt>=tabfis(9).OR.tt>=tabfis(10).
286 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(1)).
287 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(2)).
288 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(3)).
289 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(4)).
290 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(5)).
291 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(6)).
292 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(7)).
293 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(8)).
294 . or.(
ale%SUB%IALESUB /= 0.AND.t1s+dt2s>=output%TH%THIS1(9)).OR.istat==3) ipri=1
297 DO i=1,sensors%NSENSOR
298 IF (sensors%SENSOR_TAB(i)%TYPE == 14) isens_energy = 1
304 IF (ialelag > 0)
THEN
306 msf(i) = msf(i) - msnf(i)
312 CALL prelecflow(elbuf_tab,ngrounc,igrounc,iparg ,nbsdvois,
313 . nercvois,nesdvois,lercvois,lesdvois,phi1 ,
324 sensors%NGR_SENSOR(itask+1) = ng
328 IF (iparg(8,ng)==1)
GOTO 250
336 IF (mlw == 0 .OR. mlw == 13)
GOTO 250
340 2 mlw ,nel ,nft ,kad ,ity ,
341 3 npt ,jale ,ismstr ,jeul ,jtur ,
342 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
343 5 nvaux ,jpor ,jcvt ,jclose ,ipla ,
344 6 irep ,iint ,igtyp ,israt ,isrot ,
345 7 icsen ,isorth ,isorthg ,ifailure,jsms )
352 isolnod = iparg(28,ng)
356 imatvis = iparg(45,ng)
357 iexpan = iparg(49,ng)
360 ipartsph = iparg(69,ng)
361 ipreid = iparg(72,ng)
362 iformdt = iparg(73,ng)
364 IF (ity==1) icp = nsg
365 IF (ity==1 .OR. ity==2) jplasol=ipla
377 IF (ity==1 .AND. jlag==1)
THEN
378 IF(ixs(10,nf1)/=0)
THEN
379 igtyp = igeo(11,ixs(10,nf1))
384 IF (isens_energy == 1 .AND. ipri == 0)
387 gbuf => elbuf_tab(ng)%GBUF
388 fun_id = iparg(67,ng)
389 sens_id= iparg(68,ng)
390 CALL preload_solid_ini(python, nfunct,
391 1 fun_id ,sens_id ,npc ,snpc ,
392 2 tf ,stf ,sensors ,tt ,
393 3 gbuf%BPRELD ,gbuf%G_BPRELD ,nel )
396 IF(isolnod==4.AND.(isrot==0.OR.isrot==3))
THEN
399 1 elbuf_tab, ng, pm, geo,
402 4 veul, fv, ale_connect,iparg,
403 5 tf, npc, bufmat, partsav,
404 6 nloc_dmg, dt2t, neltst, ityptst,
405 7 stifn, fsky, iads, offset,
406 8 eani, iparts(nf1), fx(1,1), fy(1,1),
407 9 fz(1,1), fx(1,2), fy(1,2), fz(1,2),
408 a fx(1,3), fy(1,3), fz(1,3), fx(1,4),
409 b fy(1,4), fz(1,4), nel, fskym,
410 c msnf, ipm, igeo, bid,
411 d istra, itask, temp, fthe,
412 e fthesky, iexpan, gresav, grth,
413 f igrth(nf1), mssa(nf1), dmels(nf1), table,
414 g xdp, sfem_nodvar, voln, condn,
415 h condnsky, d, sensors, ipri,
416 i mat_elem, ibid, dt, idel7nok,nsvois,ibid
417 * snpc, stf, sbufmat, svis,idtmins,iresp,
418 * idel7ng, maxfunc, userl_avail, glob_therm,
419 v impl_s, idyna, s_sfem_nodvar)
423 n=ninter+nrwall+nrbody
426 k2=k0+30+nstrf(k0+14)
427 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
430 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
434 pfbsav6 => sensors%FSAV(1,1,isect)
437 CALL section_s4(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
438 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
439 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
440 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
442 7 ixs10,isolnod,xsec(1,1,i),pfbsav6,iparsens)
447 ELSEIF (isolnod==10 .OR. (isolnod==4.AND.isrot==1))
THEN
450 1 elbuf_tab, ng, pm, geo,
453 4 veul, fv, ale_connect, iparg,
454 5 tf, npc, bufmat, partsav,
455 6 nloc_dmg, dt2t, neltst, ityptst,
456 7 stifn, fsky, iads, offset,
457 8 eani, iparts(nf1), ixs10, iads10,
460 b istra, isolnod, itask, temp,
461 c fthe, fthesky, iexpan, stifr,
462 d d, gresav, grth, igrth(off_igrth+nf1),
463 e table, mssa(nf1), dmels(nf1), igeo,
464 f xdp, voln, condn, condnsky,
465 g sfem_nodvar, itagnd, sensors, ipri,
467 i snpc, stf, sbufmat,
468 j nsvois, idtmins, idel7ng, maxfunc ,
469 v userl_avail, glob_therm, impl_s, idyna ,
474 n=ninter+nrwall+nrbody
477 k2=k0+30+nstrf(k0+14)
478 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
481 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
485 pfbsav6 => sensors%FSAV(1,1,isect)
488 CALL section_s4(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
489 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
490 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
491 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
493 7 ixs10,isolnod,xsec(1,1,i),pfbsav6,iparsens)
498 ELSEIF(isolnod==20)
THEN
505 l2 = l1 + mvsiz * nipmax
506 l3 = l2 + mvsiz * nipmax
507 l4 = l3 + mvsiz * nipmax
508 l5 = l4 + mvsiz * nipmax
509 l6 = l5 + mvsiz * nipmax
510 l7 = l6 + mvsiz * nipmax
511 l8 = l7 + mvsiz * nipmax
512 l9 = l8 + mvsiz * nipmax
513 l10 = l9 + mvsiz * nipmax
514 l11 = l10 + mvsiz * nipmax
516 l13 = l12 + mvsiz * npe
517 l14 = l13 + mvsiz * npe
518 l15 = l14 + mvsiz * npe
519 l16 = l15 + mvsiz * npe
520 l17 = l16 + mvsiz * npe
521 l18 = l17 + mvsiz * npe
522 l19 = l18 + mvsiz * npe
523 l20 = l19 + mvsiz * npe
524 l21 = l20 + mvsiz * npe
525 l22 = l21 + mvsiz * npe
527 l24 = l23 + mvsiz * npe
528 l25 = l24 + mvsiz * npe
529 l26 = l25 + mvsiz * npe
530 l27 = l26 + mvsiz * npe
531 l28 = l27 + mvsiz * npe * nipmax
532 l29 = l28 + mvsiz * npe * nipmax
533 l30 = l29 + mvsiz * npe * nipmax
534 off_igrth = numels8 + numels10
537 1 elbuf_tab, ng, pm, geo,
540 4 veul, fv, ale_connect, iparg,
541 5 tf, npc, bufmat, partsav,
542 6 nloc_dmg, dt2t, neltst, ityptst,
543 7 stifn, fsky, iads, offset,
544 8 eani, iparts(nf1), ixs20, iads20,
546 a w16(l1), w16(l2), w16(l3), w16(l4),
547 b w16(l5), w16(l6), w16(l7), w16(l8),
548 c w16(l9), w16(l10), w16(l12), w16(l13),
549 d w16(l14), w16(l15), w16(l16), w16(l17),
550 e w16(l18), w16(l19), w16(l20), w16(l21),
551 f w16(l22), w16(l23), w16(l24), w16(l25),
552 g w16(l26), w16(l27), w16(l28), w16(l29),
553 h ipm, istra, temp, fthe,
554 i fthesky, iexpan, gresav, grth,
555 j igrth(off_igrth+nf1),table, igeo, voln,
556 k condn, condnsky, itask, ipri,
557 l mat_elem, ibid, dt, idel7nok,
558 m snpc, stf, sbufmat,
559 n idtmins, nsvois, iresp, idel7ng,
560 o idtmin, maxfunc, imon_mat, userl_avail,
561 . glob_therm, impl_s, idyna, sensors)
565 n=ninter+nrwall+nrbody
568 k2=k0+30+nstrf(k0+14)
569 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
572 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
576 pfbsav6 => sensors%FSAV(1,1,isect)
579 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
580 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
581 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
582 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
584 7 ixs20,ixs16,isolnod,xsec(1,1,i),pfbsav6,iparsens)
589 ELSEIF(isolnod==16)
THEN
596 l2 = l1 + mvsiz * nipmax
597 l3 = l2 + mvsiz * nipmax
598 l4 = l3 + mvsiz * nipmax
599 l5 = l4 + mvsiz * nipmax
600 l6 = l5 + mvsiz * nipmax
601 l7 = l6 + mvsiz * nipmax
602 l8 = l7 + mvsiz * nipmax
604 l10 = l9 + mvsiz * nipmax
605 l11 = l10 + mvsiz * nipmax
606 l12 = l11 + mvsiz * nipmax
607 l13 = l12 + mvsiz * npe
608 l14 = l13 + mvsiz * npe
609 l15 = l14 + mvsiz * npe
610 l16 = l15 + mvsiz * npe
611 l17 = l16 + mvsiz * npe
612 l18 = l17 + mvsiz * npe
613 l19 = l18 + mvsiz * npe
614 l20 = l19 + mvsiz * npe
615 l21 = l20 + mvsiz * npe
616 l22 = l21 + mvsiz * npe
617 l23 = l22 + mvsiz * npe
618 l24 = l23 + mvsiz * npe
619 l25 = l24 + mvsiz * npe
620 l26 = l25 + mvsiz * npe
622 l28 = l27 + mvsiz * npe * nipmax
623 l29 = l28 + mvsiz * npe * nipmax
624 l30 = l29 + mvsiz * npe * nipmax
625 off_igrth = numels8 + numels10 + numels20
627 CALL s16forc3(timers, output,elbuf_tab,ng ,
630 3 val2 ,veul ,fv ,ale_connect ,iparg ,
631 4 tf ,npc ,bufmat ,partsav ,nloc_dmg ,
632 5 dt2t ,neltst ,ityptst ,stifn ,fsky ,
633 6 iads ,offset ,eani ,iparts(nf1),
634 7 ixs16 ,iads16 ,nel ,fx ,
635 8 fy ,fz ,w16(l1) ,w16(l2) ,w16(l3) ,
636 9 w16(l4) ,w16(l5) ,w16(l6) ,w16(l7) ,w16(l8) ,
637 a w16(l9) ,w16(l10) ,w16(l11) ,w16(l12) ,w16(l13) ,
638 b w16(l14) ,w16(l15) ,w16(l16) ,w16(l17) ,w16(l18) ,
639 c w16(l19) ,w16(l20) ,w16(l21) ,w16(l22) ,w16(l23) ,
640 d w16(l24) ,w16(l25) ,w16(l26) ,w16(l27) ,w16(l28) ,
641 e w16(l29) ,icp ,ics ,
642 f ipm ,istra ,temp ,fthe , fthesky,
643 g iexpan ,gresav ,grth ,igrth(off_igrth + nf1),table,
644 h igeo ,voln ,condn ,condnsky ,itask,ipri ,
645 i mat_elem ,ibid ,dt ,snpc ,
646 j stf ,sbufmat ,svis,nsvois,idtmins,iresp,
647 . idel7ng, idel7nok, idtmin, maxfunc,
648 . imon_mat ,userl_avail, glob_therm, impl_s,
654 n=ninter+nrwall+nrbody
657 k2=k0+30+nstrf(k0+14)
658 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
661 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
665 pfbsav6 => sensors%FSAV(1,1,isect)
668 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
669 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
670 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
671 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
673 7 ixs20,ixs16,isolnod,xsec(1,1,i),pfbsav6,iparsens)
679 ELSEIF (jhbe == 24 .AND. isolnod == 6)
THEN
682 . timers ,output ,ngroup ,elbuf_tab,npropm ,nummat ,pm ,
683 . ng ,npropg ,numgeo ,geo ,nixs ,numels ,numelq ,
684 . nsvois ,ixs ,numnod ,x ,a ,v ,
685 . w ,wa ,val2 ,ale_connect,nparg ,iparg ,
686 . stf ,tf ,snpc ,npc ,sbufmat ,bufmat ,npsav ,
687 . npart ,partsav ,dt2t ,neltst ,ityptst ,stifn ,lsky ,
688 . fsky ,iads ,offset ,nel ,iparts(nf1),
689 . fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,fz(1,2) ,
690 . fx(1,3) ,fy(1,3) ,fz(1,3) ,fx(1,4) ,fy(1,4) ,fz(1,4) ,
691 . fx(1,5) ,fy(1,5) ,fz(1,5) ,fx(1,6) ,fy(1,6) ,fz(1,6) ,
692 . nloc_dmg,npropmi ,ipm ,istra ,npropgi ,igeo ,ngpe ,
693 . nthread ,gresav ,ngrth ,nelem ,grth ,igrth(nf1),ntable ,
694 . table ,mssa(nf1) ,dmels(nf1),voln ,itask ,ipri ,mat_elem ,
695 . ibid ,ifthe ,fthe ,fthesky ,icondn ,condn ,condnsky ,
696 . iexpan ,dt ,svis ,iresp ,idel7nok ,maxfunc ,imon_mat ,
697 . userl_avail,glob_therm,xdp ,sensors ,dt1 ,volmin ,th_strain,
698 . idtmin ,tt ,idyna ,impl_s ,ineg_v ,iparit ,irep ,
700 . jeul ,jlag ,jsph ,jplasol ,jthe ,mstop ,mtn ,
701 . n2d ,ncpri ,ncycle ,nfilsol ,nft ,iint ,nodadt ,
706 n = ninter+nrwall+nrbody
709 k2 = k0+30+nstrf(k0+14)
710 k3 = k0+30+nstrf(k0+14)+nstrf(k0+6)
713 IF (sensors%STABSEN > 0) isect = sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
717 pfbsav6 => sensors%FSAV(1,1,isect)
720 CALL section_s6(jft, jlt, nft, nstrf(k0+7), nstrf(k0+3),
721 . nstrf(k0+4), nstrf(k0+5), nstrf(k3), x, v,
722 . fsav(1,n), ixs, fani(1,1+2*(i-1)), secfcum(1,1,i), fx,
723 . fy, fz, nstrf(k0), nstrf(k0+14), nstrf(k0+26),
724 . nstrf(k0+6), nstrf(k2), ms,xsec(1,1,i),
731 ELSEIF(jhbe == 15)
THEN
737 CALL s6cforc3(timers, output, elbuf_tab,ng ,
740 3 val2 ,veul ,fv ,ale_connect ,iparg ,
741 4 tf ,npc ,bufmat ,partsav ,
742 5 dt2t ,neltst,ityptst,stifn ,fsky ,
743 6 iads ,offset ,eani ,iparts(nf1) ,
744 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
745 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz(1,3) ,fx(1,4) ,
746 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
747 a fx(1,6) ,fy(1,6) ,fz(1,6) ,nel ,
748 b icp ,ics ,nloc_dmg,
749 c ipm ,istra ,igeo ,gresav ,grth ,
750 d igrth(nf1),table ,mssa(nf1),dmels(nf1) ,voln ,
751 e itask ,ipri ,mat_elem ,ibid,temp ,
752 f fthe ,fthesky ,condn ,condnsky ,
753 g iexpan,ifthe ,icondn ,dt ,snpc,stf,
754 h sbufmat,svis,nsvois, idtmins ,iresp,
755 i idel7ng ,idel7nok,maxfunc, imon_mat, userl_avail,
756 j glob_therm,xdp,sensors )
760 n=ninter+nrwall+nrbody
763 k2=k0+30+nstrf(k0+14)
764 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
767 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
771 pfbsav6 => sensors%FSAV(1,1,isect)
774 CALL section_s6(jft, jlt, nft, nstrf(k0+7), nstrf(k0+3),
775 2 nstrf(k0+4), nstrf(k0+5), nstrf(k3), x, v,
776 3 fsav(1,n), ixs, fani(1,1+2*(i-1)), secfcum(1,1,i), fx,
777 4 fy, fz, nstrf(k0), nstrf(k0+14), nstrf(k0+26),
778 5 nstrf(k0+6), nstrf(k2), ms,xsec(1,1,i),
787 CALL scforc3(timers, output, elbuf_tab,ng ,
790 3 val2 ,veul ,fv ,ale_connect ,iparg ,
791 4 tf ,npc ,bufmat ,partsav ,nloc_dmg ,
792 5 dt2t ,neltst ,ityptst ,stifn ,fsky ,
793 6 iads ,offset ,eani ,iparts(nf1) ,
794 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
795 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz
796 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
797 a fx(1,6) ,fy(1,6) ,fz(1,6) ,fx(1,7) ,fy(1,7) ,
798 b fz(1,7) ,fx(1,8) ,fy(1,8) ,fz(1,8) ,nel ,
800 d ipm ,istra ,temp ,fthe ,fthesky ,
801 e iexpan ,igeo ,gresav ,grth ,igrth(nf1),
802 f mssa(nf1),dmels(nf1),table ,xdp ,voln ,
803 g condn ,condnsky ,itask ,ipri ,mat_elem ,
804 h ibid ,dt ,snpc ,stf ,sbufmat ,
805 i svis ,nsvois , idtmins,iresp,idel7ng ,idel7nok,maxfunc,imon_mat,
806 j userl_avail, glob_therm, impl_s, idyna,sensors)
810 n=ninter+nrwall+nrbody
813 k2=k0+30+nstrf(k0+14)
814 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
817 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
821 pfbsav6 => sensors%FSAV(1,1,isect)
824 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
825 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
826 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
827 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
829 7 ixs20,ixs16,isolnod,xsec(1,1,i),pfbsav6,iparsens)
835 ELSEIF (jhbe == 17)
THEN
837 IF (iparg(36,ng)==3)
THEN
839 CALL s8sforc3(timers,output, elbuf_tab,ng ,
842 3 val2 ,veul ,fv ,ale_connect ,iparg
843 4 tf ,npc ,bufmat ,partsav ,nloc_dmg ,
844 5 dt2t ,neltst ,ityptst ,stifn ,fsky ,
845 6 iads ,offset ,eani ,iparts(nf1),icp ,
846 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
847 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz(1,3) ,fx(1,4) ,
848 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
849 a fx(1,6) ,fy(1,6) ,fz(1,6) ,fx(1,7) ,fy(1,7) ,
850 b fz(1,7) ,fx(1,8) ,fy(1,8) ,fz(1,8) ,nel ,
851 c nvc ,ipm ,itask ,istra ,
852 d temp ,fthe ,fthesky ,iexpan ,gresav ,
853 e grth ,igrth(nf1),mssa(nf1),dmels(nf1),table ,
854 f igeo ,xdp ,voln ,condn ,condnsky ,
855 g d ,ipri ,mat_elem ,ibid,snpc,stf,sbufmat,
856 h svis ,nsvois ,idtmins ,iresp,idtmin,maxfunc ,
857 i userl_avail,dt ,glob_therm,sensors)
863 1 elbuf_tab, ng, pm, geo,
866 4 veul, fv, ale_connect,iparg,
867 5 tf, npc, bufmat, partsav,
868 6 nloc_dmg, dt2t, neltst, ityptst,
869 7 stifn, fsky, iads, offset,
870 8 eani, iparts(nf1),icp, fx(1,1),
871 9 fy(1,1), fz(1,1), fx(1,2), fy(1,2),
872 a fz(1,2), fx(1,3), fy(1,3), fz(1,3),
873 b fx(1,4), fy(1,4), fz(1,4), fx(1,5),
874 c fy(1,5), fz(1,5), fx(1,6), fy(1,6),
875 d fz(1,6), fx(1,7), fy(1,7), fz(1,7),
876 e fx(1,8), fy(1,8), fz(1,8), nel,
877 f nvc, ipm, itask, istra,
878 g temp, fthe, fthesky, iexpan,
879 h gresav, grth, igrth(nf1), mssa(nf1),
880 i dmels(nf1), table, igeo, xdp,
881 j voln, condn, condnsky, d,
882 k sensors, ipri, mat_elem, ibid,
883 l dt, snpc, stf, sbufmat,svis,
884 m nsvois, idtmins, iresp, maxfunc,
885 v userl_avail,glob_therm, impl_s, idyna )
890 n=ninter+nrwall+nrbody
893 k2=k0+30+nstrf(k0+14)
894 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
897 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
901 pfbsav6 => sensors%FSAV(1,1,isect)
904 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
905 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
906 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
907 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
909 7 ixs20,ixs16,isolnod,xsec(1,1,i),
914 ELSEIF (jhbe == 14 .AND.
915 . (igtyp == 20 .OR. igtyp == 21 .OR. igtyp == 22))
THEN
921 l2 = l1 + mvsiz * nipmax
922 l3 = l2 + mvsiz * nipmax
924 l5 = l4 + mvsiz * nipmax
925 l6 = l5 + mvsiz * nipmax
926 l7 = l6 + mvsiz * nipmax
927 l8 = l7 + mvsiz * nipmax
928 l9 = l8 + mvsiz * nipmax
929 l10 = l9 + mvsiz * nipmax
930 l11 = l10 + mvsiz * nipmax
931 l12 = l11 + mvsiz * nipmax
933 CALL s8cforc3(timers, output, elbuf_tab,ng ,
936 3 val2 ,veul ,fv ,ale_connect ,iparg ,
937 4 tf ,npc ,bufmat ,partsav ,nloc_dmg ,
938 5 dt2t ,neltst ,ityptst,stifn ,fsky ,
939 6 iads ,offset ,eani ,iparts(nf1) ,
940 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
941 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz(1,3) ,fx(1,4) ,
942 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
943 a fx(1,6) ,fy(1,6) ,fz(1,6) ,fx(1,7) ,fy
944 b fz(1,7) ,fx(1,8) ,fy(1,8) ,fz(1,8) ,nel ,
946 f ics ,w16(l1) ,w16(l2) ,w16(l3) ,w16(l4) ,
947 g w16(l5) ,w16(l6) ,w16(l7) ,w16(l8) ,w16(l9) ,
948 h w16(l10) ,w16(l11) ,w16(l12),nvc ,ipm ,
949 i itask ,istra ,temp ,fthe,
950 j fthesky ,iexpan ,igeo ,npt ,gresav ,
951 k grth ,igrth(nf1),mssa(nf1),dmels(nf1),table,
952 l xdp ,voln ,condn ,condnsky,sensors,
953 m ipri ,mat_elem ,ibid ,dt ,nodadt, dtfac1,
954 n dtmin1 ,idtmin ,snpc,stf,sbufmat,svis,nsvois,idtmins,
955 o iresp ,maxfunc ,userl_avail,
956 p glob_therm,impl_s,idyna)
960 n=ninter+nrwall+nrbody
963 k2=k0+30+nstrf(k0+14)
964 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
967 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
971 pfbsav6 => sensors%FSAV(1,1,isect)
974 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
975 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
976 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
977 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
979 7 ixs20,ixs16,isolnod,xsec(1,1,i),
984 ELSEIF (jhbe == 14 .OR. jhbe == 222)
THEN
990 l2 = l1 + mvsiz * nipmax
991 l3 = l2 + mvsiz * nipmax
992 l4 = l3 + mvsiz * nipmax
993 l5 = l4 + mvsiz * nipmax
994 l6 = l5 + mvsiz * nipmax
995 l7 = l6 + mvsiz * nipmax
996 l8 = l7 + mvsiz * nipmax
997 l9 = l8 + mvsiz * nipmax
998 l10 = l9 + mvsiz * nipmax
999 l11 = l10 + mvsiz * nipmax
1012 CALL s8zforc3(timers, output, elbuf_tab,ng ,
1015 3 val2 ,veul ,fv ,ale_connect ,iparg ,
1016 4 tf ,npc ,bufmat ,partsav ,nloc_dmg ,
1017 5 dt2t ,neltst ,ityptst ,stifn
1018 6 iads ,offset ,eani ,iparts(nf1),icp ,
1019 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
1020 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz(1,3) ,fx
1021 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
1022 a fx(1,6) ,fy(1,6) ,fz(1,6) ,fx(1,7) ,fy(1,7)
1023 b fz(1,7) ,fx(1,8) ,fy(1,8) ,fz(1,8) ,nel ,
1024 f ics ,w16(l1) ,w16(l2) ,w16(l3) ,w16(l4) ,
1025 g w16(l5) ,w16(l6) ,w16(l7) ,w16(l8) ,w16(l9) ,
1026 h w16(l10) ,w16(l11) ,w16(l12) ,nvc ,ipm ,
1027 i itask ,istra ,temp ,fthe ,
1028 j fthesky ,iexpan ,igeo ,npt0 ,gresav ,
1029 k grth ,igrth(nf1),mssa(nf1),dmels(nf1) ,table ,
1030 l xdp ,voln ,condn ,condnsky ,jfac,
1031 m d ,sensors ,ipri ,mat_elem ,ibid,dt ,snpc,
1032 n stf ,sbufmat ,svis ,nsvois ,idtmins ,
1033 o iresp ,maxfunc ,userl_avail, glob_therm,
1038 n=ninter+nrwall+nrbody
1041 k2=k0+30+nstrf(k0+14)
1042 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
1045 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1049 pfbsav6 => sensors%FSAV(1,1,isect)
1052 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
1053 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
1054 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
1055 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
1057 7 ixs20,ixs16,isolnod,xsec(1,1,i),
1063 ELSEIF(igtyp>=29)
THEN
1065 IF (isens_energy == 1 .AND. ipri == 0)
1070 CALL suforc3(timers,elbuf_tab(ng),
1071 1 jft ,jlt ,nft ,nel ,ixs ,
1072 2 pm ,geo ,ipm ,igeo ,x ,
1074 4 d ,ms ,in ,tf ,npc ,
1075 5 bufmat ,iparg ,iparts(nf1),partsav ,mat_elem%MAT_PARAM,
1076 6 fsky ,fr_wave ,iads ,eani ,stifn ,
1077 7 stifr ,fx ,fy ,fz ,ifailure ,
1078 8 mtn ,igtyp ,npt ,jsms ,mssa(nf1),
1079 9 dmels(nf1),itask ,ipri ,jthe ,table ,
1080 a idtmins,dtfacs ,dtmins)
1082 ELSEIF (npt == 1)
THEN
1084 IF (jhbe == 24)
THEN
1090 CALL szforc3(timers,elbuf_tab,ng ,
1093 3 val2 ,veul ,fv ,ale_connect ,iparg ,
1094 4 tf ,npc ,bufmat ,partsav ,
1095 5 dt2t ,neltst,ityptst,stifn ,fsky ,
1096 6 iads ,offset,eani ,iparts(nf1) ,icp,
1097 7 fx(1,1) ,fy(1,1) ,fz(1,1) ,fx(1,2) ,fy(1,2) ,
1098 8 fz(1,2) ,fx(1,3) ,fy(1,3) ,fz(1,3) ,fx(1,4) ,
1099 9 fy(1,4) ,fz(1,4) ,fx(1,5) ,fy(1,5) ,fz(1,5) ,
1100 a fx(1,6) ,fy(1,6) ,fz(1,6) ,fx(1,7) ,fy(1,7) ,
1101 b fz(1,7) ,fx(1,8) ,fy(1,8) ,fz(1,8) ,nel ,
1102 c fskym ,msnf ,nvc ,ipm ,itask ,
1103 d qmvbid ,istra ,imatvis ,temp ,fthe ,
1104 e fthesky ,iexpan ,gresav ,grth ,igrth(nf1),
1105 f mssa(nf1),dmels(nf1),table,igeo ,xdp ,
1107 h d ,tagprt_sms,sensors ,ipri ,
1108 i nale ,nloc_dmg ,mat_elem,ibid,dt,
1109 j output,nsvois,ibid,snpc,stf,sbufmat,svis,iresp,
1110 k maxfunc, userl_avail, glob_therm, impl_s ,idyna)
1117 IF(n2d /= 0) nv46 = 4
1119 CALL sforc3(timers, output,
1120 1 elbuf_tab, ng, pm, geo,
1123 4 val2, veul, fv, ale_connect,
1124 5 iparg, tf, npc, bufmat,
1125 6 partsav, itab, dt2t, neltst,
1126 7 ityptst, stifn, fsky, iads,
1127 8 offset, eani, iparts(nf1),fx(1,1),
1128 9 fy(1,1), fz(1,1), fx(1,2), fy(1,2),
1129 a fz(1,2), fx(1,3), fy(1,3), fz(1,3),
1130 b fx(1,4), fy(1,4), fz(1,4), fx(1,5),
1131 c fy(1,5), fz(1,5), fx(1,6), fy(1,6),
1132 d fz(1,6), fx(1,7), fy(1,7), fz(1,7),
1133 e fx(1,8), fy(1,8), fz(1,8), nel,
1134 f fskym, msnf, ibid, bid,
1135 g nvc, ipm, igeo, ar,
1136 h vr, in, fr_wave, dr,
1137 i bid, itask, qmvbid, istra,
1138 j temp, fthe, fthesky, iexpan,
1139 k gresav, grth, igrth(nf1), mssa(nf1),
1140 l dmels(nf1), table, phi1, phi2,
1142 n ffsky, afglob, msf, iparg(1,ng),
1143 o xdp, por, icontact, ifoam,
1144 p voln, condn, condnsky, agrav,
1145 q igrv, lgrav, sensors, skew,
1146 r nale, d, ipri, nloc_dmg,
1147 s mat_elem, ibid, dt, idel7nok,nsvois,
1148 t ibid, snpc, stf, sbufmat,svis,idtmins,
1149 u iresp, idel7ng, maxfunc
1150 v impl_s, idyna, output%TH%WFEXT)
1156 n=ninter+nrwall+nrbody
1159 k2=k0+30+nstrf(k0+14)
1160 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
1163 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1167 pfbsav6 => sensors%FSAV(1,1,isect)
1170 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
1171 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
1172 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
1173 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
1175 7 ixs20,ixs16,isolnod,xsec(1,1,i),
1180 ELSEIF (npt == 8 .AND. mtn /= 0)
THEN
1185 1 elbuf_tab(ng),pm ,geo ,ixs ,x ,
1187 3 veul ,fv ,ale_connect ,iparg ,
1188 4 tf ,npc ,bufmat ,partsav ,
1189 5 stifn ,fsky ,iads ,offset ,iparts(nf1),
1190 6 nel ,dt2t ,neltst ,ityptst ,ipm ,
1191 7 itask ,gresav ,grth ,igrth(nf1),mssa(nf1) ,
1192 8 dmels(nf1) ,table,ipri ,mat_elem,ng ,svis ,glob_therm,
1193 9 snpc ,numgeo ,sbufmat ,stf,ntable,sensors)
1197 n=ninter+nrwall+nrbody
1200 k2=k0+30+nstrf(k0+14)
1201 k3=k0+30+nstrf(k0+14)+nstrf(k0+6)
1204 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1208 pfbsav6 => sensors%FSAV(1,1,isect)
1211 CALL section_s(jft,jlt,nft,nstrf(k0+7),nstrf(k0+3),
1212 2 nstrf(k0+4),nstrf(k0+5),nstrf(k3),x,v,fsav(1,n),
1213 3 ixs ,fani(1,1+2*(i-1)), secfcum(1,1,i),fx ,fy ,
1214 4 fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
1216 7 ixs20,ixs16,isolnod,xsec(1,1,i),
1223 ELSEIF(ity==2.AND.jmult==0.AND.jlag==1.AND.
1227 IF (isens_energy == 1 .AND. ipri == 0)
1229 IF(jhbe==17 .OR. (n2d==1.AND.jhbe==22))
THEN
1232 1 pm ,geo ,ixq ,x ,a ,
1233 2 v ,ms ,w ,wa ,val2 ,
1234 3 veul ,fv ,ale_connect ,iparg ,nloc_dmg,
1235 4 elbuf_tab,tf ,npc ,bufmat ,partsav ,
1236 5 dt2t ,neltst,ityptst,stifn ,offset ,
1237 6 eani ,ipartq(nf1),nel,iadq ,fsky ,
1239 8 ipm ,bid ,qmvbid ,gresav ,grth ,
1240 9 igrth(off_igrth+nf1),table ,igeo ,itask ,iexpan,
1241 a ms_2d ,fskym ,ipri ,mat_elem ,ibid,ibid,snpc,
1242 b stf,sbufmat,svis,nsvois,idtmins,iresp,tt,dt1,
1243 . idel7ng, idel7nok, idtmin, maxfunc,imon_mat,
1244 v userl_avail, impl_s, idyna,
1245 . dt , glob_therm,sensors)
1249 1 pm ,geo ,ixq ,x ,a ,
1250 2 v ,ms ,w ,wa ,val2 ,
1251 3 veul ,ale_connect ,iparg ,nloc_dmg ,
1252 4 tf ,npc ,bufmat ,partsav ,
1253 5 dt2t ,neltst ,ityptst ,stifn ,offset ,
1254 6 eani ,ipartq(nf1),nel ,iadq ,fsky ,
1255 9 ipm ,bid ,qmvbid ,
1256 a gresav ,grth ,igrth(off_igrth+nf1),table,igeo ,
1257 b voln ,itask ,ms_2d ,fskym ,ipri ,
1258 c mat_elem,h3d_data%STRAIN,ibid,snpc,stf,sbufmat,
1259 d svis,nsvois,iresp,tt,dt1,
1260 . idel7nok, idtmin, maxfunc
1261 . imon_mat,userl_avail, impl_s, idyna,
1262 . dt ,glob_therm,sensors)
1266 ELSEIF (ity == 4)
THEN
1267 k1=1 + 6*(numelc+numeltg)*iepsdot+15*nft
1268 off_igrth = numels+numelq+numelc
1271 fun_id = iparg(73,ng)
1272 sens_id= iparg(74,ng)
1273 CALL get_preload_axial(python, nfunct,
1274 1 fun_id ,sens_id ,npc ,snpc ,
1275 2 tf ,stf ,sensors ,tt ,
1281 IF (isens_energy == 1 .AND. ipri == 0)
1284 CALL tforc3(mat_elem%MAT_PARAM,nummat,
1285 1 elbuf_tab(ng), jft, jlt, pm,
1287 3 v, partsav, bufmat, dt2t,
1288 4 neltst, ityptst, stifn, fsky,
1289 5 iadt, offset, ipartt(nf1), tani(k1),
1290 6 fx(1,1), fx(1,2), fy(1,1), fy(1,2),
1291 7 fz(1,1), fz(1,2), nel, gresav,
1292 8 grth, igrth(off_igrth+nf1),mstr(nf1), dmeltr(nf1),
1293 9 ipri, ipm, npc, tf,
1294 a itask, h3d_data, nft, mtn,
1295 b jsms, igre, preload1, stf_f,
1300 n=ninter+nrwall+nrbody
1303 k2=k0+30+nstrf(k0+14)
1304 k6=k0+30+nstrf(k0+14)+nstrf(k0+6)
1305 1 +2*nstrf(k0+7)+2*nstrf(k0+8)+2*nstrf(k0+9)
1308 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1312 pfbsav6 => sensors%FSAV(1,1,isect)
1315 CALL section_t(jft,jlt,nft,nstrf(k0+10),nstrf(k0+3),
1316 2 nstrf(k0+4),nstrf(k0+5),nstrf(k6),x,v,fsav(1,n),
1317 3 ixt ,fani(1,1+2*(i-1)), secfcum(1,1,i) ,
1318 4 fx ,fy ,fz ,nstrf(k0),nstrf(k0+14),nstrf(k0+26),
1319 5 nstrf(k0+6),nstrf(k2) ,ms,
1320 6 xsec(1,1,i), pfbsav6,iparsens)
1324 ENDIF !
IF (nsect > 0)
1326 ELSEIF (ity == 5)
THEN
1327 off_igrth = numels+numelq+numelc+numelt
1328 k1=1 + 6*(numelc+numeltg)*iepsdot + 15*(numelt+nft)
1331 fun_id = iparg(73,ng)
1332 sens_id= iparg(74,ng)
1333 CALL get_preload_axial(python, nfunct,
1334 1 fun_id ,sens_id ,npc ,snpc ,
1335 2 tf ,stf ,sensors ,tt ,
1341 IF (isens_energy == 1 .AND. ipri == 0)
1345 1 elbuf_tab(ng),jft ,jlt ,nel ,
1346 2 mtn ,ismstr ,pm ,ixp(1,nf1) ,
1348 4 vr ,geo ,partsav ,dt2t ,
1349 5 neltst ,ityptst ,stifn ,stifr ,
1350 6 fsky ,iadp ,offset ,ipartp(nf1),
1351 7 tani(k1) ,fx(1,1) ,fx(1,2) ,fy(1,1) ,
1352 8 fy(1,2) ,fz(1,1) ,fz(1,2) ,mx(1,1) ,
1353 9 mx(1,2) ,my(1,1) ,my(1,2) ,mz(1,1) ,
1354 a mz(1,2) ,igeo ,ipm ,bufmat ,
1355 b npt ,npc ,tf ,gresav ,
1356 c grth ,igrth(off_igrth+nf1),msp(nf1) ,dmelp(nf1) ,
1357 d ipri ,itask ,jthe ,temp ,
1358 e fthe ,fthesky ,iexpan ,h3d_data ,
1359 f jsms ,igre ,nft ,ifail ,
1360 g sbufmat ,snpc ,stf ,nummat ,
1361 h numgeo ,iout ,istdo ,idel7nok ,
1362 i idyna ,imconv ,impl_s ,mat_elem%MAT_PARAM,
1363 j preload1 ,stf_f ,dt ,sensors ,
1368 n=ninter+nrwall+nrbody
1371 k2=k0+30+nstrf(k0+14)
1372 k7=k0+30+nstrf(k0+14)+nstrf(k0+6)
1373 1 +2*nstrf(k0+7)+2*nstrf(k0+8)+2*nstrf(k0+9)
1377 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1381 pfbsav6 => sensors%FSAV(1,1,isect)
1384 CALL section_p(jft,jlt,nft,nstrf(k0+11),nstrf(k0+3),
1385 2 nstrf(k0+4),nstrf(k0+5),nstrf(k7),x,v,vr,fsav(1,n),
1386 3 ixp ,fani(1,1+2*(i-1)), secfcum(1,1,i) ,
1388 5 nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
1390 8 xsec(1,1,i),pfbsav6,iparsens)
1395 ELSEIF (ity == 6)
THEN
1396 k1=1 + 6*(numelc+numeltg)*iepsdot + 15*(numelt+numelp+nft)
1397 off_igrth = numels+numelq+numelc+numelt+numelp
1400 fun_id = iparg(73,ng)
1401 sens_id= iparg(74,ng)
1402 CALL get_preload_axial(python, nfunct,
1403 1 fun_id ,sens_id ,npc ,snpc ,
1404 2 tf ,stf ,sensors ,tt ,
1409 IF (isens_energy == 1 .AND. ipri == 0)
1411 IF(igtyp == 23)
THEN
1413 1 elbuf_tab(ng), jft, jlt, nel,
1414 2 mtn, igeo, geo, ipm
1415 3 ixr(1,nf1), x, table, xdp,
1417 5 flg_kj2, vr, ar, v,
1418 6 dt2t, neltst, ityptst, stifn,
1419 7 stifr, ms, in, fsky,
1420 8 iadr, sensors , offset, anin,
1421 9 partsav, ipartr(nf1), tani(k1), fr_wave,
1422 a bufmat, bufgeo, pm, rby,
1423 b fx(1,1), fx(1,2), fy(1,1), fy(1,2),
1424 c fz(1,1), fz(1,2), mx(1,1), mx(1,2),
1425 d my(1,1), my(1,2), mz(1,1), mz(1,2),
1426 e gresav, grth, igrth(off_igrth+nf1), msrt(nf1),
1427 f dmelrt(nf1), flag_slipring_update, flag_retractor_update,h3d_data,
1428 g jsms, igre, nft, preload1
1429 h stf_f, stf, sanin, iresp,
1433 1 elbuf_tab(ng), jft, jlt, nel,
1434 2 mtn, igeo, geo, ixr(1,nf1),
1436 4 npc, tf, skew, flg_kj2,
1438 6 neltst, ityptst, stifn, stifr,
1439 7 ms, in, fsky, iadr,
1440 8 sensors , offset, anin, partsav,
1441 9 ipartr(nf1), tani(k1), fr_wave, bufmat,
1442 a bufgeo, pm, rby, fx(1,1),
1443 b fx(1,2), fy(1,1), fy(1,2), fz(1,1),
1444 c fz(1,2), mx(1,1), mx(1,2), my(1,1),
1445 d my(1,2), mz(1,1), mz(1,2), gresav,
1446 e grth, igrth(off_igrth+nf1),msrt(nf1), dmelrt(nf1),
1447 f itask, h3d_data, jsms, nft,
1448 g iad, igre, preload1 , stf_f ,
1449 h stf, sanin, iresp, impl_s,
1456 n=ninter+nrwall+nrbody
1459 k2=k0+30+nstrf(k0+14)
1460 k8=k0+30+nstrf(k0+14)+nstrf(k0+6)
1461 1 +2*nstrf(k0+7)+2*nstrf(k0+8)+2*nstrf(k0+9)
1462 2 +2*nstrf(k0+10)+2*nstrf(k0+11)
1465 IF (sensors%STABSEN > 0) isect=sensors%TABSENSOR(i+1)-sensors%TABSENSOR(i)
1469 pfbsav6 => sensors%FSAV(1,1,isect)
1472 CALL section_r(jft,jlt,nft,nstrf(k0+12),nstrf(k0+3),
1473 2 nstrf(k0+4),nstrf(k0+5),nstrf(k8),x,v,vr,fsav(1,n),
1474 3 ixr ,fani(1,1+2*(i-1)), secfcum(1,1,i) ,
1475 4 fx ,fy ,fz ,mx ,my, mz,
1476 5 nstrf(k0),nstrf(k0+14),nstrf(k0+26),nstrf(k0+6),
1478 8 xsec(1,1,i), pfbsav6,iparsens)
1483 ELSEIF(ity==101)
THEN
1484 off_igrth = numels+numelq+numelc+numelt+numelp+
1488 nctrl = iparg(75,ng)
1489 px = igeo(41,iparg(62,ng))
1490 py = igeo(42,iparg(62,ng))
1491 pz = igeo(43,iparg(62,ng))
1493 IF (isens_energy == 1 .AND. ipri == 0)
1497 1 elbuf_tab, ng, jft, jlt,
1498 2 nft, nel, ixs, pm,
1499 3 geo, ipm, igeo, x,
1502 6 tf, npc, bufmat, iparg,
1503 7 iparts(nf1), partsav, nloc_dmg, fsky,
1504 8 fr_wave, iads, eani, stifn,
1505 9 stifr, fx, fy, fz,
1506 a ifailure, mtn, igtyp, npt,
1507 b jsms, mssa(nf1), dmels(nf1), kxig3d,
1508 c ixig3d, knot, nctrl, wige,
1509 d wa, val2, dt2t, neltst,
1510 e ityptst, offset, table, iexpan,
1511 f ale_connect, fv, itask, ipri,
1512 g px, py, pz, knotlocpc,
1513 h knotlocel, gresav, grth, igrth(off_igrth+nf1),
1514 i mat_elem, ibid, ismstr, jale,
1515 j jeul, jlag, jcvt, jplasol,
1516 k jsph, snpc, stf, sbufmat,
1517 l svis, nsvois, idtmins, iresp,
1518 m idel7ng, idel7nok, userl_avail,
1519 . impl_s, idyna, dt, glob_therm,
1527 IF(nitsche > 0 .AND. ity == 1)
THEN
1528 gbuf => elbuf_tab(ng)%GBUF
1532 IF(gbuf%OFF(i) > 0)
THEN
1533 stressmean(j,nft + i) = gbuf%SIG(nel*(j-1)+i)
1535 stressmean(j,nft + i
1541 IF (jcvt /= 0 .AND. jhbe /= 16)
THEN
1545 IF(jcvt==2.AND.jhbe/=14)
THEN
1546 gama(1)=gbuf%GAMA(i + i)
1547 gama(2)=gbuf%GAMA(nel + i)
1548 gama(3)=gbuf%GAMA(2*nel + i)
1549 gama(4)=gbuf%GAMA(3*nel + i)
1550 gama(5)=gbuf%GAMA(4*nel + i)
1551 gama(6)=gbuf%GAMA(5*nel + i)
1561 1 x, ixs(1,nn), jcvt, stressmean(1,nn),
1562 2 gama, jhbe, igtyp, isorth)
1569 DEALLOCATE(fx,fy,fz,mx,my,mz,jfac)