39 SUBROUTINE fvbag0(MONVOL, VOLMON , X , SENSOR_TAB, V ,
40 . A , NPC , TF , NSENSOR ,
41 . FSAV , IFVMESH , ICONTACT , LGAUGE ,
42 . GAUGE , IGEO , GEO , PM , IPM,
43 . IPARG , IGROUPTG, IGROUPC , ELBUF_TAB , FEXT,
44 . FLAG , H3D_DATA, ITAB ,WEIGHT ,WFEXT, PYTHON)
61 USE python_funct_mod,
only : python_
65#include "implicit_f.inc"
74#include "tabsiz_c.inc"
78 INTEGER,
INTENT(IN) :: NSENSOR
79 INTEGER,
INTENT(IN) :: FLAG
81 INTEGER MONVOL(SMONVOL), NPC(SNPC),IFVMESH,ICONTACT(*), LGAUGE(3,NBGAUGE), IGEO(NPROPGI,NUMGEO)
82 INTEGER IPM(,NUMMAT), IPARG(NPARG,NGROUP)
83 INTEGER IGROUPTG(NUMELTG), IGROUPC(NUMELC)
84 my_real volmon(svolmon), x(3,numnod),v(3,numnod), a(3,numnod),
85 . tf(stf), fsav(nthvki,sfsav/nthvki), gauge(llgauge,nbgauge), geo(npropg,numgeo),
86 . pm(npropm,nummat), fext(3*numnod)
87 TYPE(elbuf_struct_),
DIMENSION(NGROUP) :: ELBUF_TAB
89 TYPE (SENSOR_STR_) ,
DIMENSION(NSENSOR) ,
INTENT(IN) :: SENSOR_TAB
90 INTEGER,
INTENT(IN) :: ITAB(NUMNOD), WEIGHT(NUMNOD)
91 DOUBLE PRECISION,
INTENT(INOUT) :: WFEXT
92 TYPE(python_) :: PYTHON
96 INTEGER N, ITYP, NNFV, NTRFV, NPOLH, IFV, INFO, IDONE
98INTEGER K1, K2, KIBJET, KIBHOL, KIBALE
99 INTEGER KK1, KK2, , KRBHOL, KRBALE
100 INTEGER NNS, NTG, NBA, NTGA, NNA, NNI, NTGI, , NTGT
101 INTEGER KI1, KI2, KI3, KI4, KI5
102 INTEGER , KR2, KR3, KR4, KR5, KR6, KR7, KR8, KR9
103 INTEGER KIA1, KIA2, KIA3, KIA4, KIA5, KIA6, KIA7, KIA8
104 INTEGER KRA1, KRA2, KRA3, KRA4, KRA5, KRA6, KRA7, KRA8
159 kibhol=kibjet+libagjet
160 kibale=kibhol+libaghol
164 krbhol=krbjet+lrbagjet
165 krbale=krbhol+lrbaghol
171 IF (ityp == 6.OR.ityp == 8)
THEN
172 ifv = monvol(k1 -1 +45)
174 iequi=monvol(k1-1+15)
175 IF(tt < volmon(kk1-1+49).AND.iequi >= 1)
THEN
177 nskip=mod(ncycle,iequi)
182 IF(nskip >= 1 .AND.
kmesh(ifv) > 1)
GO TO 100
184 idone=monvol(k1-1+57)
185 IF(idone == 1)
GO TO 100
189 iadjet=kibjet+monvol(k1+8)
190 radjet=krbjet+monvol(k1+9)
192 iadhol=kibhol+monvol(k1+11)
193 radhol=krbhol+monvol(k1+12)
201 ki1=kibale+monvol(k1-1+31)
206 kr1=krbale+monvol(k1-1+34)
216 nnfv= monvol(k1-1+46)
217 ntrfv=monvol(k1-1+47)
218 npolh=monvol(k1-1+49)
233 kra1=
min(svolmon, kr9 +nnt)
243 cfl_coef =
fvdata(ifv)%CFL_COEF
245 cfl_coef = dtfac1(52)
247 IF(flag == 1 .AND. nskip < 1)
THEN
248 IF (monvol(k1+74-1) >= 0)
THEN
250 1 nns ,ntg ,monvol(ki1) , monvol(ki2) ,njet ,
251 2 monvol(iadjet) ,volmon(radjet) ,nvent,monvol(iadhol), volmon(radhol) ,
252 3 volmon(kr1) ,volmon(kr2) ,volmon(kr3) , volmon(kr4) ,volmon(kr9) ,
253 4 x ,v ,a , nsensor ,sensor_tab ,
254 5 fsav(1,n) ,npc ,tf , monvol(k1) ,volmon(kk1) ,
259 a
fvdata(ifv)%IFVPADR ,info ,nnfv , ntrfv , ifv ,
262 d monvol(ki3) ,volmon(kr5) ,icontact ,
fvdata(ifv)%IDPOLH ,
263 e volmon(kr6) ,volmon(kr7) ,monvol(kia4) , monvol(kia5) , monvol(kia6) ,
264 f volmon(kra1) ,volmon(kra2) ,volmon(kra3) , volmon(kra4) , monvol(kia7) ,
265 g nna ,ntga ,
fvdata(ifv)%IBPOLH ,
fvdata(ifv)%DTPOLH , nnt ,
266 h ntgt ,volmon(kra5) ,volmon(kra6) , monvol
267 i lgauge ,gauge ,ityp , igeo,volmon(kra8) ,
268 j geo ,pm ,ipm ,
fvdata(ifv)%TPOLH , volmon(kr8) ,
270 l monvol(ki4) ,iparg ,monvol(ki5) ,
271 m igrouptg ,igroupc ,elbuf_tab , fext
272 n
fvdata(ifv)%PDISP_OLD ,
fvdata(ifv)%PDISP ,h3d_data , itab , wfext, python)
275 1 nns ,ntg, monvol(ki2) ,njet ,
fvdata(ifv)%NPOLY ,
fvdata(ifv)%LENH ,nba,
276 2 monvol(iadjet) ,volmon(radjet) ,nvent,monvol(iadhol), volmon(radhol),
277 3 volmon(kr1) ,volmon(kr2) ,volmon(kr3) , volmon(kr4) , volmon(kr9) ,
278 4 x ,v ,a , nsensor , sensor_tab ,
279 5 fsav(1,n) ,npc ,tf , monvol(k1) , volmon(kk1) ,
284 a
fvdata(ifv)%IFVPADR ,info ,nnfv
287 d monvol(ki3) ,volmon(kr5) ,icontact ,
fvdata(ifv)%IDPOLH ,
288 e volmon(kr6) ,volmon(kr7) ,monvol(kia4) , monvol(kia5),monvol(kia6),
289 f volmon(kra1) ,volmon(kra2) ,volmon(kra3) , volmon(kra4),monvol(kia7),
290 g nna ,ntga ,
fvdata(ifv)%IBPOLH ,
fvdata(ifv)%DTPOLH , nnt
291 h ntgt ,volmon(kra5) ,volmon(kra6) , monvol(kia8),volmon(kra7),
292 i ityp ,igeo,volmon(kra8) ,
293 j geo ,pm ,ipm ,
fvdata(ifv)%TPOLH , volmon(kr8),
295 l monvol(ki4) ,iparg ,monvol(ki5) ,
296 m igrouptg ,igroupc ,elbuf_tab, cfl_coef ,
297 n
fvdata(ifv)%PDISP_OLD ,
fvdata(ifv)%PDISP ,wfext, python)
299 ELSEIF (flag == 2)
THEN
300 CALL fvbag2(ifv , ityp , nna , nvent , njet ,
301 . monvol(k1), monvol(iadhol), volmon(radhol),
302 . x , volmon(kk1) , volmon(kra5) , monvol(kia8), volmon(radjet),
303 . a , lgauge , gauge , nnt , fext ,
304 . nskip , h3d_data , weight)
subroutine fv_up_switch(nn, nel, elem, njet, npoly, lenh, nba, ibagjet, rbagjet, nvent, ibaghol, rbaghol, p, rho, tk, u, sspk, x, v, a, nsensor, sensor_tab, fsav, npc, tf, ivolu, rvolu, mpolh, qpolh, epolh, ppolh, rpolh, gpolh, npolh, ifvnod, rfvnod, ifvtri, ifvpoly, ifvtadr, ifvpolh, ifvpadr, info, nns, nntr, ifv, npolha, dlh, cpapolh, cpbpolh, cpcpolh, rmwpolh, itagel, elsini, icontact, idpolh, elfmass, elfvel, ibufa, elema, tagela, pa, rhoa, tka, ua, brna, nna, ntga, ibpolh, dtpolh, nnt, nelt, xxxa, vvva, ncona, porosity, ityp, igeo, sspka, geo, pm, ipm, tpolh, elfehpy, cpdpolh, cpepolh, cpfpolh, eltg, iparg, mattg, igrouptg, igroupc, elbuf_tab, cfl_coef, pdisp_old, pdisp, wfext, python)
subroutine fvbag1(nn, nel, ibuf, elem, njet, ibagjet, rbagjet, nvent, ibaghol, rbaghol, p, rho, tk, u, sspk, x, v, a, nsensor, sensor_tab, fsav, npc, tf, ivolu, rvolu, mpolh, qpolh, epolh, centroid_polh, ppolh, rpolh, gpolh, ssppolh, npolh, ifvnod, rfvnod, ifvtri, ifvpoly, ifvtadr, ifvpolh, ifvpadr, info, nns, nntr, ifv, npolha, dlh, cpapolh, cpbpolh, cpcpolh, rmwpolh, itagel, elsini, icontact, idpolh, elfmass, elfvel, ibufa, elema, tagela, pa, rhoa, tka, ua, brna, nna, ntga, ibpolh, dtpolh, nnt, nelt, xxxa, vvva, ncona, porosity, lgauge, gauge, ityp, igeo, sspka, geo, pm, ipm, tpolh, elfehpy, cpdpolh, cpepolh, cpfpolh, eltg, iparg, mattg, igrouptg, igroupc, elbuf_tab, fext, cfl_coef, pdisp_old, pdisp, h3d_data, itab, wfext, python)
subroutine resol(timers, element, nodes, coupling, af, iaf, iskwn, neth, ipart, nom_opt, kxx, ixx, ixtg, ixs, ixq, ixt, ixp, ixr, ifill, mat_elem, ims, npc, ibcl, ibfv, idum, las, laccelm, nnlink, lnlink, iparg, dd_iad, igrv, iexlnk, kinet, ipari, nprw, iconx, npby, lpby, lrivet, nstrf, ljoint, nodpor, monvol, ilink, llink, linale, neflsw, nnflsw, icut, cluster, itask, inoise, thke, damp, pm, skews, geo, eani, bufmat, bufgeo, bufsf, w, veul, fill, dfill, alph, wb, dsave, asave, msnf, tf, forc, vel, fsav, fzero, xlas, accelm, agrv, fr_wave, failwave, parts0, elbuf, rwbuf, sensors, rwsav, rby, rivet, secbuf, volmon, lambda, wa, fv, partsav, uwa, val2, phi, segvar, r, crflsw, flsw, fani, xcut, anin, tani, secfcum, bufnois, idata, rdata, iframe, kxsp, ixsp, nod2sp, ispsym, ispcond, xframe, spbuf, xspsym, vspsym, pv, fsavd, ibvel, lbvel, wasph, w16, isphio, lprtsph, lonfsph, vsphio, fbvel, lagbuf, ibcslag, iactiv, dampr, gjbufi, gjbufr, rbmpc, ibmpc, sphveln, nbrcvois, nbsdvois, lnrcvois, lnsdvois, nercvois, nesdvois, lercvois, lesdvois, npsegcom, lsegcom, nporgeo, ixtg1, npbyl, lpbyl, rbyl, igeo, ipm, madprt, madsh4, madsh3, madsol, madnod, madfail, iad_rby, fr_rby, fr_wall, iad_rby2, fr_rby2, iad_i2m, fr_i2m, addcni2, procni2, iadi2, fr_mv, iadmv2, fr_ll, fr_rl, iadcj, fr_cj, fr_sec, iad_sec, iad_cut, fr_cut, rg_cut, newfront, fr_mad, fxbipm, fxbrpm, fxbnod, fxbmod, fxbglm, fxbcpm, fxbcps, fxblm, fxbfls, fxbdls, fxbdep, fxbvit, fxbacc, fxbelm, fxbsig, fxbgrvi, fxbgrvr, eigipm, eigibuf, eigrpm, lnodpor, fr_i18, graphe, iflow, rflow, lgrav, dd_r2r, fasolfr, fr_lagf, llagf, lprw, icontact, rcontact, sh4tree, sh3tree, ipadmesh, padmesh, msc, mstg, inc, intg, ptg, iskwp, nskwp, isensp, nsensp, iaccp, naccp, ipart_state, acontact, pcontact, factiv, sh4trim, sh3trim, mscnd, incnd, ibfflux, fbfflux, rbym, irbym, lnrbym, icodrbym, ibcv, fconv, ibftemp, fbftemp, iad_rbym, fr_rbym, weight_rm, ms_ply, zi_ply, inod_pxfem, iel_pxfem, iadc_pxfem, adsky_pxfem, icode_ply, icodt_ply, iskew_ply, admsms, madclnod, nom_sect, mcpc, mcptg, dmelc, dmeltg, mssa, dmels, mstr, dmeltr, msp, dmelp, msrt, dmelrt, ibcr, fradia, res_sms, table, irbe2, lrbe2, iad_rbe2, fr_rbe2, phie, msf, procne_pxfem, iadsdp_pxfem, iadrcp_pxfem, icfield, lcfield, cfield, msz2, diag_sms, iloadp, lloadp, loadp, inod_crk, iel_crk, iadc_crk, adsky_crk, cne_crk, procne_crk, iadsdp_crk, iadrcp_crk, ibufssg_io, ibc_ply, dmint2, ibordnode, elbuf_tab, por, nodedge, iad_edge, fr_edge, fr_nbedge, crknodiad, lgauge, gauge, igaup, ngaup, nodlevxf, dd_r2r_elem, nodglobxfe, sph2sol, sol2sph, irst, dmsph, wagap, xfem_tab, elcutc, nodenr, kxfenod2elc, enrtag, rthbu f, kxig3d, ixig3d, knot, wige, wsmcomp, stack, cputime_mp_glob, cputime_mp, tab_ump, poin_ump, sol2sph_typ, irunn_bis, addcsrect, iad_frnor, fr_nor, procnor, iad_fredg, fr_edg, drape_sh4n, drape_sh3n, tab_mat, nativ0_sms, multi_fvm, segquadfr, ms_2d, h3d_data, subsets, igrnod, igrbric, igrquad, igrsh4n, igrsh3n, igrtruss, igrbeam, igrspring, igrpart, igrsurf, forneqs, nloc_dmg, iskwp_l, knotlocpc, knotlocel, pinch_data, tag_skins6, ale_connectivity, xcell, xface, ne_nercvois, ne_nesdvois, ne_lercvois, ne_lesdvois, ibcscyc, lbcscyc, t_monvol, id_global_vois, face_vois, dynain_data, fcont_max, ebcs_tab, diffusion, kloadpinter, loadpinter, dgaploadint, drapeg, user_windows, output, interfaces, dt, loads, python, dpl0cld, vel0cld, ndamp_vrel, id_damp_vrel, fr_damp_vrel, ndamp_vrel_rbyg, names_and_titles, unitab, liflow, lrflow, glob_therm, pblast, rbe3)