50#include "implicit_f.inc"
60 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
62 TYPE (MULTI_FVM_STRUCT),
INTENT(INOUT) :: MULTI_FVM
63 TYPE (SURF_) ,
TARGET,
DIMENSION(NSURF) :: IGRSURF
64 CHARACTER(LEN=NCHARTITLE),
INTENT(IN) :: TITR
65 TYPE() LSUBMODEL(NSUBMOD)
66 TYPE(t_ebcs_monvol),
INTENT(INOUT) :: EBCS
70 INTEGER NGR2USR,ISU,NSEG
71 INTEGER SURF,SENS,MONVOL
74 INTEGER,
DIMENSION(:),
POINTER :: INGR2USR
80 ebcs%title = trim(titr)
84 IF (unitab%UNIT_ID(j) == uid)
THEN
89 IF (uid/=0.AND.iflagunit==0)
THEN
90 CALL ancmsg(msgid=659,anmode=aninfo,msgtype=msgerror,
99 CALL hm_get_intv(
'entityid', surf ,is_available,lsubmodel)
100 CALL hm_get_intv(
'sensorid', sens ,is_available,lsubmodel)
101 CALL hm_get_intv(
'monvol_ID', monvol ,is_available,lsubmodel)
104 ingr2usr => igrsurf(1:nsurf)%ID
105 IF (surf/=0) isu=ngr2usr(surf,ingr2usr,nsurf)
107 IF (isu/=0) nseg=igrsurf(isu)%NSEG
110 WRITE(istdo,
'(6X,A)')
' ** A SURFACE SHOULD BE INPUT'
111 WRITE(iout,
'(6X,A)')
' ** A SURFACE SHOULD BE INPUT'
114 WRITE(istdo,*)
' ** ERROR SURFACE NOT FOUND, ID=',surf
115 WRITE(iout,*)
' ** ERROR SURFACE NOT FOUND, ID=',surf
118 WRITE(istdo,*)
' ** ERROR EMPTY SURFACE, ID=',surf
119 WRITE(iout,*)
' ** ERROR EMPTY SURFACE, ID=',surf
121 WRITE(iout,1008)id,trim(titr),monvol,surf,sens,nseg
125 ebcs%monvol_id = monvol
126 ebcs%sensor_id = sens
128 IF (multi_fvm%IS_USED)
THEN
129 CALL ancmsg(msgid = 1602, msgtype = msgerror, anmode = aninfo,
130 . i1 = id, c1 = trim(titr), c2 =
"NOT COMPATIBLE WITH LAW 151")
134 CALL ancmsg(msgid=755,msgtype=msgerror,anmode=aninfo,c1=
'ELEMENTARY BOUNDARY CONDITIONS')
142 .
'EBCS NUMBER :',i8,1x,a,/,
143 .
' CONNECTION TO MONITORED VOLUME. . . . . . ',i8,/,
144 .
' THROUGH SURFACE . . . . . . . . . . . . . ',i8,/,
145 .
' ACTIVATED BY SENSOR . . . . . . . . . . . ',i8,/,
146 .
' NUMBER OF SEGMENTS FOUND. . . . . . . . . ',i8,/)
subroutine hm_read_ebcs_monvol(igrsurf, multi_fvm, unitab, id, titr, uid, lsubmodel, ebcs)
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)