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
  msg Press return to see the Velocity Vectors
  pause
  vec z 1 sh
  msg Press return to see the Pressure Contours
  pause
  vec off
  redr
  con p1 z 1 fi;.001
  msg Press return to see the Temperature Contours
  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)
 READVDU(ANS,CHAR,N)
 ************************************************************
  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)
    * Additional solver options
 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)
 
 INIADD  =    F
 ************************************************************
  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
 ************************************************************