GROUP 1. Run identifiers and other preliminaries.
*** For X,Z plane set CXYZ=X (default)
*** For X,Y plane set CXYZ=Y
*** For Y,Z plane set CXYZ=Z
CHAR(CXYZ)
REAL(VEL)
INTEGER(IADD)
MESG(
MESG(Select 2d plane, for xz ...X default
MESG( for yx ...Y
MESG( for zy ...Z
MESG(
READVDU(CXYZ,CHAR,X)
MESG(
MESG(Negative direction (y/N)
READVDU(ANS,CHAR,N)
GROUP 3,4,5. x,y,z-direction grid specification.
IF(:CXYZ:.EQ.X) THEN
TEXT(SHOWER PLATE TEST- X :D209
TITLE
+ NX=10 ; NZ=10
ELSE
+ IF(:CXYZ:.EQ.Y) THEN
TEXT(SHOWER PLATE TEST- Y :D209
TITLE
+ NX=10 ; NY=10
+ ELSE
TEXT(SHOWER PLATE TEST- Z :D209
TITLE
+ NY=10 ; NZ=10
+ ENDIF
ENDIF
IF(:ANS:.EQ.Y) THEN
+ VEL=-1.0 ; IADD=3
ELSE
+ VEL=1.0 ; IADD=0
ENDIF
XULAST=0.1 ; YVLAST=0.1 ; ZWLAST=0.1
l(unigrid
GROUP 7. Variables (including porosities) named,
stored & solved.
SOLVE(P1,TEM1)
IF(:CXYZ:.EQ.X) THEN
+ SOLVE(U1,W1)
ELSE
+ IF(:CXYZ:.EQ.Y) THEN
+ SOLVE(U1,V1)
+ ELSE
+ SOLVE(V1,W1)
+ ENDIF
ENDIF
SOLUTN(P1,Y,Y,Y,N,N,N) ; SOLUTN(TEM1,Y,Y,Y,N,N,Y)
NAME(C1)=S116 ; NAME(C2)=S140
STORE(S116)
SOLVE(S140)
SOLUTN(S140,Y,Y,Y,N,N,Y)
STORE(RHO1,CNDT,SPHT,DEPO,PRPS,BLOK,ENUL)
GROUP 8. Terms (in differential equations) and devices.
IVARBK=-1 ; ISOLBK=1
ISOLX=0 ; ISOLY=0 ; ISOLZ=0
USOURC=T ; UDIFNE=T ; DIFCUT=0.0
GROUP 9. Properties of the medium (or media).
PRNDTL(S116)=-GRND8 ; PRNDTL(S140)=-GRND8
PRESS0=133.0
; ;
CSG10='q1'
MATFLG=T;IMAT=1
70 GRND8 GRND8 GRND8 GRND8 1.000
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
GROUP 11. Initialization of fields of variables,
porosities, etc.
INIADD=F
FIINIT(P1)=0.0 ; FIINIT(TEM1)=290 ; FIINIT(S116)=0.887
FIINIT(S140)=0.113 ; FIINIT(PRPS)=70 ; FIINIT(BLOK)=1.0
IF(:CXYZ:.EQ.X) THEN
+ FIINIT(U1)=0.0 ; FIINIT(W1)=0.0
+ CONPOR(SHOW1,-1,CELL,5,6,#1,#1,#1,#1)
ELSE
+ IF(:CXYZ:.EQ.Y) THEN
+ FIINIT(U1)=0.0 ; FIINIT(V1)=0.0
+ CONPOR(SHOW1,-1,CELL,#1,#1,5,6,#1,#1)
+ ELSE
+ FIINIT(V1)=0.0 ; FIINIT(W1)=0.0
+ CONPOR(SHOW1,-1,CELL,#1,#1,#1,#1,5,6)
+ ENDIF
ENDIF
COVAL(SHOW1,PRPS,0.0,111) ; COVAL(SHOW1,BLOK,0.0,2)
GROUP 13. Boundary conditions and special sources
REAL(RHOIN,UAV) ; RHOIN=1.572E-3 ; UAV=1.345
IF(:CXYZ:.EQ.X) THEN
+ IF(:ANS:.EQ.Y) THEN
+ INLET(INLET,EAST,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,WEST,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ELSE
+ INLET(INLET,WEST,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,EAST,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ENDIF
+ VALUE(INLET,U1,VEL*UAV) ; VALUE(INLET,W1,0.0)
+ VALUE(OUT,U1,SAME) ; VALUE(OUT,W1,SAME)
+ PATCH(WAND3,LWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND3,U1,1.0,0.0)
+ PATCH(WAND4,HWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND4,U1,1.0,0.0)
+ PATCH(SHWR1,EAST,5,6,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(SHWR1,U1,0.5,GRND7)
ELSE
+ IF(:CXYZ:.EQ.Y) THEN
+ IF(:ANS:.EQ.Y) THEN
+ INLET(INLET,NORTH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,SOUTH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ELSE
+ INLET(INLET,SOUTH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,NORTH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ENDIF
+ VALUE(INLET,V1,VEL*UAV) ; VALUE(INLET,U1,0.0)
+ VALUE(OUT,U1,SAME) ; VALUE(OUT,V1,SAME)
+ PATCH(WAND3,WWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND3,V1,1.0,0.0)
+ PATCH(WAND4,EWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND4,V1,1.0,0.0)
+ PATCH(SHWR1,NORTH,#1,#1,5,6,#1,#1,#1,#NREGT)
+ COVAL(SHWR1,V1,0.5,GRND7)
+ ELSE
+ IF(:ANS:.EQ.Y) THEN
+ INLET(INLET,HIGH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,LOW,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ELSE
+ INLET(INLET,LOW,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ OUTLET(OUT,HIGH,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ ENDIF
+ VALUE(INLET,W1,VEL*UAV) ; VALUE(INLET,V1,0.0)
+ VALUE(OUT,V1,SAME) ; VALUE(OUT,W1,SAME)
+ PATCH(WAND3,SWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND3,W1,1.0,0.0)
+ PATCH(WAND4,NWALL,#1,#1,#1,#1,#1,#1,#1,#NREGT)
+ COVAL(WAND4,W1,1.0,0.0)
+ PATCH(SHWR1,HIGH,#1,#1,#1,#1,5,6,#1,#NREGT)
+ COVAL(SHWR1,W1,0.5,GRND7)
+ ENDIF
ENDIF
VALUE(INLET,TEM1,290) ; VALUE(INLET,P1,UAV*RHOIN)
VALUE(INLET,S116,0.887) ; VALUE(INLET,S140,0.113)
VALUE(OUT,P1,0) ; VALUE(OUT,TEM1,SAME)
VALUE(OUT,S116,SAME) ; VALUE(OUT,S140,SAME)
COVAL(WAND3,TEM1,1.0,290.0) ; COVAL(WAND4,TEM1,1.0,290.0)
COVAL(SHWR1,P1,32000,GRND7) ; COVAL(SHWR1,S140,ONLYMS,GRND7)
COVAL(SHWR1,TEM1,ONLYMS,GRND7)
GROUP 15. Termination criteria for sweeps and
outer iterations.
LSWEEP=100
GROUP 16. Termination criteria for inner iterations.
SELREF=T; RESFAC=1.0000E-20
GROUP 17. Under-relaxation and related devices.
REAL(MAXV,MINL,RELX)
MAXV=1 ; MINL=1.0E-2 ; RELX=1.0E-1
RELAX(P1,LINRLX,0.8) ; RELAX(TEM1,LINRLX,0.3)
IF(:CXYZ:.EQ.X) THEN
+ RELAX(U1,FALSDT,MINL/MAXV*RELX)
+ RELAX(W1,FALSDT,MINL/MAXV*RELX)
+ IXMON=4+IADD ; IZMON=5 ; NXPRIN=1
ELSE
+ IF(:CXYZ:.EQ.Y) THEN
+ RELAX(U1,FALSDT,MINL/MAXV*RELX)
+ RELAX(V1,FALSDT,MINL/MAXV*RELX)
+ IYMON=4+IADD ; IXMON=5 ; NYPRIN=1
+ ELSE
+ RELAX(V1,FALSDT,MINL/MAXV*RELX)
+ RELAX(W1,FALSDT,MINL/MAXV*RELX)
+ IZMON=4+IADD ; IYMON=5 ; NZPRIN=1
+ ENDIF
ENDIF
REAL(TREL) ; TREL=1.0
RELAX(S140,FALSDT,TREL)
GROUP 18. Limits on variables values or increments
to them.
VARMIN(S116)=1.0E-20 ; VARMAX(S116)=1.0
VARMIN(S140)=1.0E-20 ; VARMAX(S140)=1.0
VARMIN(TEM1)=200.0 ; VARMAX(TEM1)=2000.0
GROUP 19. Data communicated by SATELLITE to GROUND
NAMGRD=CVD
GROUP 23. Variable-by-variable field printout and plot
and/or tabulation of spot-values and residuals.
YZPR=T
tstswp=-1
GROUP 24. Preparation for continuation runs.