TALK=F;RUN( 1, 1) ************************************************************ Q1 created by VDI menu, Version 2009, Date 17/02/09 CPVNAM=VDI;SPPNAM=Core ************************************************************ Echo DISPLAY / USE settings DISPLAY Couette flow with Exact solution Nu = NU0/(1+2*kNU*Y/LY) U(Y) = 1/(1+kNU)*(Y/LY)*(1+kNU*(Y/LY)) ENDDIS ************************************************************ IRUNN = 1 ;LIBREF = 999 ************************************************************ Group 1. Run Title TEXT(Couette Flow with Exact solution ) ************************************************************ Group 2. Transience STEADY = T ************************************************************ Groups 3, 4, 5 Grid Information * Overall number of cells, RSET(M,NX,NY,NZ,tolerance) RSET(M,10,10,1) ************************************************************ Group 6. Body-Fitted coordinates ************************************************************ Group 7. Variables: STOREd,SOLVEd,NAMEd * Non-default variable names NAME(149)=ENUL ;NAME(150)=PRPS * Solved variables list SOLVE(P1,U1,V1) * Stored variables list STORE(PRPS,ENUL) * Additional solver options SOLUTN(P1,Y,Y,Y,N,N,Y) ************************************************************ Echo save-block settings for Group 7 **** Select caseNO ***** integer(caseno) caseno=1 mesg(caseno=1: UnStructured Phoenics mesg(caseno=2: Structured Phoenics mesgm(caseno = :caseno: . Enter another if you want (1/2): readvdu(caseno, int, 1) if(:caseno:.LT.1.or.:caseno:.gt.2) then caseno=1 endif caseno SAVE7BEGIN REAL(LX,LY,LZ,CN00) LX = 2 LY = 1 LZ = 0.1 **** Set Nu0,kNU ***** real(kNU,NU00,RE00) kNU = 2 NU00 = 0.01 RE00 = 1/NU00 kNU NU00 RE00 CN00 = 1/(1+kNU) (STORED VAR U_TH IS :CN00:*(YG/:LY:)*(1+kNU*(YG/:LY:)) ) (STORED VAR DU1 IS U1-U_TH) (property enul is :NU00:/(1+2*kNU*YG/:LY:)) SAVE7END IF(caseno.NE.2) THEN ! USP INTEGER(LEVEL) LEVEL = 0 mesg(Level of refinement is :LEVEL: mesg(Do you want to change it? (y/n) readvdu(ans,char,n) if(:ans:.eq.y)then mesg(Enter level of refinement readvdu(LEVEL,int,LEVEL) mesg(New level of refinement is :LEVEL: endif USP = T ; USPDBG= F UTCPLT = T ; USPIMB= F UAUTO = T ; UGTGRD= F USPVTK = T ; USPTER= F USCANX = T ; USCANY= T USCANZ = T DOMAT = -1 CELLST = 20 ; FACEST= 20 MINPRP = -1 ; MAXPRP= 250 UMXLEV = LEVEL ; UMXCLS= 10000 UNOLAY = 2 ; UIOLEV= 0 UWALEV = LEVEL ; UGRITR= 5 UMXCRS = 16 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 ENDIF ************************************************************ Group 8. Terms & Devices ************************************************************ Group 9. Properties RHO1 =1. ENUL =1. CP1 =1. ENUT =0. ************************************************************ Group 10.Inter-Phase Transfer Processes ************************************************************ Group 11.Initialise Var/Porosity Fields FIINIT(ENUL)=1.001E-10 ;FIINIT(PRPS)=-1. 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 SAVE13BEGIN (SOURCE of P1 at LEFT_IN is COVAL(FIXFLU,U_TH)!AREA) (SOURCE of U1 at LEFT_IN is COVAL(ONLYMS,U_TH)!AREA) (SOURCE of V1 at LEFT_IN is COVAL(ONLYMS,0)!AREA) (SOURCE of U1 at FIX_WALL is COVAL(1,0)!AREA) (SOURCE of U1 at MOV_WALL is COVAL(1,1)!AREA) SAVE13END EGWF = T ************************************************************ Group 14. Downstream Pressure For PARAB ************************************************************ Group 15. Terminate Sweeps LSWEEP = 500 RESFAC =1.0E-05 ************************************************************ Group 16. Terminate Iterations ************************************************************ Group 17. Relaxation IF(caseno.NE.2) THEN RELAX(P1 ,LINRLX,0.8 ) RELAX(U1 ,FALSDT,1.0E+05 ) RELAX(V1 ,FALSDT,1.0E+05 ) 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) RELAX(P1 ,LINRLX, 0.3) RELAX(U1 ,FALSDT, 1.E-01) RELAX(V1 ,FALSDT, 1.E-01) 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 ELSE RELAX(P1 ,LINRLX,1 ) RELAX(U1 ,FALSDT,1.0E+05 ) RELAX(V1 ,FALSDT,1.0E+05 ) SPEDAT(SET,OUTPUT,VTK,C,YES) ENDIF ************************************************************ Group 18. Limits ************************************************************ Group 19. EARTH Calls To GROUND Station ************************************************************ Group 20. Preliminary Printout ************************************************************ Group 21. Print-out of Variables ************************************************************ Group 22. Monitor Print-Out IXMON = 5 ;IYMON = 20 ;IZMON = 1 NPRMON = 100000 NPRMNT = 1 TSTSWP = -1 NXPRIN=1; NYPRIN=1 ************************************************************ Group 23.Field Print-Out & Plot Control NPRINT = 100000 ISWPRF = 1 ;ISWPRL = 100000 ITABL = 2 NYPRIN=1 No PATCHes used for this Group ************************************************************ Group 24. Dumps For Restarts GVIEW(P,0.,0.,1.) GVIEW(UP,0.,1.,0.) > DOM, SIZE, LX, LY, LZ > DOM, MONIT, 0.9, 0.975, 0.05 > DOM, SCALE, 1.000000E+00, 1.000000E+00, 1.000000E+00 > DOM, INCREMENT, 1.000000E-02, 1.000000E-02, 1.000000E-02 > GRID, BOUNDS, F F F F F F > GRID, RSET_X_1, 10, 1.000000E+00 > GRID, RSET_Y_1, 10, 1.000000E+00 > GRID, RSET_Z_1, 1, 1.000000E+00 > DOM, T_AMBIENT, 0.000000E+00 > OBJ, NAME, FIX_WALL > OBJ, POSITION, 0.000000E+00, 0.000000E+00, 0.000000E+00 > OBJ, SIZE, LX, 0.000000E+00, LZ > OBJ, GEOMETRY, cube11 > OBJ, TYPE, PLATE > OBJ, NAME, MOV_WALL > OBJ, POSITION, 0.000000E+00, LY, 0.000000E+00 > OBJ, SIZE, LX, 0.000000E+00, LZ > OBJ, GEOMETRY, cube11 > OBJ, TYPE, PLATE > OBJ, NAME, LEFT_IN > OBJ, POSITION, 0.000000E+00, 0.000000E+00, 0.000000E+00 > OBJ, SIZE, 0.000000E+00, LY, LZ > OBJ, GEOMETRY, cube3t > OBJ, TYPE, INLET > OBJ, NAME, RIGHT_IN > OBJ, POSITION, LX, 0.000000E+00, 0.000000E+00 > OBJ, SIZE, 0.000000E+00, LY, LZ > OBJ, GEOMETRY, cube12t > OBJ, TYPE, OUTLET > OBJ, PRESSURE, 0. > OBJ, COEFFICIENT, 1000. STOP