```
PHOTON USE
P;;;;

GR Z 1 X 1 2 Y 21 25
GR Z 1 X 3 5 Y 1 15
GR Z 1 X 3 5 Y 21 25
GR Z 1 X 6 8 Y 11 25
GR Z 1 X 6 8 Y 1 5
GR Z 1 X 9 10 Y 1 5
GR Z 1 X 11 15 Y 1 5
pause
vec z 1 sh
pause
vec off
redr
con p1 z 1 fi;.001
pause
con tem1 z 1 fi;.001
ENDUSE
DISPLAY

This case calculates the flow between two off-set
hollow cylinders, using a highly skewed grid. The cylinders
are made of copper, and have a fixed temperature at
their inner surface.

ENDDIS
MESG(Show the grid? (N/y)
************************************************************
Group 1. Run Title
TEXT(Pipe flow with two semi-circular blocks:B546
TITLE
************************************************************
Groups 3, 4, 5  Grid Information
* Overall number of cells, RSET(M,NX,NY,NZ,tolerance)
RSET(M,15,25,1)
* Set overall domain extent:
*        xulast  yvlast  zwlast    name
XSI= 2.000E-01;YSI= 1.250E-02;ZSI= 1.750E-03;RSET(D,CHAM    )
************************************************************
Group 6. Body-Fitted coordinates
BFC=T
* Set points
XPO= 1.5675E-01;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P1  )
XPO= 1.5675E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P2  )
XPO= 1.3500E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P3  )
XPO= 1.3500E-01;YPO=-1.3665E-02;ZPO= 5.0000E-01;GSET(P,P4  )
XPO= 1.4100E-01;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P5  )
XPO= 1.5100E-01;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P7  )
XPO= 1.7855E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P10 )
XPO= 1.7855E-01;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P11 )
XPO= 1.6250E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P12 )
XPO= 1.7250E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P14 )
XPO= 2.0000E-01;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P17 )
XPO= 2.0000E-01;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P18 )
XPO= 2.7000E-02;YPO= 1.2500E-02;ZPO= 5.0000E-01;GSET(P,P19 )
XPO= 2.7000E-02;YPO=-1.3660E-02;ZPO= 5.0000E-01;GSET(P,P20 )
XPO= 1.6746E-01;YPO= 8.0132E-03;ZPO= 5.0000E-01;GSET(P,P13 )
XPO= 1.4652E-01;YPO=-9.5795E-03;ZPO= 5.0000E-01;GSET(P,P6  )
* Set lines/arcs
GSET(L,L1,P1,P2,5,1.0)
GSET(L,L2,P2,P3,5,1.0)
GSET(L,L3,P3,P4,5,1.0)
GSET(L,L4,P4,P5,5,1.0)
GSET(L,A5,P5,P7,15,1.0,ARC,P6)
GSET(L,L6,P7,P1,5,1.0)
GSET(L,L10,P2,P12,5,1.0)
GSET(L,L11,P14,P10,5,1.0)
GSET(L,L12,P10,P11,5,1.0)
GSET(L,L13,P11,P1,5,1.0)
GSET(L,A14,P12,P14,15,1.0,ARC,P13)
GSET(L,L14,P10,P17,5,1.0)
GSET(L,L15,P17,P18,5,1.0)

GSET(L,L16,P18,P11,5,1.0)
GSET(L,L22,P20,P19,5,1.0)
GSET(L,L21,P3,P19,10,1.0)
GSET(L,L23,P4,P20,10,1.0)
* Set frames
GSET(F,F5,P4,P3.P2,P1,-,P7,-,P5,-)
GSET(F,F3,P10,P11.P1,P2,-,P12,-,P14,-)
GSET(F,F6,P11,-,P10,-,P17,-,P18,-)
GSET(F,F7,P4,-,P20,-,P19,-,P3,-)
* Match a grid mesh
GSET(M,F5,+J-I,6,1,1,LAP5)
GSET(M,F3,-J+I,6,26,1,LAP5)
GSET(M,F6,+J-I,6,21,1,LAP2)
GSET(M,F7,+I+J,6,1,1,TRANS)
* Copy/Transfer/Block grid planes
GSET(C,K2,F,K1,1,15,1,25,+,0,0,1.0000E-02,INC,1)
IF(:ANS:.EQ.Y) THEN
GCLEAR; GVIEW(Z)
GGRID( Z, 1, 1, 3, 21, 26, 4 ,0)
GGRID( Z, 1, 3, 6,  1, 16, 4 ,0)
GGRID( Z, 1, 3, 6, 21, 26, 4 ,0)
GGRID( Z, 1, 6, 9, 11, 26, 4 ,0)
GGRID( Z, 1, 6, 9,  1,  6, 4 ,0)
GGRID( Z, 1, 9,11,  1,  6, 4 ,0)
GGRID( Z, 1,11,16,  1,  6, 4 ,0)
GGRID( Z, 1, 9,11, 11, 26,13 ,0)
GGRID( Z, 1, 1, 3,  1, 16,13 ,0)
GDRAW
ENDIF
**********
NONORT  =    T
* X-cyclic boundaries switched
************************************************************
Group 7. Variables: STOREd,SOLVEd,NAMEd
ONEPHS  =    T
* Non-default variable names
* Solved variables list
SOLVE(P1  ,U1  ,V1, TEM1)
* Stored variables list
STORE(PRPS,DEN1,UCRT,VCRT,BLOK)
SOLUTN(P1  ,Y,Y,Y,N,N,Y)
SOLUTN(TEM1,Y,Y,Y,N,N,Y)
IVARBK  =      -1 ;ISOLBK =       1
************************************************************
Group 8. Terms & Devices
NEWRH1  =    T; NEWENL  =    T
ISOLX   =       0 ;ISOLY  =       0 ;ISOLZ  =       0
************************************************************
Group 9. Properties
setprps(1,0)
************************************************************
Group 11.Initialise Var/Porosity Fields
FIINIT(BLOK) =  1.000E+00
FIINIT(TEM1) =  3.030E+02

PATCH (SLD1    ,INIVAL,6,10,6,10,1,1,1,1)
INIT(SLD1    ,BLOK, 0.000E+00, 2.000E+00)
INIT(SLD1    ,PRPS, 0.000E+00, 1.000E+02)
INIT(SLD1    ,PRPS, 0.000E+00, 1.990E+02)

PATCH (SLD2    ,INIVAL,1,5,16,20,1,1,1,1)
INIT(SLD2    ,BLOK, 0.000E+00, 3.000E+00)
INIT(SLD2    ,PRPS, 0.000E+00, 1.000E+02)
INIT(SLD2    ,PRPS, 0.000E+00, 1.990E+02)

PATCH (SLD3    ,INIVAL,11,15,6,25,1,1,1,1)
INIT(SLD3    ,BLOK, 0.000E+00, 4.000E+00)
INIT(SLD3    ,PRPS, 0.000E+00, 1.000E+02)
INIT(SLD3    ,PRPS, 0.000E+00, 1.990E+02)

PATCH (SLD4    ,INIVAL,9,10,11,25,1,1,1,1)
INIT(SLD4    ,BLOK, 0.000E+00, 5.000E+00)
INIT(SLD4    ,PRPS, 0.000E+00, 1.030E+02)
**INIT(SLD4    ,PRPS, 0.000E+00, 1.990E+02)

PATCH (SLD5    ,INIVAL,1,2,1,15,1,1,1,1)
INIT(SLD5    ,BLOK, 0.000E+00, 6.000E+00)
INIT(SLD5    ,PRPS, 0.000E+00, 1.030E+02)
**INIT(SLD5    ,PRPS, 0.000E+00, 1.990E+02)

************************************************************
Group 13. Boundary & Special Sources

INLET (BFCINL1 ,WEST  ,1,1,21,25,#1,#1,1,1)
VALUE (BFCINL1 ,P1  , GRND1    )
VALUE (BFCINL1 ,U1  , GRND1    )
VALUE (BFCINL1 ,V1  , GRND1    )
VALUE (BFCINL1 ,W1  , GRND1    )
VALUE (BFCINL1 ,UCRT,-1.000E+00)
VALUE (BFCINL1 ,TEM1, 3.030E+02)

OUTLET(OUT1    ,EAST  ,15,15,1,5,#1,#1,1,1)
VALUE (OUT1    ,P1  , 0.000E+00)
VALUE (OUT1    ,U1  , 0.000E+00)
VALUE (OUT1    ,V1  , 0.000E+00)
VALUE (OUT1    ,W1  , 0.000E+00)

PATCH (HOT1    ,WEST  ,1,1,1,15,1,3,1,1)
COVAL (HOT1    ,TEM1, 1.000E+06, 2.750E+02)

PATCH (HOT2    ,EAST  ,10,10,11,25,1,3,1,1)
COVAL (HOT2    ,TEM1, 1.000E+06, 2.750E+02)

BFCA    = 1.189E+00
************************************************************
Group 15. Terminate Sweeps
LSWEEP  =     100; LITHYD  =       2
************************************************************
Group 17. Relaxation
RELAX(P1  ,LINRLX, 9.E-01); RELAX(U1  ,FALSDT, 1.E-01)
RELAX(V1  ,FALSDT, 1.E-01); RELAX(TEM1,FALSDT, 1.E+03)
************************************************************
Group 21. Print-out of Variables
OUTPUT(BLOK,Y,N,Y,N,N,N); OUTPUT(VCRT,Y,N,Y,N,N,N)
OUTPUT(UCRT,Y,N,Y,N,N,N); OUTPUT(DEN1,Y,N,Y,N,N,N)
OUTPUT(PRPS,Y,N,Y,N,N,N)
************************************************************
Group 22. Monitor Print-Out
IXMON   =       3 ;IYMON  =       7 ;IZMON  =       1
TSTSWP  =      -1
************************************************************
Group 24. Dumps For Restarts
************************************************************
```