TALK=T;RUN(1,1) DISPLAY Numerical Schemes validation example: 2-d x-y, Cartesian, steady, elliptic simulation This problem concerns the pure convection of a step profile of a scalar by a unidirectional and uniform flow field, which forms an angle 45 degrees with the horizontal axis. Since physical diffusion is absent, no mixing layer should form and the scalar discontinuity should persist in the streamwise direction. The example compares the solution for 6 different linear schemes and 9 non-linear schemes for the discretisation of convection. --> / / / / / y ^ inflow of --> / / / / / flow at 45 deg | 'fluid 1' --> / / / / / +-----> --> / / / / / x ^ ^ ^ ^ | | | | inflow of 'fluid 2' ENDDIS PHOTON USE P;;; msg the grid and the velocity vectors vec z 1;gr z 1;pause;gr off;vec off;red cl;con USOL z 1 fi;.1 msg usol: Upwind Differencing Scheme, the PHOENICS default pause; cl msg poorly performing schemes (omitted for case n122) pause;cl;con qSOL z 1 fi;.1 msg qsol: QUICK Scheme pause;cl;con vSOL z 1 fi;.1 msg vsol: Van Aldbda Scheme pause; cl; con 3SOL z 1 fi;.1 msg 3sol: Cubic Upwind Scheme pause;cl;con oSOL z 1 fi;.1 msg osol: Ospre Scheme pause ;cl;con fSOL z 1 fi;.1 msg fsol: Fromm Scheme pause;cl;con lSOL z 1 fi;.1 msg lsol: Linear upwind Scheme pause; cl;con CSOL z 1 fi;.1 msg csol: Cds Scheme pause; cl msg better-performing schemes pause ; cl;con SSOL z 1 fi;.1 msg ssol: Smart Scheme pause; cl;con bSOL z 1 fi;.1 msg bsol: Superbee Scheme pause;cl;con hSOL z 1 fi;.1 msg hsol: Hquick Scheme pause;cl;con iSOL z 1 fi;.1 msg isol: UMIST Scheme pause;cl;con kSOL z 1 fi;.1 msg ksol: Koren Scheme pause;cl;con mSOL z 1 fi;.1 msg msol: Minmod Scheme pause;cl;con nSOL z 1 fi;.1 msg nsol: Van Leer 1 Scheme pause;cl;con zSOL z 1 fi;.1 msg zsol: Van Leer 2 Scheme ENDUSE ************************************************************ Group 1. Run Title and Number ************************************************************ ************************************************************ TEXT(YX DIAGONAL SCALAR CONVECTION :N101 ) ************************************************************ ************************************************************ IRUNN = 1 ;LIBREF = 0 ************************************************************ Group 2. Time dependence STEADY = T ************************************************************ Group 3. X-Direction Grid Spacing CARTES = T NX = 20 XULAST =1. XFRAC(1)=0.05 ;XFRAC(2)=0.1 XFRAC(3)=0.15 ;XFRAC(4)=0.2 XFRAC(5)=0.25 ;XFRAC(6)=0.3 XFRAC(7)=0.35 ;XFRAC(8)=0.4 XFRAC(9)=0.45 ;XFRAC(10)=0.5 XFRAC(11)=0.55 ;XFRAC(12)=0.6 XFRAC(13)=0.65 ;XFRAC(14)=0.7 XFRAC(15)=0.75 ;XFRAC(16)=0.8 XFRAC(17)=0.85 ;XFRAC(18)=0.9 XFRAC(19)=0.95 ;XFRAC(20)=1. ************************************************************ Group 4. Y-Direction Grid Spacing NY = 20 YVLAST =1. YFRAC(1)=0.05 ;YFRAC(2)=0.1 YFRAC(3)=0.15 ;YFRAC(4)=0.2 YFRAC(5)=0.25 ;YFRAC(6)=0.3 YFRAC(7)=0.35 ;YFRAC(8)=0.4 YFRAC(9)=0.45 ;YFRAC(10)=0.5 YFRAC(11)=0.55 ;YFRAC(12)=0.6 YFRAC(13)=0.65 ;YFRAC(14)=0.7 YFRAC(15)=0.75 ;YFRAC(16)=0.8 YFRAC(17)=0.85 ;YFRAC(18)=0.9 YFRAC(19)=0.95 ;YFRAC(20)=1. ************************************************************ Group 5. Z-Direction Grid Spacing PARAB = F NZ = 1 ZWLAST =1. ZFRAC(1)=1. ************************************************************ Group 6. Body-Fitted Coordinates ************************************************************ Group 7. Variables: STOREd,SOLVEd,NAMEd ONEPHS = T NAME(1)=P1 ;NAME(3)=U1 NAME(5)=V1 ;NAME(135)=ZSOL NAME(136)=VSOL ;NAME(137)=USOL NAME(138)=SSOL ;NAME(139)=QSOL NAME(140)=OSOL ;NAME(141)=NSOL NAME(142)=MSOL ;NAME(143)=LSOL NAME(144)=KSOL ;NAME(145)=ISOL NAME(146)=HSOL ;NAME(147)=FSOL NAME(148)=CSOL ;NAME(149)=BSOL NAME(150)=3SOL * 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,N,N,N,N,Y) SOLUTN(U1,Y,N,N,N,N,Y) SOLUTN(V1,Y,N,N,N,N,Y) SOLUTN(ZSOL,Y,Y,N,N,N,Y) SOLUTN(VSOL,Y,Y,N,N,N,Y) SOLUTN(USOL,Y,Y,N,N,N,Y) SOLUTN(SSOL,Y,Y,N,N,N,Y) SOLUTN(QSOL,Y,Y,N,N,N,Y) SOLUTN(OSOL,Y,Y,N,N,N,Y) SOLUTN(NSOL,Y,Y,N,N,N,Y) SOLUTN(MSOL,Y,Y,N,N,N,Y) SOLUTN(LSOL,Y,Y,N,N,N,Y) SOLUTN(KSOL,Y,Y,N,N,N,Y) SOLUTN(ISOL,Y,Y,N,N,N,Y) SOLUTN(HSOL,Y,Y,N,N,N,Y) SOLUTN(FSOL,Y,Y,N,N,N,Y) SOLUTN(CSOL,Y,Y,N,N,N,Y) SOLUTN(BSOL,Y,Y,N,N,N,Y) SOLUTN(3SOL,Y,Y,N,N,N,Y) ************************************************************ 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(ZSOL,N,Y,N,Y,N,Y) TERMS(VSOL,N,Y,N,Y,Y,Y) TERMS(USOL,N,Y,N,Y,N,Y) TERMS(SSOL,N,Y,N,Y,Y,Y) TERMS(QSOL,N,Y,N,Y,N,Y) TERMS(OSOL,N,Y,N,Y,Y,Y) TERMS(NSOL,N,Y,N,Y,N,Y) TERMS(MSOL,N,Y,N,Y,Y,Y) TERMS(LSOL,N,Y,N,Y,N,Y) TERMS(KSOL,N,Y,N,Y,Y,Y) TERMS(ISOL,N,Y,N,Y,N,Y) TERMS(HSOL,N,Y,N,Y,Y,Y) TERMS(FSOL,N,Y,N,Y,N,Y) TERMS(CSOL,N,Y,N,Y,Y,Y) TERMS(BSOL,N,Y,N,Y,N,Y) TERMS(3SOL,N,Y,N,Y,Y,Y) DIFCUT =0. ;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. RADIA =0. ;RADIB =0. ENUL =1.0E-05 ;ENUT =0. CP1 =1. ;CP2 =1. ************************************************************ Group 10.Inter-Phase Transfer Processes ************************************************************ Group 11.Initial field variables (PHIs) FIINIT(P1)=1.0E-10 ;FIINIT(U1)=1. FIINIT(V1)=1. ;FIINIT(ZSOL)=1.0E-10 FIINIT(VSOL)=1.0E-10 ;FIINIT(USOL)=1.0E-10 FIINIT(SSOL)=1.0E-10 ;FIINIT(QSOL)=1.0E-10 FIINIT(OSOL)=1.0E-10 ;FIINIT(NSOL)=1.0E-10 FIINIT(MSOL)=1.0E-10 ;FIINIT(LSOL)=1.0E-10 FIINIT(KSOL)=1.0E-10 ;FIINIT(ISOL)=1.0E-10 FIINIT(HSOL)=1.0E-10 ;FIINIT(FSOL)=1.0E-10 FIINIT(CSOL)=1.0E-10 ;FIINIT(BSOL)=1.0E-10 FIINIT(3SOL)=1.0E-10 No PATCHes yet used for this Group INIADD = F 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(HOCS ,CELL , 0, 0, 0, 0, 0, 0, 1, 1) COVAL(HOCS ,ZSOL, FIXFLU , GRND2 ) COVAL(HOCS ,VSOL, FIXFLU , GRND2 ) COVAL(HOCS ,SSOL, FIXFLU , GRND2 ) COVAL(HOCS ,QSOL, FIXFLU , GRND1 ) COVAL(HOCS ,OSOL, FIXFLU , GRND2 ) COVAL(HOCS ,NSOL, FIXFLU , GRND2 ) COVAL(HOCS ,MSOL, FIXFLU , GRND2 ) COVAL(HOCS ,LSOL, FIXFLU , GRND1 ) COVAL(HOCS ,KSOL, FIXFLU , GRND2 ) COVAL(HOCS ,ISOL, FIXFLU , GRND2 ) COVAL(HOCS ,HSOL, FIXFLU , GRND2 ) COVAL(HOCS ,FSOL, FIXFLU , GRND1 ) COVAL(HOCS ,CSOL, FIXFLU , GRND1 ) COVAL(HOCS ,BSOL, FIXFLU , GRND2 ) COVAL(HOCS ,3SOL, FIXFLU , GRND1 ) PATCH(INL1 ,WEST , 1, 1, 1, 20, 1, 1, 1, 1) COVAL(INL1 ,ZSOL,1. ,1. ) COVAL(INL1 ,VSOL,1. ,1. ) COVAL(INL1 ,USOL,1. ,1. ) COVAL(INL1 ,SSOL,1. ,1. ) COVAL(INL1 ,QSOL,1. ,1. ) COVAL(INL1 ,OSOL,1. ,1. ) COVAL(INL1 ,NSOL,1. ,1. ) COVAL(INL1 ,MSOL,1. ,1. ) COVAL(INL1 ,LSOL,1. ,1. ) COVAL(INL1 ,KSOL,1. ,1. ) COVAL(INL1 ,ISOL,1. ,1. ) COVAL(INL1 ,HSOL,1. ,1. ) COVAL(INL1 ,FSOL,1. ,1. ) COVAL(INL1 ,CSOL,1. ,1. ) COVAL(INL1 ,BSOL,1. ,1. ) COVAL(INL1 ,3SOL,1. ,1. ) PATCH(INL2 ,SOUTH , 1, 20, 1, 1, 1, 1, 1, 1) COVAL(INL2 ,ZSOL,1. ,0. ) COVAL(INL2 ,VSOL,1. ,0. ) COVAL(INL2 ,USOL,1. ,0. ) COVAL(INL2 ,SSOL,1. ,0. ) COVAL(INL2 ,QSOL,1. ,0. ) COVAL(INL2 ,OSOL,1. ,0. ) COVAL(INL2 ,NSOL,1. ,0. ) COVAL(INL2 ,MSOL,1. ,0. ) COVAL(INL2 ,LSOL,1. ,0. ) COVAL(INL2 ,KSOL,1. ,0. ) COVAL(INL2 ,ISOL,1. ,0. ) COVAL(INL2 ,HSOL,1. ,0. ) COVAL(INL2 ,FSOL,1. ,0. ) COVAL(INL2 ,CSOL,1. ,0. ) COVAL(INL2 ,BSOL,1. ,0. ) COVAL(INL2 ,3SOL,1. ,0. ) XCYCLE = F EGWF = T WALLCO = GRND2 ************************************************************ Group 14. Downstream Pressure For PARAB ************************************************************ Group 15. Terminate Sweeps LSWEEP = 100 ;ISWC1 = 1 LITHYD = 1 ;LITFLX = 1 ;LITC = 1 ;ITHC1 = 1 SELREF = T RESFAC =1.0E-05 ************************************************************ Group 16. Terminate Iterations LITER(ZSOL)=20 ;LITER(VSOL)=20 LITER(USOL)=20 ;LITER(SSOL)=20 LITER(QSOL)=20 ;LITER(OSOL)=20 LITER(NSOL)=20 ;LITER(MSOL)=20 LITER(LSOL)=20 ;LITER(KSOL)=20 LITER(ISOL)=20 ;LITER(HSOL)=20 LITER(FSOL)=20 ;LITER(CSOL)=20 LITER(BSOL)=20 ;LITER(3SOL)=20 ENDIT(ZSOL)=1.0E-03 ;ENDIT(VSOL)=1.0E-03 ENDIT(USOL)=1.0E-03 ;ENDIT(SSOL)=1.0E-03 ENDIT(QSOL)=1.0E-03 ;ENDIT(OSOL)=1.0E-03 ENDIT(NSOL)=1.0E-03 ;ENDIT(MSOL)=1.0E-03 ENDIT(LSOL)=1.0E-03 ;ENDIT(KSOL)=1.0E-03 ENDIT(ISOL)=1.0E-03 ;ENDIT(HSOL)=1.0E-03 ENDIT(FSOL)=1.0E-03 ;ENDIT(CSOL)=1.0E-03 ENDIT(BSOL)=1.0E-03 ;ENDIT(3SOL)=1.0E-03 ************************************************************ Group 17. Relaxation RELAX(P1,LINRLX,1.) RELAX(U1,LINRLX,1.) RELAX(V1,LINRLX,1.) RELAX(ZSOL,FALSDT,1.0E+09) RELAX(VSOL,FALSDT,1.0E+09) RELAX(USOL,FALSDT,1.0E+09) RELAX(SSOL,FALSDT,0.1) RELAX(QSOL,FALSDT,1.0E+09) RELAX(OSOL,FALSDT,1.0E+09) RELAX(NSOL,FALSDT,1.0E+09) RELAX(MSOL,FALSDT,1.0E+09) RELAX(LSOL,FALSDT,1.0E+09) RELAX(KSOL,FALSDT,0.1) RELAX(ISOL,FALSDT,1.0E+09) RELAX(HSOL,FALSDT,1.0E+09) RELAX(FSOL,FALSDT,1.0E+09) RELAX(CSOL,FALSDT,1.0E+09) RELAX(BSOL,FALSDT,1.0E+09) RELAX(3SOL,FALSDT,1.0E+09) 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(ZSOL)=1.0E+10 ;VARMIN(ZSOL)=-1.0E+10 VARMAX(VSOL)=1.0E+10 ;VARMIN(VSOL)=-1.0E+10 VARMAX(USOL)=1.0E+10 ;VARMIN(USOL)=-1.0E+10 VARMAX(SSOL)=1.0E+10 ;VARMIN(SSOL)=-1.0E+10 VARMAX(QSOL)=1.0E+10 ;VARMIN(QSOL)=-1.0E+10 VARMAX(OSOL)=1.0E+10 ;VARMIN(OSOL)=-1.0E+10 VARMAX(NSOL)=1.0E+10 ;VARMIN(NSOL)=-1.0E+10 VARMAX(MSOL)=1.0E+10 ;VARMIN(MSOL)=-1.0E+10 VARMAX(LSOL)=1.0E+10 ;VARMIN(LSOL)=-1.0E+10 VARMAX(KSOL)=1.0E+10 ;VARMIN(KSOL)=-1.0E+10 VARMAX(ISOL)=1.0E+10 ;VARMIN(ISOL)=-1.0E+10 VARMAX(HSOL)=1.0E+10 ;VARMIN(HSOL)=-1.0E+10 VARMAX(FSOL)=1.0E+10 ;VARMIN(FSOL)=-1.0E+10 VARMAX(CSOL)=1.0E+10 ;VARMIN(CSOL)=-1.0E+10 VARMAX(BSOL)=1.0E+10 ;VARMIN(BSOL)=-1.0E+10 VARMAX(3SOL)=1.0E+10 ;VARMIN(3SOL)=-1.0E+10 ************************************************************ Group 19. Data transmitted to GROUND PARSOL = F ISG62 = 1 SPEDAT(SET,SCHEME,INLCS139,I,4) SPEDAT(SET,SCHEME,INLCS148,I,5) SPEDAT(SET,SCHEME,INLCS143,I,1) SPEDAT(SET,SCHEME,INLCS150,I,3) SPEDAT(SET,SCHEME,INLCS147,I,2) SPEDAT(SET,SCHEME,INLCS138,I,6) SPEDAT(SET,SCHEME,INLCS144,I,7) SPEDAT(SET,SCHEME,INLCS142,I,13) SPEDAT(SET,SCHEME,INLCS136,I,12) SPEDAT(SET,SCHEME,INLCS149,I,14) SPEDAT(SET,SCHEME,INLCS146,I,9) SPEDAT(SET,SCHEME,INLCS141,I,8) SPEDAT(SET,SCHEME,INLCS135,I,11) SPEDAT(SET,SCHEME,INLCS140,I,10) SPEDAT(SET,SCHEME,INLCS145,I,15) SPEDAT(SET,LONGNAME,USOL,C,Upwind) SPEDAT(SET,LONGNAME,CSOL,C,Cds) SPEDAT(SET,LONGNAME,QSOL,C,Quick) SPEDAT(SET,LONGNAME,LSOL,C,Linear_upwind) SPEDAT(SET,LONGNAME,3SOL,C,Cubic_upwind) SPEDAT(SET,LONGNAME,FSOL,C,Fromm's_scheme) SPEDAT(SET,LONGNAME,SSOL,C,Smart) SPEDAT(SET,LONGNAME,KSOL,C,Koren) SPEDAT(SET,LONGNAME,MSOL,C,Minmod) SPEDAT(SET,LONGNAME,VSOL,C,Van_Aldbda) SPEDAT(SET,LONGNAME,BSOL,C,Superbee) SPEDAT(SET,LONGNAME,HSOL,C,Hquick) SPEDAT(SET,LONGNAME,NSOL,C,Van_Leer_1_(Noll)) SPEDAT(SET,LONGNAME,ZSOL,C,Van_Leer_2_(Zhu)) SPEDAT(SET,LONGNAME,OSOL,C,Ospre) SPEDAT(SET,LONGNAME,ISOL,C,UMIST) SPEDAT(SET,GXMONI,PLOTALL,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,N,N,N) OUTPUT(U1,N,N,N,N,N,N) OUTPUT(V1,N,N,N,N,N,N) OUTPUT(ZSOL,Y,N,Y,Y,Y,Y) OUTPUT(VSOL,Y,N,Y,Y,Y,Y) OUTPUT(USOL,Y,N,Y,Y,Y,Y) OUTPUT(SSOL,Y,N,Y,Y,Y,Y) OUTPUT(QSOL,Y,N,Y,Y,Y,Y) OUTPUT(OSOL,Y,N,Y,Y,Y,Y) OUTPUT(NSOL,Y,N,Y,Y,Y,Y) OUTPUT(MSOL,Y,N,Y,Y,Y,Y) OUTPUT(LSOL,Y,N,Y,Y,Y,Y) OUTPUT(KSOL,Y,N,Y,Y,Y,Y) OUTPUT(ISOL,Y,N,Y,Y,Y,Y) OUTPUT(HSOL,Y,N,Y,Y,Y,Y) OUTPUT(FSOL,Y,N,Y,Y,Y,Y) OUTPUT(CSOL,Y,N,Y,Y,Y,Y) OUTPUT(BSOL,Y,N,Y,Y,Y,Y) OUTPUT(3SOL,Y,N,Y,Y,Y,Y) ************************************************************ Group 22. Monitor Print-Out IXMON = 10 ;IYMON = 10 ;IZMON = 1 NPRMON = 100000 ;NPRMNT = 1 ;TSTSWP = -1 UWATCH = T ;USTEER = T HIGHLO = F ************************************************************ Group 23.Field Print-Out & Plot Control NPRINT = 100000 ;NUMCLS = 5 NXPRIN = -1 ;IXPRF = 1 ;IXPRL = 10000 NYPRIN = -1 ;IYPRF = 1 ;IYPRL = 10000 IPLTF = 1 ;IPLTL = -1 ;NPLT = 10 ISWPRF = 1 ;ISWPRL = 100000 ITABL = 3 ;IPROF = 1 ABSIZ =0.5 ;ORSIZ =0.4 NTZPRF = 1 ;NCOLPF = 50 ICHR = 2 ;NCOLCO = 45 ;NROWCO = 20 No PATCHes yet used for this Group ************************************************************ Group 24. Dumps For Restarts SAVE = T ;NOWIPE = F NSAVE =CHAM STOP