38 SUBROUTINE fxbyfor(FXBIPM, FXBRPM, FXBNOD , FXBMOD , FXBGLM ,
39 . FXBCPM, FXBCPS, FXBLM , FXBFLS , FXBDLS ,
40 . FXBDEP, FXBVIT, FXBACC , A , AR ,
41 . X , FXBMVN, FXBMCD , FXBSE , FXBSV ,
42 . FXBELM, FXBSIG, ELBUF , PARTSAV , ELBUF_TAB,
43 . FSAV , FXBFP , FXBEFW , FXBFC , D ,
44 . DT2T , ITYPTST, NELTST , FXBGRVI , FXBGRVR,
45 . IGRV , NPC , TF , FXBGRP , FXBGRW ,
46 . IPARG , NSENSOR,SENSOR_TAB, IAD_ELEM, FR_ELEM,
51 USE python_funct_mod,
ONLY : python_
58#include "implicit_f.inc"
75 INTEGER ,
INTENT(IN) :: NSENSOR
76 INTEGER FXBIPM(NBIPM,*), FXBNOD(*), FXBELM(*), ITYPTST, NELTST,
77 . FXBGRVI(*), IGRV(NIGRV,*), NPC(*), IPARG(NPARG,*),
78 . IAD_ELEM(2,*), FR_ELEM(*)
80 . (*), FXBMOD(*), FXBGLM(*), FXBCPM(*), FXBCPS(*),
81 . FXBLM(*), FXBFLS(*), FXBDLS(*), FXBDEP(*), FXBVIT(*),
82 . FXBACC(*), A(3,*), AR(3,*), X(3,*), FXBMVN(*),
83 . FXBMCD(*), FXBSE(*), FXBSV(*), FXBSIG(*), ELBUF(*) ,
84 . partsav(*),fsav(nthvki,*), fxbfp(*),fxbefw(*),
85 . fxbfc(*), d(3,*), dt2t, fxbgrvr(*), tf(*), fxbgrp
86 . fxbgrw(*), agrv(lfacgrv,*)
87 TYPE (ELBUF_STRUCT_),
DIMENSION (NGROUP) :: ELBUF_TAB
88 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) :: SENSOR_TAB
89 TYPE(python_) :: python
93 INTEGER NFX,ANOD,AMOD,AGLM,ACP,ALM,AFLS,ADLS,AVAR,ARPM,
94 . NME,NMOD,AMCD,ASE,ITN,NCYCLP1,AELM,ASIG,N2,NN2,
95 . AGRVI,AGRVR,NLGRAV,NSN,I,PMAIN
96 my_real mfextp(lenvar)
97 INTEGER NSNT, NMMAX, IAD(NFXBODY), ANOD2, J
98 my_real,
DIMENSION(:,:),
ALLOCATABLE :: fskyfxb
100 n2=ninter+nrwall+nrbody+nsect+njoint+nrbag+nvolu
104 IF((ncyclp1/ncrst)*ncrst==ncyclp1.OR.mrest/=0) itn=0
115 nmmax=
max(nmmax,nme+nmod)
119 ALLOCATE(fskyfxb(nsnt,1+nmmax))
126 ALLOCATE(fskyfxb(0,0))
138 anod2=anod+fxbipm(3,nfx)
139 IF (nsn+fxbipm(3,nfx)>0)
141 .fxbipm(1,nfx),fxbrpm(arpm),fxbnod(anod),fxbmod(amod),fxbdep(avar),
142 .fxbvit(avar) ,fxbacc(avar),a ,ar ,nme ,
143 .nmod ,itn ,fxbelm ,fxbsig ,elbuf ,
144 .partsav ,x ,d ,iparg ,nfx ,
145 .nsn ,mfextp(avar),iad_elem ,fr_elem ,nsnt ,
146 .fskyfxb ,iad(nfx) ,fxbnod(anod2),elbuf_tab )
169 nlgrav=fxbipm(25,nfx)
173 IF (ispmd==pmain)
THEN
174 IF (dt2t>dtfac1(11)*fxbrpm(arpm))
THEN
175 dt2t=dtfac1(11)*fxbrpm
180 .fxbipm(1,nfx),fxbrpm(arpm),fxbglm(aglm),fxbcpm(acp) ,fxbcps
181 .fxblm(alm) ,fxbfls(afls),fxbdls(adls),fxbdep(avar),fxbvit(avar),
182 .nme ,nmod ,fxbmvn(acp) ,fxbmcd(amcd),fxbse(ase) ,
183 .fxbsv(alm) ,fsav(1,nn2) ,fxbfp(avar) ,fxbefw(nfx
184 .fxbgrvi(agrvi),fxbgrvr(agrvr),nlgrav ,igrv ,npc ,
185 .tf ,fxbgrp(avar),fxbgrw(nfx) ,sensor_tab ,nsensor ,
186 .mfextp(avar) ,agrv ,python )
subroutine fxbodfp2(fxbipm, fxbrpm, fxbglm, fxbcpm, fxbcps, fxblm, fxbfls, fxbdls, fxbdep, fxbvit, nme, nmod, mvn, mcd, se, sv, fsav, fxbfp, wfext, fxbfc, fxbgrvi, fxbgrvr, nlgrav, igrv, npc, tf, fxbgrp, tfgrav, sensor_tab, nsensor, mfext, agrv, python)
subroutine fxbodfp1(fxbipm, fxbrpm, fxbnod, fxbmod, fxbdep, fxbvit, fxbacc, a, ar, nme, nmod, itn, fxbelm, fxbsig, elbuf, partsav, x, d, iparg, nfx, nsn, mfext, iad_elem, fr_elem, nsnt, fskyfxb, iadn, iadsky, elbuf_tab)
subroutine fxbyfor(fxbipm, fxbrpm, fxbnod, fxbmod, fxbglm, fxbcpm, fxbcps, fxblm, fxbfls, fxbdls, fxbdep, fxbvit, fxbacc, a, ar, x, fxbmvn, fxbmcd, fxbse, fxbsv, fxbelm, fxbsig, elbuf, partsav, elbuf_tab, fsav, fxbfp, fxbefw, fxbfc, d, dt2t, ityptst, neltst, fxbgrvi, fxbgrvr, igrv, npc, tf, fxbgrp, fxbgrw, iparg, nsensor, sensor_tab, iad_elem, fr_elem, agrv, python)