```
TALK=F;RUN( 1, 1)

************************************************************
Q1 created by VDI menu, Version 3.6, Date 31/01/06
CPVNAM=VDI;SPPNAM=Core
************************************************************
Echo DISPLAY / USE settings
DISPLAY
This case involves steady, turbulent flow over a backward-facing
step, of height h, in a two-dimensional channel of width 3*h.
The calculations are started at a distance 4h upstream of the step
and terminated at a distance 16h downstream.

//////////////////////// wall ///////////////////////
-----------------------------------------------------
Pressure
Inlet  ------->                              --------->  fixed at
zero
/________________
| ////////////////|                                  Exit
|       wall     /| Recirculation
|                /|  <----                ----->
\ constant      /|____________________________________
prescribed mass  //////////////////////////////////////
inflow rate                        wall

Please, set variable caseno from 1 to 4.
Case 1 has uniform grid
Case 2 has one level of coarsening and grid finer than case 1.
Case 3 has two levels of coarsening and grid finer than case 2.
Case 3 has three levels of coarsening and grid finer than case 3.
ENDDIS
Group 1. Run Title
TEXT(USP. Laminar flow over step.

Groups 3, 4, 5  Grid Information
* Overall number of cells, RSET(M,NX,NY,NZ,tolerance)
integer(caseno,LEVEL)
caseno = 1
if(caseno.eq.1)then
coarsen variant of grid
NX = 20
NY = 15
endif
if(caseno.eq.2)then
NX = 40
NY = 30
endif
if(caseno.eq.3)then
NX = 80
NY = 60
endif
if(caseno.eq.4)then
NX = 160
NY = 120
endif
NZ = 1

LEVEL = caseno-1
mesg(Level of coarsening is :LEVEL:

RSET(D,DOM,0.8,0.12,1.)

integer(stnx,stny)
stnx = 4; stny= 3
real(STLEN,STH)
STLEN = XULAST*STNX/NX
STH = YVLAST*STNY/NY

Group 7. Variables: STOREd,SOLVEd,NAMEd
NAME(150) =PRPS
* Solved variables list
SOLVE(P1  ,U1  ,V1  )
* Stored variables list
STORE(PRPS)
SOLUTN(P1  ,Y,Y,Y,N,N,N)

Usp related variables
USP    = T
UAUTO  = F
USPDBG = F
UTCPLT = T
USPVTK = T
USPIMB = F
MXLEV  = 4
MYLEV  = 4
MZLEV  = 4
DOMAT  = -1
MINPRP = -1
MAXPRP = 100
CELLST = 10
FACEST = 10
PARSOL = F

Group 9. Properties
REAL(Uin,RE)
Uin=0.1
RHO1    = 1.000000E+00
ENUL    = 1.E-05
RE = Uin*YVLAST/ENUL
mesg(Reynolds number is :RE:
mesg(DO you want to change it (y/n)?
if(:ans:.eq.y)then
mesg(Enter new Reynolds number
Uin = RE*ENUL/YVLAST
mesg(New Reynolds number is :RE:
mesg(New velocity is :Uin: m/s
endif

Group 11.Initialise Var/Porosity Fields
FIINIT(PRPS) = -1.000000E+00

PATCH(BLK,INIVAL,1,NX/stnx,1,NY/stny,1,1,1,1)
COVAL(BLK,PRPS, 0., 198.)

Group 13. Boundary & Special Sources

PATCH(INL,WEST,1,1,NY/stny+1,NY,1,1,1,1)
COVAL(INL,P1, FIXFLU, Uin*RHO1)
COVAL(INL,U1, ONLYMS, Uin)
COVAL(INL,V1, ONLYMS, 0.)

PATCH(OUT,EAST,NX,NX,1,NY,1,1,1,1)
COVAL(OUT,P1, 1.E+07, 0.)

PATCH(UPW,NWALL ,1,NX,NY,NY,1,1,1,1)
COVAL(UPW,U1,1., 0.)

PATCH(DNW,SWALL,NX/stnx+1,NX,1,1,1,1,1,1)
COVAL(DNW,U1, 1., 0.)

Group 15. Terminate Sweeps
LSWEEP  =      2500
RESFAC  = 1.000000E-07

Group 17. Relaxation
if(caseno.eq.1)then
coarsen variant of grid
RELAX(P1  ,LINRLX, 8.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-00)
RELAX(V1  ,FALSDT, 1.000000E-00)
endif
if(caseno.eq.2)then
RELAX(P1  ,LINRLX, 8.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-00)
RELAX(V1  ,FALSDT, 1.000000E-00)
endif
if(caseno.eq.3)then
RELAX(P1  ,LINRLX, 3.000000E-01)
RELAX(U1  ,FALSDT, 3.000000E-02)
RELAX(V1  ,FALSDT, 3.000000E-02)
endif
if(caseno.eq.4)then
RELAX(P1  ,LINRLX, 2.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-02)
RELAX(V1  ,FALSDT, 1.000000E-02)
endif

mesg(Do you want to use collocated arrangement (y) or staggered one (n)? (y/n)
if(:ans:.eq.y)then
SPEDAT(SET,USP,METHOD,I,1)
if(caseno.eq.1)then
coarsen variant of grid
RELAX(P1  ,LINRLX, 4.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-00)
RELAX(V1  ,FALSDT, 1.000000E-00)
endif
if(caseno.eq.2)then
RELAX(P1  ,LINRLX, 2.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-00)
RELAX(V1  ,FALSDT, 1.000000E-00)
endif
if(caseno.eq.3)then
RELAX(P1  ,LINRLX, 2.000000E-01)
RELAX(U1  ,FALSDT, 3.000000E-02)
RELAX(V1  ,FALSDT, 3.000000E-02)
endif
if(caseno.eq.4)then
RELAX(P1  ,LINRLX, 1.000000E-01)
RELAX(U1  ,FALSDT, 1.000000E-02)
RELAX(V1  ,FALSDT, 1.000000E-02)
LSWEEP = 5000
endif
mesg(Do you want to use SIMPLEST (y) or SIMPLE (n)? (y/n)
if(:ans:.eq.y)then
SPEDAT(SET,USP,SIMPLEST,L,T)
endif

endif

Group 20. Preliminary Printout
ECHO    =    T

Group 22. Monitor Print-Out
IXMON   =         (stnx+NX)/2  ;IYMON  =    stny/2 ;IZMON  =         1
NPRMON  =       100
NPRMNT  =         1
TSTSWP  =        -1

mesg(Do you want to use max&min(y) on monitor instead of default(n)? (y/n)
if(:ans:.eq.y)then
#maxmin
endif

mesg(Do you want to view results in the centres of cells? (y/n)
if(:ans:.eq.y)then
SPEDAT(SET,USPIO,VERTCENT,L,F)
endif

Group 23.Field Print-Out & Plot Control
NPRINT  =    100000
IPLTF   =         1 ;IPLTL  =       100
NPLT    =         1
ISWPRF  =         1 ;ISWPRL =    100000
ITABL   =         1

> DOM,    SIZE,        8.000000E-01, 1.200000E-01, 1.000000E+00
> DOM,    MONIT,       5.000000E-01, 6.000000E-02, 1.000000E+00
> DOM,    SCALE,       1.000000E+00, 1.000000E+00, 1.000000E+00
> DOM,    SNAPSIZE,    1.000000E-02

if(caseno.eq.2)then
> OBJ,    NAME,        B1
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        8.000000E-02, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B2
> OBJ,    POSITION,    6.800000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.200000E-01, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B3
> OBJ,    POSITION,    0.000000E+00, 8.800000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 3.200000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY
endif

if(caseno.eq.3)then
> OBJ,    NAME,        B1
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.200000E-01, 8.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B2
> OBJ,    POSITION,    6.000000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        2.000000E-01, 8.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B3
> OBJ,    POSITION,    0.000000E+00, 8.000000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 4.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B4
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        8.000000E-02, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B5
> OBJ,    POSITION,    6.800000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.200000E-01, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B6
> OBJ,    POSITION,    0.000000E+00, 8.800000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 3.200000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY
endif

if(caseno.eq.4)then
> OBJ,    NAME,        B1
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.400000E-01, 7.600000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B2
> OBJ,    POSITION,    5.400000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        2.600000E-01, 7.600000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B3
> OBJ,    POSITION,    0.000000E+00, 7.600000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 4.400000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B4
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.200000E-01, 8.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B5
> OBJ,    POSITION,    6.000000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        2.000000E-01, 8.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B6
> OBJ,    POSITION,    0.000000E+00, 8.000000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 4.000000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       1.000000E+00, 1.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B7
> OBJ,    POSITION,    0.000000E+00, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        8.000000E-02, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       2.000000E+00, 2.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B8
> OBJ,    POSITION,    6.800000E-01, 0.000000E+00, 0.000000E+00
> OBJ,    SIZE,        1.200000E-01, 8.800000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       2.000000E+00, 2.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY

> OBJ,    NAME,        B9
> OBJ,    POSITION,    0.000000E+00, 8.800000E-02, 0.000000E+00
> OBJ,    SIZE,        8.000000E-01, 3.200000E-02, 1.000000E+00
> OBJ,    GEOMETRY,    fine
> OBJ,    ROTATION24,        1
> OBJ,    TYPE,        FINE_GRID_VOL
> OBJ,    LEVELS,       2.000000E+00, 2.000000E+00, 0.000000E+00
> OBJ,    AXES,        IXY
endif
STOP
```