32 2 LOADP ,IBCL ,FORC ,IPRES ,PRES ,
33 3 IBCR ,FRADIA ,IBCV ,FCONV , IGRV ,
34 4 LGRV ,AGRV ,ICFIELD ,LCFIELD ,CFIELD ,
35 5 IPRELOAD ,PRELOAD ,IFLAG_BPRELOAD,
36 6 LIFLOW, LRFLOW, IFLOW,RFLOW ,ISPHIO ,VSPHIO ,
48#include "implicit_f.inc"
57#include "tabsiz_c.inc"
58#include "boltpr_c.inc"
63 INTEGER,
INTENT(IN) :: NOM_OPT(LNOPT1,SNOM_OPT1), INOM_OPT(SINOM_OPT)
113 TYPE (glob_therm_) ,
intent(in) :: glob_therm
114 TYPE (PBLAST_) ,
intent(in) :: PBLAST
115 INTEGER,
INTENT(IN) :: NUMLOADP, ILOADP(SIZLOADP,NLOADP), LLOADP(NUMLOADP)
116 INTEGER,
INTENT(IN) :: ICFIELD(SIZFIELD,NLOADC), LCFIELD(SLCFIELD)
117 INTEGER,
INTENT(IN) :: IBCL(NIBCLD,NCONLD-NPRELD), IPRES(NIBCLD,NPRELD)
118 INTEGER,
INTENT(IN) :: IBCR(GLOB_THERM%NIRADIA,GLOB_THERM%NUMRADIA)
119 INTEGER,
INTENT(IN) :: IBCV(%NICONV,GLOB_THERM%NUMCONV)
120 INTEGER,
INTENT(IN) :: IGRV(NIGRV,NGRAV), LGRV(*)
121 INTEGER,
INTENT(IN) :: IPRELOAD(3,*), IFLAG_BPRELOAD()
123 . loadp(lfacload,nloadp), cfield(lfacload,nloadc),
124 . forc(lfaccld,nconld-npreld), pres(lfaccld,npreld),
125 . agrv(lfacgrv,ngrav),preload(6,*)
126 my_real,
INTENT(IN) :: fradia(glob_therm%LFACTHER,glob_therm%NUMRADIA)
127 my_real,
INTENT(IN) :: fconv(glob_therm%LFACTHER,glob_therm%NUMCONV)
128 INTEGER,
INTENT(IN) :: LIFLOW, LRFLOW
129 INTEGER,
DIMENSION(LIFLOW),
INTENT(IN) :: IFLOW
130 my_real,
DIMENSION(LRFLOW),
INTENT(IN) :: RFLOW
131 INTEGER ISPHIO(NISPHIO,NSPHIO)
137 INTEGER I,IPRE, MY_ID, MY_LOAD,J,
138 . ids(nsphio),idx(nsphio),ii,my_sphio,lvad(nsphio),
140 CHARACTER(LEN=NCHARTITLE) :: TITR
141 CHARACTER (LEN=255) :: VARNAME
142 DOUBLE PRECISION TEMP_DOUBLE
144 INTEGER :: COUNT,IOPT_FIRST,IOPT_LAST
148 IF (
myqakey(
'/LOAD/CENTRI'))
THEN
153 IF(len_trim(titr)/=0)
THEN
154 CALL qaprint(titr(1:len_trim(titr)),icfield(9,my_load),0.0_8)
156 CALL qaprint'A_LOAD_CENTRI_FAKE_NAME',icfield
160 IF(icfield(i,my_load) /=0)
THEN
163 WRITE(varname,
'(A,I0)')
'ICFIELD_',i
164 CALL qaprint(varname(1:len_trim(varname)),icfield(i,my_load),0.0_8)
168 DO i=icfield(4,my_load),icfield(4,my_load)+icfield(1,my_load)-1
171 WRITE(varname,
'(A,I0)')
'LCFIELD_',i
172 CALL qaprint(varname(1:len_trim(varname)),lcfield(i),0.0_8)
176 IF(cfield(i,my_load)/=zero)
THEN
179 WRITE(varname,
'(A,I0)')
'CFIELD_',i
180 temp_double = cfield(i,my_load)
181 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
196 IF(
myqakey(
'/LOAD/PFLUID'))
THEN
200 ELSEIF(
myqakey(
'/LOAD/PBLAST'))
THEN
202 iopt_first = 1+nloadp_f
203 iopt_last = nloadp_f+pblast%NLOADP_B
204 ELSEIF(
myqakey(
'/LOAD/PRESSURE'))
THEN
206 iopt_first = 1+nloadp_f+pblast%NLOADP_B
207 iopt_last = nloadp_f+pblast%NLOADP_B+nloadp_hyd
211 DO my_load=iopt_first,iopt_last
215 IF(len_trim(titr)/=0)
THEN
216 CALL qaprint(titr(1:len_trim(titr)),iloadp(2,my_load),0.0_8)
218 CALL qaprint(
'A_LOAD_PFLUID_FAKE_NAME',iloadp(2,my_load),0.0_8)
222 IF(iloadp(i,my_load) /=0)
THEN
225 WRITE(varname,
'(A,I0)')
'ILOADP_',i
226 CALL qaprint(varname(1:len_trim(varname)),iloadp(i,my_load),0.0_8)
231 IF(loadp(i,my_load)/=zero)
THEN
234 WRITE(varname,
'(A,I0)')
'LOADP_',i
235 temp_double = loadp(i,my_load)
236 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
240 first=iloadp(4,my_load)
241 last=iloadp(4,my_load)+iloadp(1,my_load)-1
243 IF(last-first+1 <= 10
THEN
247 WRITE'(A,I0)''LLOADP_',i
248 CALL qaprint(varname(1:len_trim(varname)),lloadp(i),0.0_8)
253 first=iloadp(4,my_load)
257 WRITE(varname,
'(A,I0)')
'LLOADP_',i
258 CALL qaprint(varname(1:len_trim(varname)),lloadp(i),0.0_8)
263 last=iloadp(4,my_load)+iloadp(1,my_load)-1
267 WRITE(varname,'(a,i0)
') 'lloadp_
',I ! LLOADP(11) => 'lloadp_11
'
268 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),LLOADP(I),0.0_8)
272 END DO ! MY_LOAD=IOPT_FIRST, IOPT_LAST
278 IF (MYQAKEY('/cload
')) THEN
279 DO MY_LOAD=1,NCONLD-NPRELD
283 TITR(1:nchartitle)=''
284 IF(LEN_TRIM(TITR)/=0)THEN
285 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),MY_LOAD,0.0_8)
287 CALL QAPRINT('a_cload_fake_name
',MY_LOAD,0.0_8)
291 IF(IBCL(I,MY_LOAD) /=0)THEN
294 WRITE(VARNAME,'(a,i0)
') 'ibcl_
',I ! IBCL(11) => 'ibcl_11
'
295 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),IBCL(I,MY_LOAD),0.0_8)
300 IF(FORC(I,MY_LOAD)/=ZERO)THEN
303 WRITE(VARNAME,'(a,i0)
') 'forc_
',I
304 TEMP_DOUBLE = FORC(I,MY_LOAD)
305 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),0,TEMP_DOUBLE)
309 END DO ! MY_LOAD=1,NCONLD-NPRELD
314 IF (MYQAKEY('/pload
')) THEN
319 TITR(1:nchartitle)=''
320 IF(LEN_TRIM(TITR)/=0)THEN
321 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),MY_LOAD,0.0_8)
323 CALL QAPRINT('a_pload_fake_name
',MY_LOAD,0.0_8)
327 IF(IPRES(I,MY_LOAD) /=0)THEN
330 WRITE(VARNAME,'(a,i0)
') 'ipres_
',I ! IPRES(11) => 'ipres_11
'
331 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),IPRES(I,MY_LOAD),0.0_8)
336 IF(PRES(I,MY_LOAD)/=ZERO)THEN
339 WRITE(VARNAME,'(a,i0)
') 'pres_
',I
340 TEMP_DOUBLE = PRES(I,MY_LOAD)
341 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),0,TEMP_DOUBLE)
345 END DO ! MY_LOAD=1,NPRELD
351 DO MY_LOAD=1,GLOB_THERM%NUMRADIA
355 TITR(1:nchartitle)=''
356 IF(LEN_TRIM(TITR)/=0)THEN
357 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),MY_LOAD,0.0_8)
359 CALL QAPRINT('a_radiation_fake_name
',MY_LOAD,0.0_8)
362 DO I=1,GLOB_THERM%NIRADIA
363 IF(IBCR(I,MY_LOAD) /=0)THEN
366 WRITE(VARNAME,'(a,i0)
') 'ibcr_
',I ! IBCR(11) => 'ibcr_11
'
367 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),IBCR(I,MY_LOAD),0.0_8)
371 DO I=1,GLOB_THERM%LFACTHER
372 IF(FRADIA(I,MY_LOAD)/=ZERO)THEN
375 WRITE(VARNAME,'(a,i0)
') 'fradia_
',I
376 TEMP_DOUBLE = FRADIA(I,MY_LOAD)
377 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),0,TEMP_DOUBLE)
381 END DO ! MY_LOAD=1,NUMRADIA
386 IF (MYQAKEY('/
convec')) THEN
387 DO MY_LOAD=1,GLOB_THERM%NUMCONV
391 TITR(1:nchartitle)=''
392 IF(LEN_TRIM(TITR)/=0)THEN
393 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),MY_LOAD,0.0_8)
395 CALL QAPRINT('a_convec_fake_name
',MY_LOAD,0.0_8)
398 DO I=1,GLOB_THERM%NICONV
399 IF(IBCV(I,MY_LOAD) /=0)THEN
402 WRITE(VARNAME,'(a,i0)
') 'ibcv_
',I ! IBCV(11) => 'ibcv_11
'
403 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),IBCV(I,MY_LOAD),0.0_8)
407 DO I=1,GLOB_THERM%LFACTHER
408 IF(FCONV(I,MY_LOAD)/=ZERO)THEN
411 WRITE(VARNAME,'(a,i0)
') 'fconv_
',I
412 TEMP_DOUBLE = FCONV(I,MY_LOAD)
413 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),0,TEMP_DOUBLE)
417 END DO ! MY_LOAD=1,NUMCONV
422 IF (MYQAKEY('/grav
')) THEN
426 TITR(1:nchartitle)=''
427 MY_ID=IGRV(5,MY_LOAD)
428 IF(LEN_TRIM(TITR)/=0)THEN
429 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),MY_ID,0.0_8)
431 CALL QAPRINT('a_gravity_fake_name
',MY_ID,0.0_8)
435 IF(IGRV(I,MY_LOAD) /=0)THEN
438 WRITE(VARNAME,'(a,i0)
') 'igrv_
',I ! IGRV(11) => 'igrv_11
'
439 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),IGRV(I,MY_LOAD),0.0_8)
443 DO I=IGRV(4,MY_LOAD),IGRV(4,MY_LOAD)+IGRV(1,MY_LOAD)-1
446 WRITE(VARNAME,'(a,i0)
') 'lgrv_
',I
447 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),LGRV(I),0.0_8)
451 IF(AGRV(I,MY_LOAD)/=ZERO)THEN
454 WRITE(VARNAME,'(a,i0)
') 'agrv_
',I
455 TEMP_DOUBLE = AGRV(I,MY_LOAD)
456 CALL QAPRINT(VARNAME(1:LEN_TRIM(VARNAME)),0,TEMP_DOUBLE)
460 END DO ! MY_LOAD=1,NGRAV
465 IF (MYQAKEY('/preload
')) THEN
467 ! ID of /PRELOAD is not stored and so not retrieved
468 IF (NPRELOAD > 0) THEN
470 DO IPRE = 1,NUMPRELOAD
472 TITR(1:nchartitle)=''
473 IF(LEN_TRIM(TITR)/=0)THEN
474 CALL QAPRINT(TITR(1:LEN_TRIM(TITR)),IPRE,0.0_8)
476 CALL QAPRINT('preload_fake_name
',IPRE,0.0_8)
480 IF(IPRELOAD(J,IPRE) /=0)THEN
481 WRITE(VARNAME,'(a,i0,i0)')
'IPRELOAD_',j,ipre
482 CALL qaprint(varname(1:len_trim(varname)),ipreload(j,ipre),0.0_8)
486 IF(ipreload(1,ipre) /=0)
THEN
488 IF(iflag_bpreload(j) /=0)
THEN
489 WRITE(varname,
'(A,I0)')
'IFLAG_BPRELOAD_',j
490 CALL qaprint(varname(1:len_trim(varname)),iflag_bpreload(j),0.0_8)
495 IF(preload(j,ipre)/=zero)
THEN
496 WRITE(varname,
'(A,I0,I0)')
'PRELOAD_',j,ipre
497 temp_double = preload(j,ipre)
498 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
507 ok_qa =
myqakey(
'/BEM') .AND. nflow > 0
509 WRITE(varname,
'(A)')
"LIFLOW_=_"
510 CALL qaprint(varname(1:len_trim(varname)), liflow, 0.0_8)
511 WRITE(varname,
'(A)')
"LRFLOW_=_"
512 CALL qaprint(varname(1:len_trim(varname)), lrflow, 0.0_8)
515 WRITE(varname,
'(A, I0)')
"IFLOW ", i
516 IF (iflow(i) /= 0)
THEN
518 CALL qaprint(varname(1:len_trim(varname)), iflow(i), 0.0_8)
520 IF (count == 100)
EXIT
524 WRITE(varname,
'(A, I0)')
"IFLOW ", i
525 IF (iflow(i) /= 0)
THEN
527 CALL qaprint(varname(1:len_trim(varname)), iflow(i), 0.0_8)
529 IF (count == 100)
EXIT
533 WRITE(varname,
'(A, I0)')
"RFLOW ", i
534 temp_double = rflow(i)
535 IF (temp_double /= 0.0_8)
THEN
537 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
539 IF (count == 100)
EXIT
543 WRITE(varname,
'(A, I0)')
"RFLOW ", i
544 temp_double = rflow(i)
545 IF (temp_double /= 0.0_8)
THEN
547 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
549 IF (count == 100)
EXIT
555 IF (
myqakey(
'/SPH/INOUT'))
THEN
558! sort by
id to ensure internal order independent output
560 ids(i) = isphio(nisphio,i)
562 IF (i /= nsphio)
THEN
563 lvad(i) = isphio(4,i+1) - isphio(4,i)
565 lvad(i) = svsphio - isphio(4,i)
575 CALL fretitl2(titr,nom_opt(lnopt1-ltitr+1,inom_opt(22) + my_sphio),ltitr)
576 my_id = nom_opt(1,inom_opt(22)+my_sphio)
577 IF (len_trim(titr) /= 0)
THEN
578 CALL qaprint(titr(1:len_trim(titr)),my_id,0.0_8)
580 CALL qaprint(
'A_SPH_INOUT_FAKE_NAME',my_id,0.0_8)
584 IF (isphio(i,my_sphio) /= 0)
THEN
585 WRITE(varname,
'(A,I0)')
'ISPHIO_',i
586 CALL qaprint(varname(1:len_trim(varname)),isphio(i,my_sphio),0.0_8)
590 DO i = isphio(4,my_sphio),isphio(4,my_sphio)+lvad(my_sphio)-1
591 IF ( vsphio(i) /= zero)
THEN
592 WRITE(varname,
'(A,I0)')
'VSPHIO_',i
593 temp_double = vsphio(i)
594 CALL qaprint(varname(1:len_trim(varname)),0,temp_double)
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)