51#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
66 TYPE (t_ebcs_valvin),
INTENT(INOUT) :: EBCS
70 INTEGER ISU,SURF,NGR2USR,IPRES,IRHO,J,NSEG,IENER
71 my_real c,pres,rho,lcar,r1,r2,ener
73 INTEGER,
DIMENSION(:),
POINTER :: INGR2USR
74 LOGICAL IS_ENCRYPTED, IS_AVAILABLE
90 ebcs%title = trim(titr)
93 CALL hm_get_intv(
'entityid', surf ,is_available,lsubmodel)
96 ingr2usr => igrsurf(1:nsurf)%ID
97 IF (surf/=0) isu=ngr2usr(surf,ingr2usr,nsurf)
99 IF (isu/=0) nseg=igrsurf(isu)%NSEG
102 WRITE(istdo,
'(6X,A)')
' ** A SURFACE SHOULD BE INPUT'
103 WRITE(iout,
'(6X,A)')
' ** A SURFACE SHOULD BE INPUT'
106 WRITE(istdo,*)
' ** ERROR SURFACE NOT FOUND, ID=',surf
107 WRITE(iout,*)
' ** ERROR SURFACE NOT FOUND, ID=',surf
110 WRITE(istdo,*)
' ** ERROR EMPTY SURFACE',surf
111 WRITE(iout,*)
' ** ERROR EMPTY SURFACE',surf
114 CALL hm_get_floatv(
'rad_ebcs_c', c ,is_available,lsubmodel,unitab)
117 CALL hm_get_intv(
'rad_fct_pr', ipres ,is_available,lsubmodel)
118 CALL hm_get_floatv(
'rad_ebcs_fscale_pr', pres ,is_available,lsubmodel,unitab)
121 CALL hm_get_intv(
'rad_fct_rho', irho ,is_available,lsubmodel)
122 CALL hm_get_floatv(
'rad_ebcs_fscale_rho', rho ,is_available,lsubmodel,unitab)
125 CALL hm_get_intv(
'rad_fct_en', iener ,is_available,lsubmodel)
126 CALL hm_get_floatv(
'rad_ebcs_fscale_en', ener ,is_available,lsubmodel,unitab)
129 CALL hm_get_floatv(
'rad_ebcs_lc', lcar ,is_available,lsubmodel,unitab)
130 CALL hm_get_floatv(
'rad_ebcs_r1', r1 ,is_available,lsubmodel,unitab
131 CALL hm_get_floatv(
'rad_ebcs_r2', r2 ,is_available,lsubmodel,unitab)
133 IF(surf/=0 .AND. isu/=0 .AND. nseg/=0)
THEN
134 WRITE(iout,1002)id,trim(titr)
135 WRITE(iout,1101)surf,nseg,c,pres,ipres,rho,irho,ener,iener,lcar,r1,r2
138 IF(ipres/=0 .AND. ipres==npc(j))
THEN
144 IF(irho/=0 .AND. irho==npc(j))
THEN
150 IF(iener/=0 .AND. iener==npc(j))
THEN
168 IF (multi_fvm%IS_USED)
THEN
169 CALL ancmsg(msgid = 1602, msgtype = msgerror, anmode = aninfo,
170 . i1 = id, c1 = trim(titr), c2 =
"NOT COMPATIBLE WITH LAW 151")
177 1002
FORMAT( //
'INLET VALVE EBCS NUMBER . . . . . . . :',i8,1x,a)
179 .
' ON SURFACE . . . . . . . . . . . . . . . ',i8,/,
180 .
' NUMBER OF SEGMENTS FOUND. . . . . . . . . ',i8,/,
181 .
' SPEED OF SOUND . . . . . . . . . . . . . ',e16.6,/,
182 .
' IMPOSED PRESSURE . . . . . . . . . . . . ',e16.6,/,
183 .
' PRESSURE SCALING FUNCTION . . . . . . . . ',i8,/,
184 .
' IMPOSED DENSITY . . . . . . . . . . . . . ',e16.6,/,
185 .
' DENSITY SCALING FUNCTION . . . . . . . . ',i8,/,
186 .
' IMPOSED ENERGY . . . . . . . . . . . . . ',e16.6,/,
187 .
' ENERGY SCALING FUNCTION . . . . . . . . . ',i8,/,
188 .
' CHARACTERISTIC LENGTH . . . . . . . . . . ',e16.6,/,
189 .
' LINEAR RESISTANCE . . . . . . . . . . . . ',e16.6,/,
190 .
' QUADRATIC RESISTANCE . . . . . . . . . . ',e16.6,/)
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)