```
TALK=T;RUN(1,1)
PHOTON USE
p
phi

msg        BLUFF BODY AERODYNAMICS: FLOW AROUND A CHIMNEY
msg
view 1 -1 1
norm
msg   Pressure contours:
con p1 y 1 fi;.01;gr ou y 1
con p1 y 3 fi;.01;gr ou y 3
con p1 y 5 fi;.01;gr ou y 5
con p1 y 7 fi;.01;gr ou y 7
msg
msg Press  to continue
pause
cl
msg        Velocity vectors:
vec x 1 sh;gr ou x 1
vec z 1 sh;gr ou z 1
vec y max sh;gr ou y max
msg
msg Press  to continue
pause
view x
norm
msg A two-dimensional view of the streamwise velocity vectors:
msg
msg
msg Press e to END
enduse
DISPLAY
This run examines how the flow around a chimney intermingles
with the effluent from it. A concentration equation is solved so
as to determine the rate of dilution of the effluent.
Interesting variants include:- changes to the chimney shape;
changes to the flow rate through the chimney top; and changes
to the wind velocity.
ENDDIS
************************************************************
Group 1. Run Title and Number
************************************************************
************************************************************

TEXT(Flow Around A Chimney                   )

************************************************************
************************************************************

IRUNN = 1 ;LIBREF = 14
************************************************************
Group 2. Time dependence
************************************************************
Group 3. X-Direction Grid Spacing
CARTES = T
NX = 10
XULAST =50.
XFRAC(1)=0.02 ;XFRAC(4)=0.128889
XFRAC(7)=0.455556 ;XFRAC(10)=1.
************************************************************
Group 4. Y-Direction Grid Spacing
NY = 10
YVLAST =50.
YFRAC(1)=0.1 ;YFRAC(4)=0.4
YFRAC(7)=0.7 ;YFRAC(10)=1.
************************************************************
Group 5. Z-Direction Grid Spacing
PARAB = F
NZ = 10
ZWLAST =50.
ZFRAC(1)=0.02 ;ZFRAC(4)=0.079184
ZFRAC(7)=0.366939 ;ZFRAC(10)=1.
************************************************************
Group 6. Body-Fitted Coordinates
************************************************************
Group 7. Variables: STOREd,SOLVEd,NAMEd
ONEPHS = T
NAME(1)=P1 ;NAME(3)=U1
NAME(5)=V1 ;NAME(7)=W1
NAME(16)=C1 ;NAME(149)=PRPS
* Y in SOLUTN argument list denotes:
* 1-stored 2-solved 3-whole-field
* 4-point-by-point 5-explicit 6-harmonic averaging
SOLUTN(P1,Y,Y,N,N,N,Y)
SOLUTN(U1,Y,Y,N,N,N,Y)
SOLUTN(V1,Y,Y,N,N,N,Y)
SOLUTN(W1,Y,Y,N,N,N,Y)
SOLUTN(C1,Y,Y,N,N,N,Y)
SOLUTN(PRPS,Y,N,N,N,N,N)
PRPS = 149
************************************************************
Group 8. Terms & Devices
* Y in TERMS argument list denotes:
* 1-built-in source 2-convection 3-diffusion 4-transient
* 5-first phase variable 6-interphase transport
TERMS(P1,Y,Y,Y,N,Y,Y)
TERMS(U1,Y,Y,Y,Y,Y,Y)
TERMS(V1,Y,Y,Y,Y,Y,Y)
TERMS(W1,Y,Y,Y,Y,Y,Y)
TERMS(C1,N,Y,Y,Y,Y,Y)
DIFCUT =0.5 ;ZDIFAC =1.
GALA = F ;ADDDIF = F
ISOLX = -1 ;ISOLY = -1 ;ISOLZ = -1
************************************************************
Group 9. Properties used if PRPS is not
stored, and where PRPS = -1.0 if it is!
RHO1 =1. ;TMP1 =0.
EL1 =0.
TSURR =0. ;TEMP0 =0.
PRESS0 =0.
DVO1DT =0. ;DRH1DP =0.
EMISS =0. ;SCATT =0.
ENUL =1.0E-02 ;ENUT =0.
PRNDTL(U1)=1. ;PRNDTL(V1)=1.
PRNDTL(W1)=1. ;PRNDTL(C1)=1.
PRT(U1)=1. ;PRT(V1)=1.
PRT(W1)=1. ;PRT(C1)=1.
CP1 =1. ;CP2 =1.
************************************************************
Group 10.Inter-Phase Transfer Processes
************************************************************
Group 11.Initial field variables (PHIs)
FIINIT(P1)=1.0E-10 ;FIINIT(U1)=1.0E-10
FIINIT(V1)=1.0E-10 ;FIINIT(W1)=5.
FIINIT(C1)=1.0E-10 ;FIINIT(PRPS)=-1.

PATCH(CHIMNRES,INIVAL, 1, 1, 1, 5, 2, 3, 1, 1)
INIT(CHIMNRES,PRPS,0. ,199. )
FSWEEP = 1
NAMFI =CHAM
************************************************************
Group 12. Patchwise adjustment of terms
Patches for this group are printed with those
for Group 13.
Their names begin either with GP12 or &
************************************************************
Group 13. Boundary & Special Sources

PATCH(UPWIND ,LOW , 1, 10, 1, 10, 1, 1, 1, 1)
COVAL(UPWIND ,P1 , FIXFLU ,5. )
COVAL(UPWIND ,U1 ,0. ,0. )
COVAL(UPWIND ,V1 ,0. ,0. )
COVAL(UPWIND ,W1 ,0. ,5. )
COVAL(UPWIND ,C1 ,0. ,0. )

PATCH(DOWNWIND,HIGH , 1, 10, 1, 10, 10, 10, 1, 1)
COVAL(DOWNWIND,P1 ,1. ,0. )
COVAL(DOWNWIND,U1 ,0. ,0. )
COVAL(DOWNWIND,V1 ,0. ,0. )
COVAL(DOWNWIND,W1 ,0. ,0. )

PATCH(CHIMNTOP,CELL , 1, 1, 6, 6, 2, 3, 1, 1)
COVAL(CHIMNTOP,P1 , FIXFLU ,1. )
COVAL(CHIMNTOP,U1 ,0. ,1. )
COVAL(CHIMNTOP,V1 ,0. ,1. )
COVAL(CHIMNTOP,W1 ,0. ,1. )
COVAL(CHIMNTOP,C1 ,0. ,1. )
XCYCLE = F
EGWF = T
WALLCO = GRND2
************************************************************
Group 14. Downstream Pressure For PARAB
************************************************************
Group 15. Terminate Sweeps
LSWEEP = 20 ;ISWC1 = 1
LITHYD = 1 ;LITFLX = 1 ;LITC = 1 ;ITHC1 = 1
SELREF = T
RESFAC =1.0E-02
************************************************************
Group 16. Terminate Iterations
LITER(P1)=20 ;LITER(U1)=10
LITER(V1)=10 ;LITER(W1)=10
LITER(C1)=20
ENDIT(P1)=1.0E-03 ;ENDIT(U1)=1.0E-03
ENDIT(V1)=1.0E-03 ;ENDIT(W1)=1.0E-03
ENDIT(C1)=1.0E-03
************************************************************
Group 17. Relaxation
RELAX(P1,LINRLX,1.)
RELAX(U1,FALSDT,0.1)
RELAX(V1,FALSDT,0.1)
RELAX(W1,FALSDT,0.1)
RELAX(C1,FALSDT,1.0E+09)
RELAX(PRPS,LINRLX,1.)
OVRRLX =0.
EXPERT = F ;NNORSL = F
************************************************************
Group 18. Limits
VARMAX(P1)=1.0E+10 ;VARMIN(P1)=-1.0E+10
VARMAX(U1)=1.0E+06 ;VARMIN(U1)=-1.0E+06
VARMAX(V1)=1.0E+06 ;VARMIN(V1)=-1.0E+06
VARMAX(W1)=1.0E+06 ;VARMIN(W1)=-1.0E+06
VARMAX(C1)=1.0E+10 ;VARMIN(C1)=-1.0E+10
VARMAX(PRPS)=1.0E+10 ;VARMIN(PRPS)=-1.0E+10
************************************************************
Group 19. Data transmitted to GROUND
PARSOL = F
ISG62 = 1
SPEDAT(SET,MATERIAL,199,L,T)
************************************************************
Group 20. Preliminary Printout
************************************************************
Group 21. Print-out of Variables
INIFLD = F ;SUBWGR = F
* Y in OUTPUT argument list denotes:
* 1-field 2-correction-eq. monitor 3-selective dumping
* 4-whole-field residual 5-spot-value table 6-residual table
OUTPUT(P1,Y,N,Y,Y,Y,Y)
OUTPUT(U1,Y,N,Y,Y,Y,Y)
OUTPUT(V1,Y,N,Y,Y,Y,Y)
OUTPUT(W1,Y,N,Y,Y,Y,Y)
OUTPUT(C1,Y,N,Y,Y,Y,Y)
OUTPUT(PRPS,Y,N,Y,N,N,N)
************************************************************
Group 22. Monitor Print-Out
IXMON = 1 ;IYMON = 5 ;IZMON = 5
NPRMON = 100000 ;NPRMNT = 1 ;TSTSWP = -1
UWATCH = T ;USTEER = T
HIGHLO = F
************************************************************
Group 23.Field Print-Out & Plot Control
NPRINT = 100000 ;NUMCLS = 5
NXPRIN = 3 ;IXPRF = 1 ;IXPRL = 10000
NYPRIN = 3 ;IYPRF = 5 ;IYPRL = 5
NZPRIN = 3 ;IZPRF = 1 ;IZPRL = 10000
XZPR = T ;YZPR = F
IPLTF = 1 ;IPLTL = -1 ;NPLT = -1
ISWPRF = 1 ;ISWPRL = 100000
ITABL = 3 ;IPROF = 1
ABSIZ =0.5 ;ORSIZ =0.4
NTZPRF = 1 ;NCOLPF = 50
ICHR = 2 ;NCOLCO = 45 ;NROWCO = 20

PATCH(ZEQUS5 ,CONTUR, 2, 7, 2, 7, 5, 5, 1, 1)
PLOT(ZEQUS5 ,U1 ,0. ,20. )
PLOT(ZEQUS5 ,V1 ,0. ,20. )
PLOT(ZEQUS5 ,W1 ,0. ,20. )
PLOT(ZEQUS5 ,C1 ,0. ,20. )

PATCH(PLUME ,PROFIL, 1, 1, 5, 5, 1, 10, 1, 1)
PLOT(PLUME ,W1 ,0. ,6. )
PLOT(PLUME ,C1 ,0. ,0.1 )

PATCH(XEQUS1 ,CONTUR, 1, 1, 1, 10, 1, 10, 1, 1)
PLOT(XEQUS1 ,U1 ,0. ,20. )
PLOT(XEQUS1 ,V1 ,0. ,20. )
PLOT(XEQUS1 ,W1 ,0. ,20. )
PLOT(XEQUS1 ,C1 ,0. ,20. )

PATCH(YEQUS5 ,CONTUR, 1, 10, 5, 5, 1, 10, 1, 1)
PLOT(YEQUS5 ,U1 ,0. ,20. )
PLOT(YEQUS5 ,V1 ,0. ,20. )
PLOT(YEQUS5 ,W1 ,0. ,20. )
PLOT(YEQUS5 ,C1 ,0. ,50. )
************************************************************
Group 24. Dumps For Restarts
SAVE = T ;NOWIPE = F
NSAVE =CHAM
STOP
```