TALK=T;RUN( 1, 1)
************************************************************
Q1 created by VDI menu, Version 2008, Date 06/06/08
CPVNAM=VDI;SPPNAM=FLAIR
************************************************************
Echo DISPLAY / USE settings
DISPLAY
This parameterised q1 defines a steady-state representation of a
fire in a room having an open door and two apertures, through
which air or smoke can escape.
introduced late in 2007, and which prevents the satellite, when it
writes the Q1 file at the end of a session, from removing the
declarations, settings and relationships which the original q1
contained.
The formulation is unusual in having x as the vertical direction.
Therefore the PIL boolean variable zUP has been introduced.
By default it is false; but if it is set to true, changes are made
which restore the more usual z-vertical orientation.
In order to preserve the right-hand-rule convention, this entails:
changing: x-direction data to z-direction i.e. high
changing: y-direction data to x-direction i.e. wide
changing: z-direction data to y-direction i.e. long
This is effected by departing somewhat from the conventional
expression of the position and size attributes in order that
zUP can act through repeated lines:
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
where the initial settings of xpos etc are those which
correspond to the original non-standard coordinate system,
and the POSITION and SIZE lines are expressed for all objects as:
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
The ability to do those demonstrates the power of the PHOENICS
Input Language, when its logic-handling fatures are exploited , to
make changes which it would be extremely laborious to to effect
via the graphical user interface.
Another boolean variable is fourwall. This has been introduced so
as to demonstrate that it suffices to introduce four complete
walls, provided that the objects representing the apertures in
them are introduced below them in the Q1. If this is not done, as
was the case in earlier versions of PHOENICS, the user may waste
time in creating four partial walls which leave space tor the
aperture.
fourwall=t is the recommended option; but it may interest some
users to satisfy themselves that fourwall=f leads to the same
solution.
FIRE-DRIVEN ROOM AIR FLOWS
ENDDIS
************************************************************
IRUNN = 1 ;LIBREF = 0
************************************************************
Group 1. Run Title
************************************************************
Echo InForm settings for Group 1
SAVE1BEGIN
Group 1. Run Title
boolean(zup,fourwall) ! declarations
settings
zup=t
fourwall=t
TEXT( Room air flows; I201; zUP=:zup: )
************************************************************
Echo InForm settings for Group 1
Group 1. Run Title
SAVE1END
************************************************************
Group 2. Transience
STEADY = T
************************************************************
Groups 3, 4, 5 Grid Information
* Overall number of cells, RSET(M,NX,NY,NZ,tolerance)
RSET(M,30,40,20)
************************************************************
Group 6. Body-Fitted coordinates
************************************************************
Echo InForm settings for Group 5
Note that the TEXT and RSET lines above are re-written by the
ones below them because the satellite code has still not entirely
saveXend lines
SAVE5BEGIN
if(zUP) then
RSET(M,30,40,20)
else
RSET(M,20,30,40)
endif
SAVE5END
************************************************************
Group 7. Variables: STOREd,SOLVEd,NAMEd
ONEPHS = T
* Non-default variable names
NAME(149) =EPKE ; NAME(150) =TEM1
* Solved variables list
SOLVE(P1 ,U1 ,V1 ,W1 ,TEM1)
* Stored variables list
STORE(EPKE)
* Additional solver options
SOLUTN(P1 ,Y,Y,Y,N,N,Y)
SOLUTN(TEM1,Y,Y,Y,N,N,Y)
TURMOD(KEMODL)
************************************************************
Group 8. Terms & Devices
************************************************************
Group 9. Properties
PRESS0 = 1.000000E+05 ;TEMP0 = 2.730000E+02
* Domain material index is 0 signifying:
* Air at 20 deg C, 1 atm, treated as incompressible
SETPRPS(1, 0)
DVO1DT = 3.410000E-03
PRNDTL(TEM1) = -2.580000E-02
PRT (EP ) = 1.314000E+00
************************************************************
Group 10.Inter-Phase Transfer Processes
************************************************************
Group 11.Initialise Var/Porosity Fields
FIINIT(EPKE) = 1.000000E+00 ;FIINIT(TEM1) = 2.000000E+01
No PATCHes used for this Group
INIADD = F
************************************************************
Group 12. Convection and diffusion adjustments
No PATCHes used for this Group
************************************************************
Group 13. Boundary & Special Sources
No PATCHes used for this Group
EGWF = T
************************************************************
Echo InForm settings for Group 13
SAVE13BEGIN
PATCH (BUOYANCY,PHASEM,0,0,0,0,0,0,1,1)
COVAL (BUOYANCY,U1 , FIXFLU , GRND3 )
COVAL (BUOYANCY,V1 , FIXFLU , GRND3 )
COVAL (BUOYANCY,W1 , FIXFLU , GRND3 )
if(zUP) then
BUOYA = 0.000000E+00 ; BUOYB = 0.000000E+00
BUOYC =-9.810000E+00
else
BUOYA =-9.810000E+00 ; BUOYB = 0.000000E+00
BUOYC = 0.000000E+00
endif
BUOYD = 3.410000E-03
BUOYE = 2.000000E+01
EGWF = T
SAVE13END
************************************************************
Group 14. Downstream Pressure For PARAB
************************************************************
Group 15. Terminate Sweeps
LSWEEP = 200
RESFAC = 1.000000E-03
************************************************************
Group 16. Terminate Iterations
************************************************************
Group 17. Relaxation
RELAX(P1 ,LINRLX, 1.000000E+00)
RELAX(KE ,LINRLX, 5.000000E-01)
RELAX(EP ,LINRLX, 5.000000E-01)
KELIN = 0
************************************************************
Group 18. Limits
VARMAX(U1 ) = 1.000000E+06 ;VARMIN(U1 ) =-1.000000E+06
VARMAX(V1 ) = 1.000000E+06 ;VARMIN(V1 ) =-1.000000E+06
VARMAX(W1 ) = 1.000000E+06 ;VARMIN(W1 ) =-1.000000E+06
VARMAX(TEM1) = 1.000000E+02 ;VARMIN(TEM1) =-1.000000E+11
************************************************************
Group 19. EARTH Calls To GROUND Station
USEGRD = T ;USEGRX = T
NAMGRD =FLAR
GENK = T
ASAP = T
PARSOL = T
CONWIZ = T
ISG52 = 1
SPEDAT(SET,FLAIR,CLOTHING,R,9.30000E-02)
SPEDAT(SET,FLAIR,RELHUMID,R,5.00000E+01)
SPEDAT(SET,FLAIR,TRAD,R,2.50000E+01)
SPEDAT(SET,FACETDAT,NUMOBJ,I,22)
SPEDAT(SET,IMMERSOL,EMCON,R,5.00000E+00)
************************************************************
Group 20. Preliminary Printout
ECHO = T
************************************************************
Group 21. Print-out of Variables
OUTPUT(P1 ,Y,Y,Y,N,Y,Y)
OUTPUT(U1 ,Y,Y,Y,N,Y,Y)
OUTPUT(V1 ,Y,Y,Y,N,Y,Y)
OUTPUT(W1 ,Y,Y,Y,N,Y,Y)
************************************************************
Group 22. Monitor Print-Out
IXMON = 3 ;IYMON = 3 ;IZMON = 4
NPRMON = 100000
NPRMNT = 1
TSTSWP = -1
************************************************************
Group 23.Field Print-Out & Plot Control
NPRINT = 100000
ISWPRF = 1 ;ISWPRL = 100000
No PATCHes used for this Group
************************************************************
Group 24. Dumps For Restarts
************************************************************
Echo InForm settings for Group 25
SAVE25BEGIN
xulast=2.8956 ! 9.5 feet Probably the original dimensions
yvlast=6.4008 ! 21.0 feet were expressed in feet rather
zwlast=8.5344 ! 28.0 feet than meters
if(zUP) then ! switch domain dimensions if the U direction is z
real(dummy) ! dummy neeeds to ba declared only once
dummy=xulast; xulast=zwlast; zwlast=yvlast; yvlast=dummy
dummy=zwlast; zwlast=xulast; xulast=yvlast; yvlast=dummy
endif
declarations of problem defining quantities
real(roomhigh,roomwide,roomlong)
real(doorhigh,doorwide,prt1high,prt1thck,suppwide,suppsize,supphigh)
real(prt1wide,prt1zpos,prt2wide,prt3zpos,suppypos,suppxpos,doorzpos)
real(fireypos,firezpos,firesize)
real(tempsupp,fireflux)
real(xscale,yscale,zscale) ! in case a change of scale is required
Note that 'supp' refers to the air-supply aperture,
prt1 ,prt2 and prt3 to partitions,
high, wide and long signify height (x direction), width
(y or z directions) and length (z direction)
xpos, ypos and zpos are the position coordinates
xsiz, ysiz and zsiz are the corresponding sizes
They are recognised PIL variable, used repeatedly in
the object-attribute settings.
settings
xscale=1.0 ! One might conceivably wish to change the dimensions
yscale=1.0 ! of the room and its contents by use of these scali$
ng
zscale=1.0 ! factors
if(zUP) then
roomhigh=zwlast * zscale
roomwide=xulast * xscale
roomlong=yvlast * yscale
else
roomhigh=xulast * xscale
roomwide=yvlast * yscale
roomlong=zwlast * zscale
endif
if(zUP) then
doorhigh=zwlast * zscale
doorwide=9.144000E-01 * yscale
doorzpos=7.924800E+00 * zscale
else
doorhigh=xulast * xscale
doorwide=9.144000E-01 * yscale
doorzpos=7.924800E+00 * zscale
endif
prt1wide=3.048000E+00 * yscale
prt2wide=2.438400E+00 * zscale
prt1high=1.828800E+00 * xscale
prt1thck=1.524000E-01 * zscale
prt1zpos=4.267200E+00 * zscale
prt3zpos=3.352800E+00 * zscale
suppypos=2.743200E+00 * yscale
suppxpos=1.828800E+00 * xscale
suppwide=9.144000E-01 * yscale
supphigh=3.048000E-01 * xscale
fireypos=2.288400E+00 * yscale
firezpos=7.644000E-01 * zscale
firesize=3.000000E-01 * zscale
tempsupp=15.0
fireflux=7.0E4
if(zUP)then
GVIEW(P, -5.050615E-01,-2.881525E-03,8.630785E-01)
GVIEW(UP, 8.592720E-01, 9.219494E-02,5.031418E-01)
else
GVIEW(P, 8.630785E-01,-5.050615E-01,-2.881525E-03)
GVIEW(UP,5.031418E-01,8.592720E-01,9.219494E-02)
endif
if(zUP) then
> DOM, SIZE, roomwide , roomlong , roomhigh
else
> DOM, SIZE, roomhigh , roomwide , roomlong
endif
> DOM, MONIT, 4.999400E-01, 5.721000E-01, 4.777500E-01
> DOM, SCALE, 1.000000E+00, 1.000000E+00, 1.000000E+00
> DOM, SNAPSIZE, 1.000000E-02
representations of aspects of the geometry
-------------------------------- --------------------------------
! ^ ! supp ! roomwide-! ! ^ ! supp ! roomwide-!
! roomhigh ! wide ! ! ! roomhigh ! wide ! !
! supp-! ! ! ! supp-! ! !
! ypos ! ! ! ! ypos ! ! !
! ! L4 ! ! ! ! H3 ! !
! !------! ! ! !------! !
! L1 !supply! L2 ! ! H1 !return! H2 !
! !------! ! ! !------! !
! ! ^ ! ! ! ! ^ ! !
! ! supp ! ! ! ! supp ! !
! ! xpos ! ! ! ! xpos ! !
! ! ! ! ! ! ! !
! ! L3 ! ! ! ! H4 ! !
!-------------!------!----------! !------------!------!----------!
zpos=0 zpos=roomlong
-------------------------------------------------------------
! ! ! !
! ! N3 ! !
! ! ! !
! !-------------! !
! ! ^ ! !
! ! doorhigh ! !
! N2 ! ! N1 !
! !- doorwide -! !
! ! ! !
! ! OPEN ! !
! ! ! !
! ! ! !
! ! ! !
!-roomlong !-doorzpos ! !
------------------------------------------------------------
if(fourwall) then
> OBJ, NAME, wall-low
xpos=0.0 ; ypos= 0.0; zpos=0.0
xsiz=:roomhigh: ;ysiz= :roomwide: ; zsiz= 0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, wall-high
xpos= 0.0; ypos=0.0; zpos=roomlong
xsiz= roomhigh ; ysiz=roomwide ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, wall-north
xpos=0.0 ; ypos=roomwide; zpos=0.0
xsiz=roomhigh ; ysiz= 0.0 ; zsiz=roomlong
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, wall-south
xpos= 0.0; ypos=0.0; zpos=0.0
xsiz= roomhigh ; ysiz= 0.0 ; zsiz=roomlong
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
else
> OBJ, NAME, wall-l1
xpos= 0.0; ypos=0.0; zpos=0.0
xsiz= roomhigh ; ysiz=suppypos ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, wall-l2
xpos= 0.0; ypos=suppypos+suppwide; zpos=0.0
xsiz=roomhigh ; ysiz=roomwide-suppwide-suppypos ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-L3
xpos=0.0 ; ypos=suppypos; zpos=0.0
xsiz= suppxpos ; ysiz= suppwide ; zsiz= 0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-L4
xpos=suppxpos+supphigh ; ypos=suppypos; zpos=0.0
xsiz=roomhigh-suppxpos-supphigh ; ysiz=suppwide ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
else ! If fourwall = f , create several smaller walls so as to
! leave space for the aperture. This is a needless
! complication
> OBJ, NAME, WALL-H3
xpos= suppxpos+supphigh; ypos=suppypos; zpos=roomlong
xsiz= :roomhigh-suppxpos-supphigh: ; ysiz= suppwide ; zsiz= 0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-H4
xpos=0.0 ; ypos=suppypos; zpos=roomlong
xsiz= suppxpos ; ysiz=suppwide ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-H1
xpos=0.0 ; ypos=0.0; zpos=roomlong
xsiz= roomhigh ; ysiz=suppypos ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-H2
xpos=0.0 ; ypos=suppypos+suppwide; zpos=roomlong
xsiz=roomhigh; ysiz=:roomwide-suppwide-suppypos: ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-S1
xpos= 0.0; ypos=0.0; zpos=0.0
xsiz=roomhigh ; ysiz=0.0 ; zsiz=roomlong
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-N1
xpos=0.0 ; ypos=roomwide; zpos=0.0
xsiz= roomhigh ; ysiz=0.0 ; zsiz=doorzpos-doorwide
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-N2
xpos=0.0 ; ypos=roomwide; zpos=doorzpos
xsiz=roomhigh ; ysiz=0.0 ; zsiz= roomlong-doorzpos
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, NAME, WALL-N3
xpos=doorhigh ; ypos=roomwide; zpos=doorzpos-doorwide
xsiz=roomhigh-doorhigh ; ysiz= 0.0 ; zsiz=doorwide
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
endif ! end of .not.fourwall
> OBJ, NAME, SUPPLY
xpos=suppxpos ; ypos=suppypos; zpos=0.0
xsiz=supphigh ; ysiz=suppwide ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube3
> OBJ, ROTATION24, 1
> OBJ, TYPE, INLET
> OBJ, PRESSURE, 0.000000E+00
> OBJ, VOLUFLOW, 4.205200E-01
> OBJ, TEMPERATURE, tempsupp
> OBJ, TURB-INTENS, 5.000000E+00
> OBJ, NAME, RETURN
xpos=suppxpos ; ypos=suppypos; zpos=roomlong
xsiz=supphigh ; ysiz=suppwide ; zsiz=0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube3
> OBJ, ROTATION24, 1
> OBJ, TYPE, INLET
> OBJ, PRESSURE, 0.000000E+00
> OBJ, VOLUFLOW, -3.364200E-01
> OBJ, TEMPERATURE, tempsupp
> OBJ, TURB-INTENS, 5.000000E+00
> OBJ, NAME, OPEN
xpos=0.0 ; ypos=roomwide; zpos=doorzpos-doorwide
xsiz=doorhigh ; ysiz=0.0 ; zsiz=doorwide
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube12
> OBJ, ROTATION24, 1
> OBJ, TYPE, OPENING
> OBJ, PRESSURE, 0.000000E+00
> OBJ, TEMPERATURE, tempsupp
> OBJ, COEFFICIENT, 1.000000E+03
> OBJ, TURBULENCE, SAME , SAME
> OBJ, NAME, DOOR
xpos=0.0 ; ypos=roomwide-doorwide; zpos=doorzpos
xsiz= doorhigh ; ysiz= doorwide ; zsiz= 0.0
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube
> OBJ, ROTATION24, 1
> OBJ, TYPE, PLATE
> OBJ, POROSITY, 0.000000E+00
> OBJ, SIDE, BOTH
> OBJ, NAME, PART-1
xpos=0.0 ; ypos=0.0; zpos=prt1zpos
xsiz=prt1high ; ysiz= prt1wide ; zsiz=prt1thck
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube14
> OBJ, ROTATION24, 1
> OBJ, TYPE, BLOCKAGE
> OBJ, MATERIAL, 198,Solid with smooth-wall friction
> OBJ, NAME, PART-2
xpos=0.0 ; ypos= prt1wide; zpos=0.0
xsiz=prt1high ; ysiz= prt1thck ; zsiz=prt2wide
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube14
> OBJ, ROTATION24, 1
> OBJ, TYPE, BLOCKAGE
> OBJ, MATERIAL, 198,Solid with smooth-wall friction
> OBJ, NAME, PART-3
xpos=0.0 ; ypos=prt1wide; zpos= prt3zpos
xsiz=prt1high ; ysiz=prt1thck ; zsiz=prt2wide
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube14
> OBJ, ROTATION24, 1
> OBJ, TYPE, BLOCKAGE
> OBJ, MATERIAL, 198,Solid with smooth-wall friction
> OBJ, NAME, FIRE
xpos=0.0 ; ypos=fireypos; zpos=firezpos
xsiz=firesize ; ysiz= firesize ; zsiz=firesize
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, fire
> OBJ, ROTATION24, 9
> OBJ, TYPE, BLOCKAGE
> OBJ, MATERIAL, 0, Air at 20 deg C, 1 atm
> OBJ, HEAT_FLUX, 0.000000E+00, fireflux
> OBJ, SCAL_FIXF, 0.000000E+00
> OBJ, NAME, ROOF
xpos=roomhigh ; ypos=0.0; zpos=0.0
xsiz=0.0 ; ysiz=roomwide ; zsiz=roomlong
if(zUP) then
dummy=zpos; zpos=xpos; xpos=ypos; ypos=dummy
dummy=zsiz; zsiz=xsiz; xsiz=ysiz; ysiz=dummy
endif
> OBJ, POSITION, :xpos:, :ypos:, :zpos:
> OBJ, SIZE, :xsiz:, :ysiz:, :zsiz:
> OBJ, GEOMETRY, cube11
> OBJ, ROTATION24, 1
> OBJ, VISIBLE, NO
> OBJ, TYPE, PLATE
SAVE25END
STOP