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) * Additional solver options 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)? readvdu(ans,char,n) if(:ans:.eq.y)then mesg(Enter new Reynolds number readvdu(RE,real,RE) 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) readvdu(ans,char,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) readvdu(ans,char,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) readvdu(ans,char,n) if(:ans:.eq.y)then #maxmin endif mesg(Do you want to view results in the centres of cells? (y/n) readvdu(ans,char,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