TEXT(YX SCALAR CONVECTION WITH RECIRCULATION
TITLE
mesg( PC486/50 time last reported as 2.5 min
DISPLAY
Numerical Schemes validation example:
2-d x-y, Cartesian, steady, elliptic simulation
The problem considered is pure convection of scalar step in a
prescribed recirculating velocity field. The flow geometry is a
rectangular domain of 2 units length (X) and unit height (Y). The
flow enters through the inlet in the range X=(-1,0), and then
circulates clockwise through 180 degrees to exit in the range
X=(0,1). At inlet, the scalar C=0 for X in the range (-1,-0.5)
and C=1 in the range (0,1). Since physical diffusion is absent,
this step change should be convected by the recirculating flow so
as to appear as a step change at the outlet; thus, the exact
solution is C=1 for X in the range (0,0.5) and C=0 for X in the
range (0.5,1). The example compares the solution for 6 different
linear schemes and 9 non-linear schemes for the discretisation of
convection. NB: SATELLITE takes some time to process PIL commands
ENDDIS
This test case was devised by R.M.Smith and A.G.Hutton [1982]
(Num.Heat Transfer, Vol.5, p439) so as to provide a searching
test of numerical convection schemes, especially for schemes based
on 1d considerations. The velocity field is prescribed as:
U = 2*Y*(1-X*X) and V = -2*X*(1-Y*Y)
with X in the range (-1,+1) and Y in the range (0,1).
PHOTON USE
p
0.20443E+04 0.15633E+04 CR
vec z 1 sh;gr ou z 1
stream 2d z 1
0 1 10
redr
msg streamlines and vectors
msg press to continue
pause
cl;con usol z 1 fi;.1;gr z 1
msg upwind differencing scheme
msg press to continue
pause
cl;con qsol z 1 fi;.1;gr z 1
msg QUICK scheme
msg press to continue
pause
cl;con bsol z 1 fi;.1;gr z 1
msg SUPERBEE scheme
msg press to end
pause
END USE
REAL(FLOLY,CIN,DTF)
XULAST=2.0;YVLAST=1.;NX=20;NY=20
GROUP 3. X-direction grid specification
GRDPWR(X,NX,XULAST,1.0)
GROUP 4. Y-direction grid specification
GRDPWR(Y,NY,YVLAST,1.0)
GROUP 7. Variables stored, solved & named
** linear schemes assigned to scalars
** USOL = uds CSOL = cds
QSOL = quick LSOL = linear upwind
3SOL = cubic upwind FSOL = fromm's scheme
SOLVE(C1);NAME(C1)=USOL;SOLVE(C2);NAME(C2)=CSOL
SOLVE(C3);NAME(C3)=QSOL;SOLVE(C4);NAME(C4)=LSOL
SOLVE(C5);NAME(C5)=3SOL;SOLVE(C6);NAME(C6)=FSOL
** non-linear schemes assigned to scalars
** SSOL = SMART KSOL = KOREN
MSOL = MINMOD VSOL = VAN ALDBDA
BSOL = SUPERBEE HSOL = HQUICK
NSOL = VAN LEER 1 (NOLL) ZSOL = VAN LEER 2 (ZHU)
OSOL = OSPRE
SOLVE(C7);NAME(C7)=SSOL;SOLVE(C8);NAME(C8)=KSOL
SOLVE(C9);NAME(C9)=MSOL;SOLVE(C10);NAME(C10)=VSOL
SOLVE(C11);NAME(C11)=BSOL;SOLVE(C12);NAME(C12)=HSOL
SOLVE(C13);NAME(C13)=NSOL;SOLVE(C14);NAME(C14)=ZSOL
SOLVE(C15);NAME(C15)=OSOL;STORE(U1,V1)
GROUP 8. Terms (in differential equations) & devices
TERMS(USOL,P,P,N,P,P,P);TERMS(CSOL,P,P,N,P,P,P)
TERMS(QSOL,P,P,N,P,P,P);TERMS(LSOL,P,P,N,P,P,P)
TERMS(3SOL,P,P,N,P,P,P);TERMS(FSOL,P,P,N,P,P,P)
TERMS(SSOL,P,P,N,P,P,P);TERMS(KSOL,P,P,N,P,P,P)
TERMS(MSOL,P,P,N,P,P,P);TERMS(VSOL,P,P,N,P,P,P)
TERMS(BSOL,P,P,N,P,P,P);TERMS(HSOL,P,P,N,P,P,P)
TERMS(NSOL,P,P,N,P,P,P);TERMS(ZSOL,P,P,N,P,P,P)
TERMS(OSOL,P,P,N,P,P,P)
** Select numerical schemes for convection
SCHEME(QUICK,QSOL);SCHEME(CDS,CSOL);SCHEME(LUS,LSOL)
SCHEME(CUS,3SOL);SCHEME(FROMM,FSOL);SCHEME(SMART,SSOL)
SCHEME(KOREN,KSOL);SCHEME(MINMOD,MSOL);SCHEME(VANALB,VSOL)
SCHEME(SUPBEE,BSOL);SCHEME(HQUICK,HSOL);SCHEME(VANL1,NSOL)
SCHEME(VANL2,ZSOL);SCHEME(OSPRE,OSOL)
GROUP 11. Initialization of variable or porosity fields
ARRAY(YG,REAL,NY);ARRAY(XG,REAL,NX)
REAL(XU,XUT,XUT2,XGT,YV,UVEL,VVEL);INTEGER(II1,JJ1)
XU=XFRAC(1);XG(1)=0.5*XU
DO II=2,NX
+ II1=II-1
+ XG(II)=0.5*(XFRAC(II)+XFRAC(II1))
ENDDO
YV=YFRAC(1);YG(1)=0.5*YV
DO JJ=2,NY
+ JJ1=JJ-1
+ YG(JJ)=0.5*(YFRAC(JJ)+YFRAC(JJ1))
ENDDO
DO II=1,NX
+ XUT=XFRAC(II)*XULAST-1.0;XUT2=XUT*XUT
+ XGT=XG(II)*XULAST-1.0
DO JJ=1,NY
+ YV=YFRAC(JJ);UVEL=2.*YG(JJ)*(1.-XUT2)
+ VVEL=-2.*XGT*(1.-YV*YV)
+ PATCH(INX:II:Y:JJ:,INIVAL,II,II,JJ,JJ,1,NZ,1,LSTEP)
+ COVAL(INX:II:Y:JJ:,U1,ONLYMS,UVEL)
+ COVAL(INX:II:Y:JJ:,V1,ONLYMS,VVEL)
ENDDO
ENDDO
GROUP 13. Boundary conditions and special sources
Patches for flow entry
DO II=1,NX/2
+ PATCH(INL:II:,SOUTH,II,II,1,1,1,NZ,1,LSTEP)
+ XUT=XG(II)*XULAST;XGT=XUT-1.0
+ VVEL=-2.*XGT;FLOLY=RHO1*VVEL;CIN=0.0
IF(XUT.GE.0.5) THEN
+ CIN=1.0
ENDIF
+ COVAL(INL:II:,USOL,FLOLY,CIN);COVAL(INL:II:,CSOL,FLOLY,CIN)
+ COVAL(INL:II:,QSOL,FLOLY,CIN);COVAL(INL:II:,LSOL,FLOLY,CIN)
+ COVAL(INL:II:,3SOL,FLOLY,CIN);COVAL(INL:II:,FSOL,FLOLY,CIN)
+ COVAL(INL:II:,SSOL,FLOLY,CIN);COVAL(INL:II:,KSOL,FLOLY,CIN)
+ COVAL(INL:II:,MSOL,FLOLY,CIN);COVAL(INL:II:,VSOL,FLOLY,CIN)
+ COVAL(INL:II:,BSOL,FLOLY,CIN);COVAL(INL:II:,HSOL,FLOLY,CIN)
+ COVAL(INL:II:,NSOL,FLOLY,CIN);COVAL(INL:II:,ZSOL,FLOLY,CIN)
+ COVAL(INL:II:,OSOL,FLOLY,CIN)
ENDDO
GROUP 15. Termination of sweeps
LSWEEP=250
GROUP 16. TERMINATION OF ITERATIONS
GROUP 17. Under-relaxation devices
DTF=0.1*YVLAST/FLOLY
RELAX(SSOL,FALSDT,0.1*DTF);RELAX(KSOL,FALSDT,DTF)
RELAX(BSOL,FALSDT,DTF)
GROUP 19. Data communicated by satellite to GROUND
GROUP 20. Preliminary print-out
ECHO=F
GROUP 21. Print-out of variables
OUTPUT(U1,N,N,N,N,N,N);OUTPUT(V1,N,N,N,N,N,N)
GROUP 22. Spot-value print-out
IXMON=NX-3;IYMON=8;IZMON=1;TSTSWP=-1
ITABL=3;NPLT=10;TSTSWP=-1
GROUP 23. Field print-out and plot control
GROUP 24. Dumps for restarts