40 1 X ,IRECT ,STF ,IXS ,PM ,
41 2 GEO ,NRT ,IXC ,STFN ,NSEG ,
42 3 LNSV ,NINT ,NSN ,NSV ,SLSFAC,
43 4 NTY ,GAP ,NOINT ,IXTG ,IR ,
44 5 KNOD2ELS ,KNOD2ELC ,KNOD2ELTG ,NOD2ELS ,NOD2ELC ,
45 6 NOD2ELTG ,IGRSURF ,THK ,IXS10 ,
46 7 IXS16 ,IXS20 ,ID,TITR ,GAPN ,STF8 ,
47 8 DEPTH ,FMAX ,IGEO ,FILLSOL ,PM_STACK,
55 use element_mod ,
only :nixs,nixc,nixtg
59#include "implicit_f.inc"
69 INTEGER NRT, NINT, NSN, NTY, NOINT, IR
72 INTEGER IRECT(4,*), IXS(NIXS,*), IXC(NIXC,*),
73 . NSV(*), (NIXTG,*), NSEG(*), LNSV(*),
74 . KNOD2ELS(*), KNOD2ELC(*), KNOD2ELTG(*), NOD2ELS(*), NOD2ELC(*),
75 . NOD2ELTG(*),IXS10(*), IXS16(*), IXS20(*),
76 . IGEO(NPROPGI,*),IWORKSH(3,*)
78 . x(3,*), stf(*), pm(npropm,*), geo(npropg,*), stfn(*),thk(*),
79 . gapn(*),stf8(*) ,fmax, depth, fillsol(*),pm_stack
81 CHARACTER(LEN=NCHARTITLE) :: TITR
82 TYPE (SURF_) :: IGRSURF
86 INTEGER NDX, I, J, INRT, NELS, MT, NELC,
87 . MG, NUM, NPT, LL, NELTG,IGTYP,IPGMAT,IGMAT,
116 CALL inelts(x ,irect,ixs ,nint,nels ,
117 . inrt ,
area ,noint,ir ,igrsurf%ELTYP,
129 stf(i)=slsfac*fillsol(nels)*
area*
area*pm(32,mt)/vol
130 stfmin =
min(stfmin,stf(i))
134 . msgtype=msgwarning,
135 . anmode=aninfo_blind_2,
144 . msgtype=msgwarning,
145 . anmode=aninfo_blind_2,
155 CALL ineltc(nelc ,neltg ,inrt ,igrsurf%ELTYP, igrsurf%ELEM)
163 IF(igtyp == 17 .OR. igtyp == 51 .OR. igtyp ==52) dx = thk(numelc + neltg)
164 IF (nty==8) gapn(i) = dx/two
168 IF( igtyp == 11 .AND. igmat > 0)
THEN
169 stf(i)=slsfac*dx*geo(ipgmat + 2 ,mg)
170 stfmin =
min(stfmin,stf(i))
171 ELSEIF(igtyp == 52 .OR.
172 . ((igtyp == 17 .OR. igtyp == 51) .AND. igmat > 0))
THEN
173 isubstack = iworksh(3,numelc+neltg)
174 stf(i)=slsfac*dx*pm_stack(2,isubstack)
175 stfmin =
min(stfmin,stf(i))
177 stf(i)=slsfac*dx*pm(20,mt)
178 stfmin =
min(stfmin,stf(i))
183 . msgtype=msgwarning,
184 . anmode=aninfo_blind_2,
187 . i2=ixtg(nixtg,neltg),
193 . msgtype=msgwarning,
194 . anmode=aninfo_blind_2,
197 . i2=ixtg(nixtg,neltg),
209 IF(igtyp == 17 .OR. igtyp == 51) dx = thk(nelc)
210 IF (nty==8) gapn(i) = dx/two
214 IF(igtyp == 11 .AND. igmat > 0)
THEN
215 stf(i)=slsfac*dx*geo(ipgmat + 2 ,mg)
216 stfmin =
min(stfmin,stf(i))
217 ELSEIF(igtyp == 52 .OR.
218 . ((igtyp == 17 .OR. igtyp == 51) .AND. igmat > 0))
THEN
219 isubstack = iworksh(3,nelc)
220 stf(i)=slsfac*dx*pm_stack(2 ,isubstack)
221 stfmin =
min(stfmin,stf(i))
223 stf(i)=slsfac*dx*pm(20,mt)
224 stfmin =
min(stfmin,stf(i))
229 . msgtype=msgwarning,
230 . anmode=aninfo_blind_2,
239 . msgtype=msgwarning,
240 . anmode=aninfo_blind_2,
254 CALL insol3(x,irect,ixs,nint,nels,inrt,
255 .
area,noint,knod2els ,nod2els ,ir ,ixs10,
267 stf(i)=slsfac*fillsol(nels)*
area*
area*pm(32,mt)/vol
268 stfmin =
min(stfmin,stf(i))
272 . msgtype=msgwarning,
273 . anmode=aninfo_blind_2,
282 . msgtype=msgwarning,
283 . anmode=aninfo_blind_2,
295 CALL incoq3(irect,ixc ,ixtg ,nint ,nelc ,
296 . neltg,inrt,geo ,pm ,knod2elc ,
297 . knod2eltg ,nod2elc ,nod2eltg,thk,nty,igeo,
298 . pm_stack , iworksh)
305 IF(igtyp == 17 .OR. igtyp == 51) dx = thk(nelc)
306 IF (nty==8) gapn(i) = dx/two
310 IF(igtyp == 11 .AND. igmat > 0)
THEN
311 stf(i)=slsfac*dx*geo(ipgmat + 2 ,mg)
312 stfmin =
min(stfmin,stf(i))
313 ELSEIF(igtyp == 52 .OR.
314 . ((igtyp == 17 .OR. igtyp == 51) .AND. igmat > 0))
THEN
315 isubstack = iworksh(3,nelc)
316 stf(i)=slsfac*dx*pm_stack(2 ,isubstack)
317 stfmin =
min(stfmin,stf(i))
319 stf(i)=slsfac*dx*pm(20,mt)
320 stfmin =
min(stfmin,stf(i))
325 . msgtype=msgwarning,
326 . anmode=aninfo_blind_2,
329 . i2=ixtg(nixtg,neltg),
335 . msgtype=msgwarning,
336 . anmode=aninfo_blind_2,
339 . i2=ixtg(nixtg,neltg),
350 IF(igtyp == 17 .OR. igtyp == 51) dx = thk(nelc)
351 IF (nty==8) gapn(i) = dx/two
355 IF(igtyp == 11 .AND. igmat > 0)
THEN
356 stf(i)=slsfac*dx*geo(ipgmat + 2 ,mg)
357 stfmin =
min(stfmin,stf(i))
358 ELSEIF(igtyp == 52 .OR.
359 . ((igtyp == 17 .OR. igtyp == 51) .AND. igmat > 0))
THEN
360 isubstack = iworksh(3,nelc)
361 stf(i)=slsfac*dx*pm_stack(2 ,isubstack)
362 stfmin =
min(stfmin,stf(i))
364 stf(i)=slsfac*dx*pm(20,mt)
365 stfmin =
min(stfmin,stf(i))
370 . msgtype=msgwarning,
371 . anmode=aninfo_blind_2,
380 . msgtype=msgwarning,
381 . anmode=aninfo_blind_2,
391 IF(nels+nelc+neltg==0)
THEN
394 . msgtype=msgwarning,
395 . anmode=aninfo_blind_2,
402 . msgtype=msgwarning,
403 . anmode=aninfo_blind_2,
421 . msgtype=msgwarning,
422 . anmode=aninfo_blind_2,
428 IF(slope>stfmin.AND.stfmin/=zero)
THEN
433 . msgtype=msgwarning,
434 . anmode=aninfo_blind_2,
452 num=nseg(j+1)-nseg(j)
456 stfn(j)=stfn(j)+fourth*stf(ll)
subroutine i3sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, stfn, nseg, lnsv, nint, nsn, nsv, slsfac, nty, gap, noint, ixtg, ir, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, thk, ixs10, ixs16, ixs20, id, titr, gapn, stf8, depth, fmax, igeo, fillsol, pm_stack, iworksh)
subroutine inint3(inscr, x, ixs, ixc, pm, geo, ipari, nin, itab, ms, mwa, rwa, ixtg, iwrn, ikine, ixt, ixp, ixr, nelemint, iddlevel, ifiend, ale_connectivity, nsnet, nmnet, igrbric, iwcont, nsnt, nmnt, nsn2t, nmn2t, iwcin2, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, ikine1, ielem21, sh4tree, sh3tree, ipart, ipartc, iparttg, thk, thk_part, nod2el1d, knod2el1d, ixs10, i_mem, resort, inter_cand, ixs16, ixs20, id, titr, iremnode, nremnode, iparts, kxx, ixx, igeo, intercep, lelx, intbuf_tab, fillsol, stack, iworksh, kxig3d, ixig3d, tagprt_fric, intbuf_fric_tab, ipartt, ipartp, ipartx, ipartr, nsn_multi_connec, t2_add_connec, t2_nb_connec, t2_connec, nom_opt, icode, iskew, iremnode_edg, s_append_array, x_append, mass_append, n2d, flag_removed_node, nspmd, inter_type2_number, elem_linked_to_segment, sinscr, sicode, sitab, nin25, flag_elem_inter25, multi_fvm, iresp)
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)