40 1 IXS10,IXS16,IXS20,X ,DR ,
41 2 WA,WAP0 ,IPARTS, IPART_STATE,
42 3 STAT_INDXS,IPART,SIZP0)
52#include "implicit_f.inc"
67#include "vect01_c.inc"
69#include "tabsiz_c.inc"
74 INTEGER IXS(NIXS,*),IXS10(6,*),IXS16(8,*),IXS20(12,*),
75 . IPARG(NPARG,*),IPM(NPROPMI,*),IGEO(NPROPGI,*),
76 . iparts(*), ipart_state(*), stat_indxs(*),ipart(lipart1,*)
79 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP),
TARGET :: ELBUF_TAB
80 double precision WA(*),WAP0(*)
84 INTEGER I,N,J,K,II,JJ,LEN,NLAY,NPTR,NPTS,NPTT,ISOLNOD0,
85 . ISOLNOD,ISTRAIN,NG, NEL, MLW, ID, IPRT0, IPRT,IE,
86 . NPG,IPG,IPT,IL,IR,IS,IT,IPID,PID,IOFF,KK(8),NC(20),
88 INTEGER,
DIMENSION(:),
ALLOCATABLE :: PTWA
89 INTEGER,
DIMENSION(:),
ALLOCATABLE :: PTWA_P0
90 my_real X0(MVSIZ,20), Y0(MVSIZ,20), Z0(MVSIZ,20)
91 CHARACTER*100 DELIMIT,LINE
93 ./
'#---1----|----2----|----3----|----4----|----5----|----6----|'/
95 ./
'----7----|----8----|----9----|----10---|'/
97 TYPE(l_bufel_) ,
POINTER :: LBUF
98 TYPE(G_BUFEL_) ,
POINTER :: GBUF
100 CALL my_alloc(ptwa,stat_numels)
101 ALLOCATE(ptwa_p0(0:
max(1,stat_numels_g)))
104 IF(stat_numels==0)
GOTO 200
110 isolnod = iparg(28,ng)
115 istrain = iparg(44,ng)
125 2 mlw ,nel ,nft ,iad ,ity ,
126 3 npt ,jale ,ismstr ,jeul ,jtur ,
127 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
128 5 nvaux ,jpor ,jcvt ,jclose ,jplasol ,
129 6 irep ,iint ,igtyp ,israt ,isrot ,
130 7 icsen ,isorth ,isorthg ,ifailure,jsms )
131 IF (jhbe==17.AND.iint==2) jhbe = 18
132 IF (jhbe==1.AND.iint==3) jhbe = 5
135 IF (isolnod0==4 .AND. isrot==1)
THEN
139 gbuf => elbuf_tab(ng)%GBUF
143 IF(ismstr==1.OR.ismstr>=10)
THEN
144 CALL getconfig(lft,llt,isolnod,ismstr,x0,y0,z0,
150 IF(ipart_state(iprt)==0)cycle
152 wa(jj+ 2)= ixs(nixs,n)
156 wa(jj+ 6)= gbuf%OFF(i)
159 IF(ismstr==1.OR.ismstr>=10)
THEN
164 ELSEIF(isolnod0== 4)
THEN
169 ELSEIF(isolnod == 6)
THEN
176 ELSEIF(isolnod0== 10)
THEN
183 nc(j+4) = ixs10(j,nn1)
185 ELSEIF(isolnod == 16)
THEN
187 nn1 = n - (numels8+numels10+numels20)
189 nc(j+8) = ixs16(j,nn1)
191 ELSEIF(isolnod == 20)
THEN
193 nn1 = n - (numels8+numels10)
195 nc(j+8) = ixs20(j,nn1)
242 IF(ispmd == 0.AND.len>0)
THEN
251 ioff = nint(wap0(j + 6))
252 iprt = nint(wap0(j + 1))
253 ismstr = nint(wap0(j + 5))
254 IF (ioff >= 1.AND.(ismstr==1.OR.ismstr>=10))
THEN
255 IF(iprt /= iprt0)
THEN
256 IF (izipstrs == 0)
THEN
257 WRITE(iugeo,
'(A)') delimit
258 WRITE(iugeo,
'(A)')
'/INIBRI/EREF'
260 .
'#------------------------ REPEAT -------------------------'
262 .
'# BRICKID ISOLNOD ISOLID ISMSTR NSROT'
264 .
'# REPEAT K=1,ISOLNOD ',
267 .
'#------------------------ REPEAT -------------------------'
268 WRITE(iugeo,
'(A)') delimit
270 WRITE(line,
'(A)') delimit
272 WRITE(line,
'(A)')
'/INIBRI/EREF'
275 .
'#------------------------ REPEAT -------------------------'
278 .
'# BRICKID ISOLNOD ISOLID ISMSTR NSROT'
281 .
'# REPEAT K=1,ISOLNOD '
283 WRITE'(A)')
'# X, Y, Z'
286 .
'# REPEAT K=1,NSROT '
288 WRITE(line,
'(A)')
'# RX, RY, RZ'
291 .
'#------------------------ REPEAT -------------------------'
293 WRITE(line,
'(A)') delimit
298 id = nint(wap0(j + 2))
299 isolnod = nint(wap0(j + 3))
300 jhbe = nint(wap0(j + 4))
301 nsrot = nint(wap0(j + 7))
305 IF (izipstrs == 0)
THEN
306 WRITE(iugeo,
'(I10,10X,4I10)') id,isolnod,jhbe,ismstr
308 WRITE(line,
'(I10,10X,4I10)') id,isolnod,jhbe,ismstr,nsrot
311 DO ipt = 1, isolnod+nsrot
312 IF (izipstrs == 0)
THEN
313 WRITE(iugeo,
'(1P3E20.13)')(wap0(j + k),k=1,3)
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)