120
121
122
124 USE intbufdef_mod
128 USE intbuf_fric_mod
137 USE sensor_mod
139 USE multi_fvm_mod
140 USE ebcs_mod
144 USE output_mod
145 USE mat_elem_mod
146 USE defaults_mod
148 use glob_therm_mod
149 USE pblast_mod
150 use element_mod , only : nixs,nixq,nixc,nixt,nixp,nixr,nixtg
151
152
153
154#include "implicit_f.inc"
155
156
157
158#include "com01_c.inc"
159#include "com04_c.inc"
160#include "lagmult.inc"
161#include "param_c.inc"
162#include "scr03_c.inc"
163#include "scr17_c.inc"
164#include "scr23_c.inc"
165#include "tabsiz_c.inc"
166#include "sphcom.inc"
167#include "com_xfem1.inc"
168#include "fxbcom.inc"
169
170
171
172 INTEGER, INTENT(IN) :: NOM_OPT(LNOPT1,SNOM_OPT1), INOM_OPT(SINOM_OPT)
173 INTEGER, INTENT(IN) :: ITAB(NUMNOD),IXR_KJ(5,*)
174 INTEGER, INTENT(IN) :: NNLINK(10,SNNLINK), LNLINK(SLNLINK)
175 TYPE (CLUSTER_) ,DIMENSION(NCLUSTER) :: CLUSTERS
176 INTEGER,INTENT(IN) :: NOM_SECT(SNOM_SECT),NSTRF(SNSTRF),IGEO_STACK(4* NPT_STACK+2,NS_STACK)
177 my_real,
INTENT(IN) :: secbuf(ssecbuf)
178 TYPE(MONVOL_STRUCT_), DIMENSION(NVOLU), INTENT(IN) :: T_MONVOL
179 TYPE(MONVOL_METADATA_), INTENT(IN) :: T_MONVOL_METADATA
180 TYPE(SUBSET_), DIMENSION(NSUBS), INTENT(IN) :: SUBSETS
181 TYPE(DETONATORS_STRUCT_) :: DETONATORS
183 INTEGER, INTENT(IN) :: LAS(*)
184 TYPE (DRAPE_) :: DRAPE(NUMELC_DRAPE + NUMELTG_DRAPE)
185 TYPE (DRAPEG_) :: DRAPEG
186 INTEGER, INTENT(IN) :: IACTIV(LACTIV,*)
187 my_real,
INTENT(IN) :: factiv(lractiv,*),geo_stack(6*npt_stack+1,ns_stack),pm_stack(20,ns_stack)
188 TYPE (UNIT_TYPE_) ::UNITAB
189 my_real,
INTENT(IN) :: xyzref(sx)
190 TYPE (SENSORS_) ,INTENT(IN) ::
191 TYPE(FUNC2D_STRUCT), DIMENSION(NFUNC2D), INTENT(IN) :: FUNC2D
192 TYPE (INICRACK_) , DIMENSION(NINICRACK) :: INICRACK
193 INTEGER, INTENT(IN) :: LLINAL
194 INTEGER, DIMENSION(LLINAL), INTENT(IN) :: LINALE
195 my_real,
INTENT(IN) :: qp_rperturb(nperturb,4)
196 INTEGER, INTENT(IN) :: QP_IPERTURB(NPERTURB,6)
197 TYPE (FVM_INIVEL_STRUCT), DIMENSION(NINVEL), INTENT(IN) :: FVM_INIVEL
198 INTEGER, INTENT(IN) :: LGAUGE(3,NBGAUGE)
199 my_real,
INTENT(IN) :: gauge(llgauge,nbgauge)
200 INTEGER, INTENT(IN) :: KXX(NIXX,*)
201 INTEGER, INTENT(IN) :: IXX(*)
202 INTEGER, INTENT(IN) :: IXRI(4,*)
203 INTEGER, INTENT(IN) :: FXBIPM(NBIPM,NFXBODY),EIGIPM(*)
204 my_real,
INTENT(IN) :: eigrpm(*)
205 CHARACTER, DIMENSION(NFXBODY) :: FXBFILE_TAB*2148
206 INTEGER ISPHIO(NISPHIO,NSPHIO)
208 . vsphio(svsphio)
209 TYPE(t_ebcs_tab), INTENT(IN) :: EBCS_TAB
210 TYPE(INIMAP1D_STRUCT), DIMENSION(NINIMAP1D), INTENT(IN) :: INIMAP1D
211 TYPE(INIMAP2D_STRUCT), DIMENSION(NINIMAP2D), INTENT(IN) :: INIMAP2D
212 INTEGER, INTENT(IN) :: NSIGSH,NSIGI,NSIGS,NSIGBEAM,NSIGTRUSS,NSIGRS
213 my_real,
INTENT(IN) :: sigsh(
max(1,nsigsh),*),sigsp(nsigi,*),sigi(nsigs,*),
214 . sigbeam(nsigbeam,*),sigtruss(nsigtruss,*),
215 . sigrs(nsigrs,*)
216 INTEGER, INTENT(IN) :: IMERGE(*),MERGE_NODE_TAB(*),NMERGE_TOT
217 my_real,
INTENT(IN) :: merge_node_tol(*)
218 INTEGER,INTENT(IN) :: IPARG(NPARG,NGROUP)
219 INTEGER, INTENT(IN) :: IBEAM_VECTOR(NUMELP)
220 my_real,
INTENT(IN) :: rbeam_vector(3,numelp)
221 INTEGER ,INTENT(IN) :: DAMP_RANGE_PART(NPART)
222 TYPE(USER_WINDOWS_),INTENT(IN) :: USER_WINDOWS
223 TYPE(OUTPUT_) ,INTENT(IN) :: OUTPUT
224 TYPE(MAT_ELEM_) ,INTENT(IN) :: MAT_ELEM
225 TYPE(DEFAULTS_) ,INTENT(IN) :: DEFAULTS
226 TYPE(glob_therm_) ,intent(in) :: glob_therm
227 TYPE(PBLAST_) ,INTENT(IN) :: PBLAST
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277 INTEGER, INTENT(IN) :: NIMPDISP,NIMPVEL,NIMPACC
278 INTEGER, INTENT(IN) :: IGEO(NPROPGI,NUMGEO),IPM(NPROPMI,NUMMAT)
279 INTEGER, INTENT(IN) :: NUMLOADP, ILOADP(SIZLOADP,NLOADP), LLOADP(NUMLOADP)
280 INTEGER, INTENT(IN) :: ICFIELD(SIZFIELD,NLOADC), LCFIELD(SLCFIELD)
281 INTEGER, INTENT(IN) :: IBCL(NIBCLD,NCONLD-NPRELD), IPRES(NIBCLD,NPRELD)
282 INTEGER, INTENT(IN) :: IGRV(NIGRV,NGRAV), LGRV(*)
283 INTEGER, INTENT(IN) :: NPBY(NNPBY,NRBYKIN), NPBYL(NNPBY,NRBYLAG), LPBY(*), LPBYL(*)
284 INTEGER, INTENT(IN) :: IBCR(GLOB_THERM%NIRADIA,GLOB_THERM%NUMRADIA)
285 INTEGER, INTENT(IN) :: IBCV(GLOB_THERM%NICONV,GLOB_THERM%NUMCONV)
286 INTEGER, INTENT(IN) :: IBFTEMP(GLOB_THERM%NIFT,GLOB_THERM%NFXTEMP)
287 INTEGER, INTENT(IN) :: IBFFLUX(GLOB_THERM%NITFLUX,GLOB_THERM%NFXFLUX)
288 INTEGER, INTENT(IN) :: IBFVEL(NIFV,NFXVEL)
289 INTEGER, INTENT(IN) :: ICODE(NUMNOD), ISKEW(NUMNOD)
290 INTEGER, INTENT(IN) :: IBCSLAG(5,NBCSLAG)
291 INTEGER, INTENT(IN) :: IPARI(NPARI,NINTER)
292 INTEGER, INTENT(IN) :: LACCELM(3, NACCELM)
293 INTEGER, INTENT(IN) :: ISKWN(LISKN,*)
294 INTEGER, INTENT(IN) :: NPFRICORTH , PFRICORTH(*) , IREPFORTH(*)
295 INTEGER, INTENT(IN) :: TAGXREF(NUMNOD),IXC(NIXC,*),IXTG(NIXTG,*),IXS(NIXS,*), IXS10(6,*),
296 . IXS16(8,*)
297 INTEGER, INTENT(IN) :: ISOLNOD(NUMELS),IXR(,*), R_SKEW(*),IXP(NIXP,*),IXT(NIXT,*),
298 . IXQ(NIXQ,*),KXSP(NISP,*),IPARTSP(*),IPARTX(*)
299 INTEGER, INTENT(IN) :: NPRW(NRWALL,NNPRW),LPRW(SLPRW)
300 INTEGER, INTENT(IN) :: ITHVAR(SITHVAR),
301 . IPART(LIPART1*(NPART+NTHPART)),
302 . IPARTTH(18*(NPART+NTHPART)),NTHGRPMX,IBCSCYC(*)
303 INTEGER, INTENT(IN) :: NPTS,NPC(*),IRBE3(*),LRBE3(*),IRBE2(*),LRBE2(*)
304 INTEGER, INTENT(IN) :: MGRBY(NMGRBY,SMGRBY)
305 INTEGER, INTENT(IN) :: ISPCOND(NISPCOND,*),LJOINT(*),GJBUFI(LKJNI,*)
306 INTEGER, INTENT(IN) :: IRAND(*)
307 INTEGER, INTENT(IN) :: IPRELOAD(3,*), (*)
308 INTEGER, INTENT(IN) :: IBMPC(NUMMPC),IBMPC2(LMPC),IBMPC3(),IBMPC4(LMPC)
309 INTEGER, INTENT(IN) :: IPADMESH(KIPADMESH,*)
310 INTEGER, INTENT(IN) :: SH4TREE(KSH4TREE,*), SH3TREE(KSH3TREE,*),
311 . SH4TRIM(*),SH3TRIM(*)
312 INTEGER, INTENT(IN) :: IEXMAD(*),IEXLNK(NR2R,*)
313
315 . geo(npropg,numgeo), bufgeo(*), pm(npropm,nummat), bufmat(*)
317 . loadp(lfacload,nloadp), cfield(lfacload
318 . forc(lfaccld,nconld-npreld), pres(lfaccld,npreld),
319 . agrv(lfacgrv,ngrav),preload(6,*)
320 my_real,
INTENT(IN) :: rby(nrby,nrbykin),rbyl(nrby,nrbylag),frbe3(sfrbe3)
321 my_real,
INTENT(IN) :: gjbufr(lkjnr,*),ms(*),in(*)
322 my_real,
INTENT(IN) :: fradia(glob_therm%LFACTHER,glob_therm%NUMRADIA)
323 my_real,
INTENT(IN) :: fconv(glob_therm%LFACTHER,glob_therm%NUMCONV)
324 my_real,
INTENT(IN) :: fbftemp(glob_therm%LFACTHER,glob_therm%NFXTEMP)
325 my_real,
INTENT(IN) :: fbfflux(glob_therm%LFACTHER,glob_therm%NFXFLUX)
326 my_real,
INTENT(IN) :: fbfvel(lfxvelr,nfxvel)
327 my_real,
INTENT(IN) :: v(3,numnod), vr(svr) ,
328 . w(sw)
330 . dampr(nrdamp,*)
332 . temp(numnod)
334 . accelm(llaccelm, naccelm)
336 . skew(lskew,*)
338 . xframe(nxframe,*)
341 my_real,
INTENT(IN) :: phiforth(*), vforth(3,*)
343 . xrefc(4,3,numelc),xreftg(3,3,numeltg),xrefs(8,3,numels8)
345 . rwbuf(nrwlp,nrwall)
347 . pld(*)
349 . x(3,numnod),
350 . thke(*),thkec(*),sh4ang(*),sh3ang(*)
352 . rtrans(ntransf,*)
354 . alea(*),xseed(*)
356 . rbmpc(srbmpc)
357
358 my_real,
INTENT(IN) :: bufsf(sbufsf)
359 INTEGER,INTENT(IN) :: SBUFSF_
360
361 my_real,
INTENT(IN) :: padmesh(kpadmesh,*)
362
363 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
364 TYPE (BOX_) ,DIMENSION(NBBOX) ,INTENT(IN) :: IBOX
365 TYPE (ADMAS_) ,DIMENSION(NODMAS) ,INTENT(IN) :: IPMAS
366 TYPE(INTBUF_FRIC_STRUCT_) INTBUF_FRIC_TAB(*)
367 TYPE(TTABLE) TABLE(*)
368
369 TYPE (SET_) , DIMENSION(NSETS) :: SET
370 TYPE(SUBMODEL_DATA),INTENT(IN)::LSUBMODEL(*)
371 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRNOD) :: IGRNOD
372 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRPART) :: IGRPART
373 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRBRIC) :: IGRBRIC
374 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRSHEL) :: IGRSH4N
375 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRSH3N) :: IGRSH3N
376 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRQUAD) :: IGRQUAD
377 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRBEAM) :: IGRBEAM
378 TYPE (GROUP_) , INTENT(IN), DIMENSION(NGRTRUS) :: IGRTRUSS
379 TYPE () , INTENT(IN), DIMENSION(NGRSPRI) :: IGRSPRING
380 TYPE (SURF_) , INTENT(IN), DIMENSION(NSURF) :: IGRSURF
381 TYPE (SURF_) , INTENT(IN), DIMENSION(NSLIN) :: IGRSLIN
382 INTEGER, INTENT(IN) :: LIFLOW, LRFLOW
383 INTEGER, DIMENSION(LIFLOW), INTENT(IN) :: IFLOW
384 my_real,
DIMENSION(LRFLOW),
INTENT(IN) :: rflow
385
386
387
388
389
390
391
392 IF (
doqa /= 1 )
RETURN
393
395
397 . pm_stack ,geo_stack ,igeo_stack)
398
400 1 nom_opt ,inom_opt ,itab ,v ,vr ,
401 2 w ,temp ,inicrack ,fvm_inivel
402 3 inimap1d, inimap2d)
403
405 2 ibftemp ,fbftemp ,ibfflux ,fbfflux ,itab ,
406 3 icode ,iskew ,ibcslag ,ibfvel ,fbfvel ,
407 4 nimpdisp ,nimpvel ,nimpacc ,rwbuf ,nprw ,
408 5 lprw ,ibcscyc ,irbe3 ,lrbe3 ,frbe3 ,
409 6 mgrby ,ispcond ,irbe2 ,lrbe2 ,npbyl ,
410 7 lpbyl ,rbyl ,ibmpc ,ibmpc2 ,ibmpc3 ,
411 8 ibmpc4 ,rbmpc ,ljoint ,nnlink ,lnlink,
412 9 llinal ,linale ,gjbufi ,gjbufr ,ms ,
413 9 in ,fxbipm ,fxbfile_tab,glob_therm)
414
416 2 loadp ,ibcl ,forc ,ipres ,pres ,
417 3 ibcr ,fradia ,ibcv ,fconv ,igrv ,
418 4 lgrv ,agrv ,icfield ,lcfield ,cfield ,
419 5 ipreload ,preload ,iflag_bpreload,
420 6 liflow, lrflow, iflow,rflow ,isphio ,vsphio,
421 7 glob_therm ,pblast )
422
424 1 xseed ,unitab ,qp_iperturb ,
425 2 qp_rperturb,eigipm , eigrpm, defaults ,
426 3 damp_range_part)
428 1 areasl,glob_therm%INTHEAT)
432 . skew , iskwn , xframe, npc,pld,table,npts,
433 . iactiv , factiv ,sensors,func2d)
435 CALL st_qaprint_friction(nom_opt,inom_opt,intbuf_fric_tab,npfricorth,pfricorth ,irepforth,phiforth,vforth)
437 1 ixs ,ixc ,ixtg )
438
440 1 ipartth ,nthgrpmx )
441
443
445
446 CALL st_qaprint_nodes(itab ,x,imerge,merge_node_tol, merge_node_tab,nmerge_tot,ms)
447
449 1 isolnod,ixr,r_skew,iskwn,ixp,
450 2 ixt ,x ,ixc ,ixtg ,thke,
451 3 sh4ang ,thkec,sh3ang,kxsp,ipartsp,
452 4 ipart ,ixr_kj,kxx, ixx ,ipartx,
453 5 ixri ,ixs16 ,ixq, ibeam_vector,rbeam_vector)
454
455
457 . ipart ,igrbric ,igrsh4n ,igrsh3n,igrquad,
458 . igrbeam,igrtruss ,igrspring,igrsurf,igrslin,
459 . ixc ,ixtg ,ixq ,ixp ,ixt ,
460 . ixr ,ixs )
465 CALL st_qaprint_refsta(xrefc ,xreftg ,xrefs ,tagxref ,ixs ,ixc ,ixtg ,itab, xyzref)
468 . igrquad,igrbeam ,igrtruss ,igrspring)
471 . ixc ,ixtg ,sh4trim,sh3trim )
475 . nsigsh ,sigsh ,nsigi ,sigsp ,nsigs ,
476 . sigi ,nsigbeam ,sigbeam ,nsigtruss,sigtruss,
477 . nsigrs ,sigrs )
481
482
483 RETURN
subroutine i2rupt(x, v, a, ms, in, stifn, fsav, weight, irect, nsv, msr, irtl, irupt, crst, mmass, miner, smass, siner, area, uvar, xsm0, dsm, fsm, prop, ipari, nsn, nmn, nuvar, igtyp, pid, npf, tf, itab, fncont, pdama2, isym, inorm, h3d_data, fncontp, ftcontp)
integer, parameter nchartitle
subroutine st_qaprint_admesh(ipart, ipadmesh, padmesh, sh4tree, sh3tree, ixc, ixtg, sh4trim, sh3trim)
subroutine st_qaprint_ale_options_driver
subroutine st_qaprint_clusters(nom_opt, inom_opt, clusters)
subroutine st_qaprint_composite_options(drape, drapeg)
subroutine st_qaprint_constraints(nom_opt, inom_opt, npby, lpby, rby, ibftemp, fbftemp, ibfflux, fbfflux, itab, icode, iskew, ibcslag, ibfvel, fbfvel, nimpdisp, nimpvel, nimpacc, rwbuf, nprw, lprw, ibcscyc, irbe3, lrbe3, frbe3, mgrby, ispcond, irbe2, lrbe2, npbyl, lpbyl, rbyl, ibmpc, ibmpc2, ibmpc3, ibmpc4, rbmpc, ljoint, nnlink, lnlink, llinal, linale, gjbufi, gjbufr, ms, in, fxbipm, fxbfile_tab, glob_therm)
subroutine st_qaprint_dfs_detonators(detonators)
subroutine st_qaprint_dfs_lasers(xlas, ilas)
subroutine st_qaprint_ebcs(ebcs_tab)
subroutine st_qaprint_element(ixs, ixs10, ipm, igeo, itab, isolnod, ixr, r_skew, iskwn, ixp, ixt, x, ixc, ixtg, thke, sh4ang, thkec, sh3ang, kxsp, ipartsp, ipart, ixr_kj, kxx, ixx, ipartx, ixri, ixs16, ixq, ibeam_vector, rbeam_vector)
subroutine st_qaprint_friction(nom_opt, inom_opt, intbuf_fric_tab, npfricorth, pfricorth, irepforth, phiforth, vforth)
subroutine st_qaprint_general_controls(nom_opt, inom_opt, dampr, irand, alea, xseed, unitab, qp_iperturb, qp_rperturb, eigipm, eigrpm, defaults, damp_range_part)
subroutine st_qaprint_groups(igrnod, igrpart, igrbric, igrsh4n, igrsh3n, igrquad, igrbeam, igrtruss, igrspring)
subroutine st_qaprint_initial_conditions(nom_opt, inom_opt, itab, v, vr, w, temp, inicrack, fvm_inivel, inimap1d, inimap2d)
subroutine st_qaprint_initial_state(nsigsh, sigsh, nsigi, sigsp, nsigs, sigi, nsigbeam, sigbeam, nsigtruss, sigtruss, nsigrs, sigrs)
subroutine st_qaprint_inivol()
subroutine st_qaprint_interfaces(nom_opt, inom_opt, ipari, intbuf_tab, i2rupt, areasl, intheat)
subroutine st_qaprint_internal_groups(iparg)
subroutine st_qaprint_loads(nom_opt, inom_opt, numloadp, iloadp, lloadp, loadp, ibcl, forc, ipres, pres, ibcr, fradia, ibcv, fconv, igrv, lgrv, agrv, icfield, lcfield, cfield, ipreload, preload, iflag_bpreload, liflow, lrflow, iflow, rflow, isphio, vsphio, glob_therm, pblast)
subroutine st_qaprint_madymo(iexmad, itab, ipart, ixs, ixc, ixtg)
subroutine st_qaprint_materials(mat_elem, ipm, pm, bufmat)
subroutine st_qaprint_monvol(t_monvol, t_monvol_metadata)
subroutine st_qaprint_multidomains(ipart, iexlnk, igrnod)
subroutine st_qaprint_nodes(itab, x, imerge, merge_node_tol, merge_node_tab, nmerge_tot, ms)
subroutine st_qaprint_output_databases(nom_opt, inom_opt, laccelm, accelm, lgauge, gauge)
subroutine st_qaprint_properties(igeo, geo, bufgeo, pm_stack, geo_stack, igeo_stack)
subroutine st_qaprint_reference_state(xrefc, xreftg, xrefs, tagxref, ixs, ixc, ixtg)
subroutine st_qaprint_refsta(xrefc, xreftg, xrefs, tagxref, ixs, ixc, ixtg, itab, xyzref)
subroutine st_qaprint_seatbelts(itab)
subroutine st_qaprint_set(set, lsubmodel, itab, igrnod, igrpart, ipart, igrbric, igrsh4n, igrsh3n, igrquad, igrbeam, igrtruss, igrspring, igrsurf, igrslin, ixc, ixtg, ixq, ixp, ixt, ixr, ixs)
subroutine st_qaprint_surf(igrsurf, igrslin, bufsf, sbufsf)
subroutine st_qaprint_time_histories(th, ithvar, ipart, subsets, ipartth, nthgrpmx)
subroutine st_qaprint_userwi(user_windows)