TALK=T;RUN(1,1)
PHOTON USE
p;;;;;
up 1 0 0;vi 0.5 1 0.75
gr ou x 1;gr ou y 1;gr ou z 1
gr ou x m;gr ou y m;gr ou z m
gr ou x 1 y 1 2 z 2 2 col 2
gr ou x 6 y 1 2 z 7 7 col 2
gr ou z 4 x 1 4 y 1 3 col 6
gr ou z 6 x 2 5 y 1 3 col 6
ve y 2 sh
msg 3D SHELL-AND-TUBE HEAT EXCHANGER
msg --------------------------------
msg Velocity 1 phase:
msg Press Enter to continue
pause;vi 0 1 0
*msg 3D SHELL-AND-TUBE HEAT EXCHANGER
*msg --------------------------------
*msg Temperature distribution 1 phase:
*con 1sth y 2 sh;in 50
msg Press Enter to continue
pause
con off;red
*msg 3D SHELL-AND-TUBE HEAT EXCHANGER
*msg --------------------------------
*msg Temperature distribution 2 phase:
*con 2ndh y 2 sh;in 50
msg Press e to END
ENDUSE
DISPLAY
This case concerns 3D flow of viscous fluid on the shell side
of a heat exchanger.
Two types of false-time under-relaxation are provided via
PLANT: namely 1. global and 2. local.
For the purpose of illustration, the solution process is
divided into 3 stages, as follows:
* No relaxation for ISWEEP < 101 ,
* Global relaxation for 100 < ISWEEP < 201 ,
* Local relaxation for 200 < ISWEEP .
PLANT information :
* Data input groups used: 17, 19
* Ground groups planted : 13, 19-2, 19-3
* Headings used : SC02??, SC03??, SORC??
* Functions used : None
* Commands used : IF, REGION
ENDDIS
PLANTBEGIN
** Global under-relaxation
RG(2)=AMIN1(XULAST/FLOAT(NX),YVLAST/FLOAT(NY),$
ZWLAST/FLOAT(NZ))/$
AMAX1(U1,:FLO1:/2.)
AMAX1(U1,:FLO1:/2.)
REGION(1,1,2,3,2,2)
IF(ISWEEP.GT.100.AND.ISWEEP.LE.200)
DTFALS(U1)=RG(2)
REGION(1,1,1,1,1,1)
IF(ISWEEP.GT.100.AND.ISWEEP.LE.200)
Global under-relaxation is introduced by PLANTed
codings for DTFALS(U1) at the start of each sweep. It
is assumed to be equal to the smallest of the cell
sizes divided by the largest of inlet mass flux
velocity and local velocity magnitude normal to the
inlet plane. It is applied over the whole domain for
the velocity in question IF isweep is greater than 100
but less or equal than 200.
Here and for next two statemnts, command REGION with
unity arguments is used to economize the operations
needed for equivalences.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
DTFALS(V1)=RG(2)
REGION(1,1,1,1,1,1)
IF(ISWEEP.GT.100.AND.ISWEEP.LE.200)
The above settings do for DTFALS(V1) what has been done
for DTFALS(U1) above.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
DTFALS(W1)=RG(2)
REGION(1,1,1,1,1,1)
IF(ISWEEP.GT.100.AND.ISWEEP.LE.200)
The above settings do for DTFALS(W1) what has been done
for DTFALS(U1).
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
** Local self-steering under-relaxation
PATCH(RELAX,PHASEM,1,NX,1,NY,1,NZ,1,1)
CO=1./TFAL
COVAL(RELAX,U1,GRND,SAME)
IF(ISWEEP.GT.200)
CO=1./TFAL
COVAL(RELAX,V1,GRND,SAME)
IF(ISWEEP.GT.200)
CO=1./TFAL
COVAL(RELAX,W1,GRND,SAME)
IF(ISWEEP.GT.200)
Local self-steering under-relaxation is introduced
through the sources of momentum for the whole domain
defined by PATCH named RELAX, which TYPE is PHASEM,
VALue is SAME, COefficient, which is set to reciprocal
of false-time step. It is applied for each sweep
greater than 200.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
** Local fals-time step
STORE(TFAL);OUTPUT(TFAL,Y,Y,Y,Y,Y,Y)
TFAL=1/(SQRT(U1**2+W1**2+V1**2)/ AMIN1(DXU$
2D*1,AMIN1(DYV2D*1,DZ*1))+ RG(1)/AMIN1(DXU2D*1,AMIN1($
DYV2D*1,DZ*1))**2)
RG(1)/AMIN1(DXU2D*1,AMIN1(DYV2D*1,DZ*1))**2)
IF(ISWEEP.GT.200)
The reciprocal of local self-steering false-time step
is set to the local velocity vector magnitude divided
by smallest distance between walls of continuity cell
in question plus local diffusivities, i.e. kinematic
viscosities, divided by the smallest distance squarred.
The variable TFAL, false-time, is provided to assist
the computations. It is calculated right at the start
of each IZ-slab for all sweeps greter than 200 and can
be used to monitor the variation of local magnitudes of
false-time steps.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
PLANTEND
PHOTON USE
p;;;;;
up 1 0 0;vi 0.5 1 0.75
gr ou x 1;gr ou y 1;gr ou z 1
gr ou x m;gr ou y m;gr ou z m
gr ou x 1 y 1 2 z 2 2 col 2
gr ou x 6 y 1 2 z 7 7 col 2
gr ou z 4 x 1 4 y 1 3 col 6
gr ou z 6 x 2 5 y 1 3 col 6
ve y 2 sh
msg 3D SHELL-AND-TUBE HEAT EXCHANGER
msg --------------------------------
msg Velocity vectors
ENDUSE
************************************************************
Group 1. Run Title and Number
************************************************************
************************************************************
TEXT(In-Form equivalent of PLANT case Z613 )
************************************************************
************************************************************
IRUNN = 1 ;LIBREF = 779
************************************************************
Group 2. Time dependence
STEADY = T
************************************************************
Group 3. X-Direction Grid Spacing
CARTES = T
NX = 5
XULAST =1.
XFRAC(1)=0.2 ;XFRAC(2)=0.4
XFRAC(3)=0.6 ;XFRAC(4)=0.8
XFRAC(5)=1.
************************************************************
Group 4. Y-Direction Grid Spacing
NY = 3
YVLAST =0.5
YFRAC(1)=0.333333 ;YFRAC(2)=0.666667
YFRAC(3)=1.
************************************************************
Group 5. Z-Direction Grid Spacing
PARAB = F
NZ = 8
ZWLAST =4.
ZFRAC(1)=0.125 ;ZFRAC(2)=0.25
ZFRAC(3)=0.375 ;ZFRAC(4)=0.5
ZFRAC(5)=0.625 ;ZFRAC(6)=0.75
ZFRAC(7)=0.875 ;ZFRAC(8)=1.
************************************************************
Group 6. Body-Fitted Coordinates
************************************************************
Group 7. Variables: STOREd,SOLVEd,NAMEd
ONEPHS = T
NAME(1)=P1 ;NAME(3)=U1
NAME(5)=V1 ;NAME(7)=W1
NAME(147)=TFAL ;NAME(148)=HPOR
NAME(149)=NPOR ;NAME(150)=EPOR
* 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,Y,N,N,N,Y)
SOLUTN(U1,Y,Y,N,N,N,Y)
SOLUTN(V1,Y,Y,N,N,N,Y)
SOLUTN(W1,Y,Y,N,N,N,Y)
SOLUTN(TFAL,Y,N,N,N,N,Y)
SOLUTN(HPOR,Y,N,N,N,N,Y)
SOLUTN(NPOR,Y,N,N,N,N,Y)
SOLUTN(EPOR,Y,N,N,N,N,Y)
EPOR = 150 ;HPOR = 148 ;NPOR = 149 ;VPOR = 0
************************************************************
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(P1,Y,Y,Y,N,Y,Y)
TERMS(U1,Y,Y,Y,Y,Y,Y)
TERMS(V1,Y,Y,Y,Y,Y,Y)
TERMS(W1,Y,Y,Y,Y,Y,Y)
DIFCUT =0.5 ;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 =10. ;ENUT =0.
PRNDTL(U1)=1. ;PRNDTL(V1)=1.
PRNDTL(W1)=1.
PRT(U1)=1. ;PRT(V1)=1.
PRT(W1)=1.
CP1 =1. ;CP2 =1.
************************************************************
Group 10.Inter-Phase Transfer Processes
************************************************************
Group 11.Initial field variables (PHIs)
FIINIT(P1)=1.0E-10 ;FIINIT(U1)=0.
FIINIT(V1)=0. ;FIINIT(W1)=0.1
FIINIT(TFAL)=1.0E-10 ;FIINIT(HPOR)=0.5
FIINIT(NPOR)=0.5 ;FIINIT(EPOR)=0.5
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(INLET1 ,CELL , 1, 1, 2, 3, 2, 2, 1, 1000)
COVAL(INLET1 ,P1 , FIXFLU ,0.05 )
PATCH(OUTLET1 ,EAST , 5, 5, 2, 3, 7, 7, 1, 1000)
COVAL(OUTLET1 ,P1 ,1. ,0. )
PATCH(BAFFLE1 ,HIGH , 1, 4, 1, 3, 3, 3, 1, 1000)
COVAL(BAFFLE1 ,W1 , FIXVAL ,0. )
PATCH(BAFFLE2 ,HIGH , 2, 5, 1, 3, 5, 5, 1, 1000)
COVAL(BAFFLE2 ,W1 , FIXVAL ,0. )
PATCH(RELAX ,PHASEM, 1, 5, 1, 3, 1, 8, 1, 1)
COVAL(RELAX ,U1 ,0. ,0. )
COVAL(RELAX ,V1 ,0. ,0. )
COVAL(RELAX ,W1 ,0. ,0. )
PATCH(PATCH1 ,CELL , 1, 1, 2, 3, 2, 2, 1, 1)
PATCH(PATCH2 ,CELL , 1, 1, 1, 1, 8, 8, 1, 1)
PATCH(RELAXU ,PHASEM, 1, 4, 1, 3, 1, 8, 1, 1)
COVAL(RELAXU ,U1 ,In-Form:source - see Grp 19)
PATCH(RELAXV ,PHASEM, 1, 5, 1, 2, 1, 8, 1, 1)
COVAL(RELAXV ,V1 ,In-Form:source - see Grp 19)
PATCH(RELAXW ,PHASEM, 1, 5, 1, 3, 1, 7, 1, 1)
COVAL(RELAXW ,W1 ,In-Form:source - see Grp 19)
XCYCLE = F
EGWF = T
WALLCO = GRND2
************************************************************
Group 14. Downstream Pressure For PARAB
************************************************************
Group 15. Terminate Sweeps
LSWEEP = 400 ;ISWC1 = 1
LITHYD = 1 ;LITFLX = 1 ;LITC = 1 ;ITHC1 = 1
SELREF = T
RESFAC =1.0E-05
************************************************************
Group 16. Terminate Iterations
LITER(P1)=100 ;LITER(U1)=10
LITER(V1)=10 ;LITER(W1)=10
ENDIT(P1)=1.0E-03 ;ENDIT(U1)=1.0E-03
ENDIT(V1)=1.0E-03 ;ENDIT(W1)=1.0E-03
************************************************************
Group 17. Relaxation
RELAX(P1,LINRLX,1.)
RELAX(U1,FALSDT,1.)
RELAX(V1,FALSDT,1.)
RELAX(W1,FALSDT,1.)
RELAX(TFAL,LINRLX,1.)
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(W1)=1.0E+06 ;VARMIN(W1)=-1.0E+06
VARMAX(TFAL)=1.0E+10 ;VARMIN(TFAL)=-1.0E+10
VARMAX(HPOR)=1.0E+10 ;VARMIN(HPOR)=-1.0E+10
VARMAX(NPOR)=1.0E+10 ;VARMIN(NPOR)=-1.0E+10
VARMAX(EPOR)=1.0E+10 ;VARMIN(EPOR)=-1.0E+10
************************************************************
Group 19. Data transmitted to GROUND
PARSOL = F
ISG62 = 1
SPEDAT(SET,MAKE,PARAM,C,=1.E-10)
SPEDAT(SET,STORED,PARAM!PATCH1,C,=MIN(XULAST/5&MIN(YVLAST/3&ZWLAS$)
SPEDAT(SET,STORED,PARAM!PATCH1,C,T/8))/MAX(U1&0.1/2.)!ZSLFIN)
SPEDAT(SET,MAKE,REL,C,=1.E-10)
SPEDAT(SET,STORED,REL!PATCH2,C,=PARAM!ZSLFIN)
SPEDAT(SET,STORED,DTFALS(U1),C,=REL!IF(ISWEEP.GT.100.AND.ISWEEP.L$)
SPEDAT(SET,STORED,DTFALS(U1),C,E.200)!ZSLFIN)
SPEDAT(SET,STORED,DTFALS(V1),C,=REL!IF(ISWEEP.GT.100.AND.ISWEEP.L$)
SPEDAT(SET,STORED,DTFALS(V1),C,E.200)!ZSLFIN)
SPEDAT(SET,STORED,DTFALS(W1),C,=REL!IF(ISWEEP.GT.100.AND.ISWEEP.L$)
SPEDAT(SET,STORED,DTFALS(W1),C,E.200)!ZSLFIN)
SPEDAT(SET,STORED,TFAL,C,=1./(SQRT(U1^2+W1^2+V1^2)/MIN(DXU&MIN(DY$)
SPEDAT(SET,STORED,TFAL,C,V&DZ))+10./MIN(DXU&MIN(DYV&DZ))^2)!IF(IS$)
SPEDAT(SET,STORED,TFAL,C,WEEP.GE.200)!ZSLFIN)
SPEDAT(SET,SOURCE,U1!RELAXU,C,=1./TFAL*U1!IF(ISWEEP.GT.200))
SPEDAT(SET,SOURCE,U1!RELAXU,C,=-1./TFAL*U1!LINE!IF(ISWEEP.GT.200))
SPEDAT(SET,SOURCE,V1!RELAXV,C,=1./TFAL*V1!IF(ISWEEP.GT.200))
SPEDAT(SET,SOURCE,V1!RELAXV,C,=-1./TFAL*V1!LINE!IF(ISWEEP.GT.200))
SPEDAT(SET,SOURCE,W1!RELAXW,C,=1./TFAL*W1!IF(ISWEEP.GT.200))
SPEDAT(SET,SOURCE,W1!RELAXW,C,=-1./TFAL*W1!LINE!IF(ISWEEP.GT.200))
SPEDAT(SET,GXMONI,PLOTALL,L,T)
RG( 1) =10.
************************************************************
Group 20. Preliminary Printout
DISTIL = T ;NULLPR = F
NDST = 0
DSTTOL =1.0E-02
EX(P1)=371.100006 ;EX(U1)=0.3
EX(V1)=0.02753 ;EX(W1)=0.3253
EX(TFAL)=2.757E-03 ;EX(HPOR)=0.5
EX(NPOR)=0.5 ;EX(EPOR)=0.5
************************************************************
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,Y,Y,Y)
OUTPUT(U1,Y,N,Y,Y,Y,Y)
OUTPUT(V1,Y,N,Y,Y,Y,Y)
OUTPUT(W1,Y,N,Y,Y,Y,Y)
OUTPUT(TFAL,Y,Y,Y,Y,Y,Y)
OUTPUT(HPOR,N,N,N,N,N,N)
OUTPUT(NPOR,N,N,N,N,N,N)
OUTPUT(EPOR,N,N,N,N,N,N)
************************************************************
Group 22. Monitor Print-Out
IXMON = 3 ;IYMON = 2 ;IZMON = 4
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
NZPRIN = -1 ;IZPRF = 1 ;IZPRL = 10000
XZPR = T ;YZPR = F
IPLTF = 1 ;IPLTL = 400 ;NPLT = 1
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