62 SUBROUTINE read_monvol(T_MONVOL, T_MONVOL_METADATA, ITAB, ITABM1, IPM, IGEO,
63 . X, PM, GEO, IXC, IXTG, SENSORS,
64 . UNITAB, NPC, NPT, PLD, IGRSURF, IGRBRIC, NOM_OPT,IFRAME, XFRAME,
92#include "implicit_f.inc"
103#include "param_c.inc"
106#include "units_c.inc"
110 TYPE(
monvol_struct_),
DIMENSION(NVOLU + NMONVOL),
INTENT(INOUT) :: T_MONVOL
111 TYPE(MONVOL_METADATA_),
INTENT(INOUT) ::
112 TYPE(UNIT_TYPE_),
INTENT(IN) :: UNITAB
113 my_real,
INTENT(IN) :: x(3, numnod), geo(npropg, numgeo), pm(npropm, nummat), pld(2, *),
115 INTEGER,
INTENT(IN) :: NPC(*), NPT(*), ITAB(*), ITABM1(*),
116 . ixc(nixc, numelc), ixtg(nixtg, numeltg),ipm(npropmi, nummat),
117 . igeo(npropgi, numgeo),iframe(liskn,*)
118 INTEGER,
INTENT(INOUT) :: NOM_OPT(LNOPT1, *)
119 TYPE (SURF_),
INTENT(INOUT),
DIMENSION(NSURF) :: IGRSURF
120 TYPE (GROUP_),
DIMENSION(NGRBRIC),
INTENT(IN) ::
121 TYPE (SUBMODEL_DATA),
DIMENSION(NSUBMOD),
INTENT(IN) :: LSUBMODEL
122 TYPE (SENSORS_) ,
INTENT(IN) :: SENSORS
127 INTEGER :: NVB, ITYPE, ID, UID, LOCAL_UID
128 CHARACTER(len=ncharkey) :: KEY
129 CHARACTER(len=nchartitle) :: TITR
136 t_monvol_metadata%LCA = 0
141! **************************
146 IF (nsubdom > 0)
THEN
147 IF(
tagmon(nvb) == 0)
THEN
154 CALL fretitl(titr,nom_opt(lnopt1-ltitr+1,ii),ltitr)
157 DO jj = 1,unitab%NUNITS
158 IF (unitab%UNIT_ID(jj) == uid)
THEN
164 IF (.NOT. found)
THEN
165 CALL ancmsg(msgid = 659, anmode = aninfo, msgtype = msgerror,
166 . i2 = uid, i1 = id, c1 =
'MONITORED VOLUME', c2 =
'MONITORED VOLUME', c3
168 IF (key(1:4) ==
'AREA')
THEN
170 ELSEIF (key(1:4) ==
'PRES')
THEN
172 ELSEIF (key(1:3) ==
'GAS')
THEN
174 ELSEIF (key(1:7) ==
'AIRBAG1')
THEN
176 ELSEIF (key(1:6) ==
'AIRBAG')
THEN
178 ELSEIF (key(1:6) ==
'COMMU1')
THEN
180 ELSEIF (key(1:5) ==
'COMMU')
THEN
182 ELSEIF (key(1:7) ==
'FVMBAG2')
THEN
184 ELSEIF (key(1:7) ==
'FVMBAG1')
THEN
186 ELSEIF (key(1:6) ==
'FVMBAG')
THEN
188 ELSEIF (key(1:6) ==
'LFLUID')
THEN
192 CALL ancmsg(msgid=7,anmode=aninfo,msgtype=msgerror,
197 t_monvol(ii)%IVOLU(1) = id
198 t_monvol(ii)%IVOLU(27) = -1
199 t_monvol(ii)%TYPE = itype
200 t_monvol(ii)%IVOLU(2) = itype
201 t_monvol(ii)%TITLE = trim(titr)
203 WRITE(iout,1001) id, t_monvol(ii)%TITLE, key(1:len_trim(key))
211 . unitab, local_uid, igrsurf,
212 . itab, x, pm, geo, ixc, ixtg,lsubmodel)
218 . unitab, local_uid, npc, igrsurf,
219 . itab, x, pm, geo, ixc, ixtg,lsubmodel)
225 . unitab, local_uid, npc, igrsurf,
226 . itab, x, pm, geo, ixc, ixtg, lsubmodel)
232 . sensors, npt, pld, unitab, local_uid, npc, igrsurf,
233 . itab, x, pm, geo, ixc, ixtg, lsubmodel)
240 . unitab, local_uid, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
247 . sensors, npt, pld, igrbric,
248 . unitab, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
256 . unitab, local_uid, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
263 . sensors, iframe, xframe, igrbric,
264 . unitab, local_uid, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
273 . unitab, local_uid, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
280 . unitab, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,lsubmodel)
286 . sensors, xframe, igrbric,
287 . unitab, local_uid, npc, igrsurf, itab, x, pm, geo, ixc, ixtg,
292 nvolu = nvolu + nmonvol
296 . //,
' MONITORED VOLUME DEFINITION '/
297 .
' ---------------------------- ')
298 1001
FORMAT(//5x,
'VOLUME NUMBER ',i10,
299 . / 5x,
'------------------------',
301 . / 5x,
'TYPE OF MONITORED VOLUME. . . . . . . .=',a10)
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)