```
TALK=T;RUN(1,1)
PHOTON USE
x;x1;;
msg(  2D zigzag channel
gr z 1
pause
x;x2;;
msg(  2D periodically broken channel
gr z 1
pause
x;x3;;
msg(  2D corrugated channel
gr z 1
ENDUSE
DISPLAY
This input file is  the  one  of  the  series  of  three
"sample-kits".  It concerns the use of Fourier series to
generate the 2D BFC  grids.  It  is  wholly  focused  on
calculation  of grid corner coordinates.  Therefore,  no
other actions are supported by input data.

It also differs from  the  previous  examples  in  being
arranged  as  unsteady problem:  at each time moment the
new BFC grid is PLANTed and dumped into  specified  file
to be viewed by PHOTON.
ENDDIS
PLANTBEGIN
1.   2D zigzag channel
-----------------
REAL(PI,LENGTH,WIDTH)
** Pi number
PI=3.14159
** Channel length
LENGTH=6.*PI
** Channel width
WIDTH=2.*ZWLAST

XC=:LENGTH:/FLOAT(NX)*FLOAT(I-1)
YC=:PI:/2.-4/:PI:*(COS(XC)+COS(3*XC)/9+\$
COS(5*XC)/25+                         COS(7*X\$
C)/49+COS(9*XC)/81+                    COS(11*XC)/121+COS(13*XC)/16\$
9)+                    :WIDTH:*FLOAT(J-1)/FLOAT(NY)
ZC=ZWLAST*FLOAT(K-1)/FLOAT(NZ)
IF(ISTEP.EQ.1.AND.ISWEEP.EQ.1)
The above   three   statements  contain  rather  lengthy
algebraic  formulae.  All  together  they  provide   the
calculation of cartesian coordinates for cell corners of
the grid fitted the zig-zag channel of 2m width and  6pi
length, as can be seen by PHOTON. The grid is uniform in
both direction.  The generation is  made  at  the  first
sweep of the first time step.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<

2. 2D periodically broken channel
-------------------------------
REAL(AA,ALFA,TWOPI)
TWOPI=2.*PI
** Shape factors
AA=0.75;ALFA=TWOPI/12

XC=:LENGTH:/FLOAT(NX)*FLOAT(I-1)
YC=8/:TWOPI:*:AA:/:ALFA:*(SIN(0.75)*SIN(XC)+\$
SIN(3*2.*3.14159/12)* SIN(3*XC)/9+                    SIN(5*\$
2.*3.14159/12)*SIN(5*XC)/25+                    SIN(7*2.*3.14159/12\$
)*SIN(7*XC)/49+                    SIN(9*2.*3.14159/12)*SIN(9*XC)/8\$
1+                 SIN(11*2.*3.14159/12)*SIN(11*XC)/121+\$
SIN(13*2.*3.14159/12)*SIN(13*XC)/169+                 SIN(15*\$
2.*3.14159/12)*SIN(15*XC)/225+                 SIN(17*2.*3.14159/12\$
)*SIN(17*XC)/289+                SIN(19*2.*3.14159/12)*SIN(19*XC)/3\$
61)+                2.*ZWLAST*FLOAT(J-1)/FLOAT(NY)
ZC=ZWLAST*FLOAT(K-1)/FLOAT(NZ)
IF(ISTEP.EQ.2.AND.ISWEEP.EQ.1)
The above three  statements  perform  the  corresponding
functions  for the generation of the uniform grid fitted
the periodically broken channel. It is made at the first
sweep of the second time step.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<

3. 2D corrugated channel
------------------------

XC=:LENGTH:/FLOAT(NX)*FLOAT(I-1)
YC=FLOAT(J-1)/FLOAT(NY)*(1/3.14159+\$
0.5*SIN(XC-3.14159/2)-            2/3.14159*(COS(2*(XC-3.14159\$
/2))/3+                      COS(4*(XC-3.14159/2))/15+\$
COS(6*(XC-3.14159/2))/35+                      COS(8*(XC-3\$
.14159/2))/63+                     COS(10*(XC-3.14159/2))/99+\$
COS(12*(XC-3.14159/2))/143))+                  2.*ZWLAS\$
T*FLOAT(J-1)/FLOAT(NY)
ZC=ZWLAST*FLOAT(K-1)/FLOAT(NZ)
IF(ISTEP.EQ.3.AND.ISWEEP.EQ.1)
At the first sweep of the third time step the generation
of the last grid of the series is made governed by above
formulae.
<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<
PLANTEND
************************************************************
Group 1. Run Title and Number
************************************************************
************************************************************

TEXT( Analytical BFC grids : 2D sample-kit.  )

************************************************************
************************************************************

IRUNN = 1 ;LIBREF = 607
************************************************************
Group 2. Time dependence
* Set overall time and no. of steps
TFIRST =0. ;TLAST =3.
FSTEP = 1 ;LSTEP = 3
TFRAC(1)=0.333333 ;TFRAC(2)=0.666667
TFRAC(3)=1.
************************************************************
Group 3. X-Direction Grid Spacing
CARTES = T
NX = 150
XULAST =1.
************************************************************
Group 4. Y-Direction Grid Spacing
NY = 20
YVLAST =1.
************************************************************
Group 5. Z-Direction Grid Spacing
PARAB = F
NZ = 1
ZWLAST =1.
************************************************************
Group 6. Body-Fitted Coordinates
BFC = T ;NONORT = F
NCRT = -1
RSTGEO = F ;SAVGEO = F
UUP = F ;VUP = F ;WUP = F
NGEOM =CHAM
NAMXYZ =CHAM
ANGMIN =20.
DOMAIN(   1, 151,   1,  21,   1,   2)
* Set fixed sub-domain
FIXDOM(   1,   0,   0,   0,   0,   0,   0)
FIXDOM(   2,   0,   0,   0,   0,   0,   0)
FIXDOM(   3,   0,   0,   0,   0,   0,   0)
FIXDOM(   4,   0,   0,   0,   0,   0,   0)
FIXDOM(   5,   0,   0,   0,   0,   0,   0)
FIXDOM(   6,   0,   0,   0,   0,   0,   0)
FIXDOM(   7,   0,   0,   0,   0,   0,   0)
FIXDOM(   8,   0,   0,   0,   0,   0,   0)
FIXDOM(   9,   0,   0,   0,   0,   0,   0)
FIXDOM(  10,   0,   0,   0,   0,   0,   0)
LIJ = F ;LJK = T ;LIK = F
************************************************************
Group 7. Variables: STOREd,SOLVEd,NAMEd
ONEPHS = T
NAME(150)=MARK
* Y in SOLUTN argument list denotes:
* 1-stored 2-solved 3-whole-field
* 4-point-by-point 5-explicit 6-harmonic averaging
SOLUTN(MARK,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(MARK,N,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.
ENUL =1.0E-05 ;ENUT =0.
PRNDTL(MARK)=1.
PRT(MARK)=1.
CP1 =1. ;CP2 =1.
************************************************************
Group 10.Inter-Phase Transfer Processes
************************************************************
Group 11.Initial field variables (PHIs)
FIINIT(MARK)=1.0E-10
No PATCHes yet used for this Group
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
No PATCHes yet used for this Group
XCYCLE = F
EGWF = T
WALLCO = GRND2
************************************************************
Group 14. Downstream Pressure For PARAB
************************************************************
Group 15. Terminate Sweeps
LSWEEP = 1 ;ISWC1 = 1
LITHYD = 1 ;LITFLX = 1 ;LITC = 1 ;ITHC1 = 1
SELREF = T
RESFAC =1.0E-04
************************************************************
Group 16. Terminate Iterations
LITER(MARK)=20
ENDIT(MARK)=1.0E-03
************************************************************
Group 17. Relaxation
RELAX(MARK,FALSDT,1.0E+09)
OVRRLX =0.
EXPERT = F ;NNORSL = F
************************************************************
Group 18. Limits
VARMAX(MARK)=1.0E+10 ;VARMIN(MARK)=-1.0E+10
************************************************************
Group 19. Data transmitted to GROUND
NAMSAT =MOSG
PARSOL = F
ISG62 = 1
SPEDAT(SET,GXMONI,TRANSIENT,L,F)
************************************************************
Group 20. Preliminary Printout
DISTIL = T ;NULLPR = F
NDST = 0
DSTTOL =1.0E-02
EX(MARK)=1.0E-10
************************************************************
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(MARK,Y,N,Y,Y,Y,Y)
************************************************************
Group 22. Monitor Print-Out
IXMON = 1 ;IYMON = 1 ;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
NTPRIN = 100000 ;ISTPRF = 1 ;ISTPRL = 100000
NXPRIN = -1 ;IXPRF = 1 ;IXPRL = 10000
NYPRIN = -1 ;IYPRF = 1 ;IYPRL = 10000
IPLTF = 1 ;IPLTL = -1 ;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
IDISPA = 1 ;IDISPB = 0 ;IDISPC = 0
CSG1    ='PHI'
CSG2    ='XYZ'
STOP
```