TALK=T;RUN(1,1) PHOTON USE p;;;;; msg Numerical solution contours con c1 z 1 fi;0.1 msg Press Enter to continue pause;clear;con errr z 1 fi;0.1 msg Error contours. Press e to END ENDUSE DISPLAY A two-dimensional transient diffusion problem with time-dependen boundary conditions and space-dependent initial fields is used a an illustration of how PLANT statements can be used to:- * set initial fields; * set boundary conditions and other sources; * make comparisons with exact solutions. The analytical solution is: C1 = X + Y + T , where X and Y are cartesian coordinates and T is time. The C1 computed by PHOENICS, the exact solution (EXAC) and the difference between them (ERRR) are all printed out. The GROUND coding which the PLANT statements generate is appended to the Q1 file. This case enables the influences on accuracy to be investigated of numerical settings such as LITER(C1), RESFAC, ISOLX, ISOLY & CSG3. The latter, when set = CNGR, activates the conjugate- gradient solver. ENDDIS PLANTBEGIN solve(errr);store(exac) PLANT.. Following commands set the initial field as.. C1 = X + Y PATCH(INIT,INIVAL,1,NX,1,NY,1,NZ,1,1)VAL=XG2D+YG2D INIT(INIT,C1,0.0,GRND) VAL=XG2D+YG2D+TLAST INIT(INIT,EXAC,0.0,GRND) GROUP 13. Boundary conditions and special sources PLANT.. Following commands set the west values as.. C1 = T + Y PATCH(WEST,WWALL,1,1,1,NY,1,NZ,1,LSTEP) VAL=TIM+YG2D COVAL(WEST,C1,1.,GRND) PLANT.. Following commands set the east values as.. C1 = T + 1 + Y PATCH(EAST,EWALL,NX,NX,1,NY,1,NZ,1,LSTEP) VAL=TIM+1.0+YG2D COVAL(EAST,C1,1.,GRND) PLANT.. Following commands set south values as.. C1 = T + X PATCH(SOUTH,SWALL,1,NX,1,1,1,NZ,1,LSTEP) VAL=TIM+XG2D COVAL(SOUTH,C1,1.,GRND) PLANT.. Following commands set north values as.. C1 = T + 1 + X PATCH(NORTH,NWALL,1,NX,NY,NY,1,NZ,1,LSTEP) VAL=TIM+1.0+XG2D COVAL(NORTH,C1,1.,GRND) PLANT.. Following commands set field values of EXAC as.. T + 1 + Y PATCH(ERROR,CELL,1,NX,1,NY,1,NZ,1,LSTEP) VAL=TIM+XG2D+YG2D-C1 COVAL(ERROR,ERRR,FIXVAL,GRND) PLANTEND ************************************************************ Group 1. Run Title and Number ************************************************************ ************************************************************ TEXT( 2D UNSTEADY DIFFUSION PROBLEM:Z104 ) ************************************************************ ************************************************************ IRUNN = 1 ;LIBREF = 104 ************************************************************ Group 2. Time dependence STEADY = F * Set overall time and no. of steps TFIRST =0. ;TLAST =1. FSTEP = 1 ;LSTEP = 5 TFRAC(1)=0.2 ;TFRAC(2)=0.4 TFRAC(3)=0.6 ;TFRAC(4)=0.8 TFRAC(5)=1. ************************************************************ Group 3. X-Direction Grid Spacing CARTES = T NX = 100 XULAST =1. XFRAC(1)=1.0E-02 ;XFRAC(2)=0.02 XFRAC(3)=0.03 ;XFRAC(4)=0.04 XFRAC(5)=0.05 ;XFRAC(6)=0.06 XFRAC(7)=0.07 ;XFRAC(8)=0.08 XFRAC(9)=0.09 ;XFRAC(10)=0.1 XFRAC(11)=0.11 ;XFRAC(12)=0.12 XFRAC(13)=0.13 ;XFRAC(14)=0.14 XFRAC(15)=0.15 ;XFRAC(16)=0.16 XFRAC(17)=0.17 ;XFRAC(18)=0.18 XFRAC(19)=0.19 ;XFRAC(20)=0.2 XFRAC(21)=0.21 ;XFRAC(22)=0.22 XFRAC(23)=0.23 ;XFRAC(24)=0.24 XFRAC(25)=0.25 ;XFRAC(26)=0.26 XFRAC(27)=0.27 ;XFRAC(28)=0.28 XFRAC(29)=0.29 ;XFRAC(30)=0.3 XFRAC(31)=0.31 ;XFRAC(32)=0.32 XFRAC(33)=0.33 ;XFRAC(34)=0.34 XFRAC(35)=0.35 ;XFRAC(36)=0.36 XFRAC(37)=0.37 ;XFRAC(38)=0.38 XFRAC(39)=0.39 ;XFRAC(40)=0.4 XFRAC(41)=0.41 ;XFRAC(42)=0.42 XFRAC(43)=0.43 ;XFRAC(44)=0.44 XFRAC(45)=0.45 ;XFRAC(46)=0.46 XFRAC(47)=0.47 ;XFRAC(48)=0.48 XFRAC(49)=0.49 ;XFRAC(50)=0.5 XFRAC(51)=0.51 ;XFRAC(52)=0.52 XFRAC(53)=0.53 ;XFRAC(54)=0.54 XFRAC(55)=0.55 ;XFRAC(56)=0.56 XFRAC(57)=0.57 ;XFRAC(58)=0.58 XFRAC(59)=0.59 ;XFRAC(60)=0.6 XFRAC(61)=0.61 ;XFRAC(62)=0.62 XFRAC(63)=0.63 ;XFRAC(64)=0.64 XFRAC(65)=0.65 ;XFRAC(66)=0.66 XFRAC(67)=0.67 ;XFRAC(68)=0.68 XFRAC(69)=0.69 ;XFRAC(70)=0.7 XFRAC(71)=0.71 ;XFRAC(72)=0.72 XFRAC(73)=0.73 ;XFRAC(74)=0.74 XFRAC(75)=0.75 ;XFRAC(76)=0.76 XFRAC(77)=0.77 ;XFRAC(78)=0.78 XFRAC(79)=0.79 ;XFRAC(80)=0.8 XFRAC(81)=0.81 ;XFRAC(82)=0.82 XFRAC(83)=0.83 ;XFRAC(84)=0.84 XFRAC(85)=0.85 ;XFRAC(86)=0.86 XFRAC(87)=0.87 ;XFRAC(88)=0.88 XFRAC(89)=0.89 ;XFRAC(90)=0.9 XFRAC(91)=0.91 ;XFRAC(92)=0.92 XFRAC(93)=0.93 ;XFRAC(94)=0.94 XFRAC(95)=0.95 ;XFRAC(96)=0.96 XFRAC(97)=0.97 ;XFRAC(98)=0.98 XFRAC(99)=0.99 ;XFRAC(100)=1. ************************************************************ Group 4. Y-Direction Grid Spacing NY = 100 YVLAST =1. YFRAC(1)=1.0E-02 ;YFRAC(2)=0.02 YFRAC(3)=0.03 ;YFRAC(4)=0.04 YFRAC(5)=0.05 ;YFRAC(6)=0.06 YFRAC(7)=0.07 ;YFRAC(8)=0.08 YFRAC(9)=0.09 ;YFRAC(10)=0.1 YFRAC(11)=0.11 ;YFRAC(12)=0.12 YFRAC(13)=0.13 ;YFRAC(14)=0.14 YFRAC(15)=0.15 ;YFRAC(16)=0.16 YFRAC(17)=0.17 ;YFRAC(18)=0.18 YFRAC(19)=0.19 ;YFRAC(20)=0.2 YFRAC(21)=0.21 ;YFRAC(22)=0.22 YFRAC(23)=0.23 ;YFRAC(24)=0.24 YFRAC(25)=0.25 ;YFRAC(26)=0.26 YFRAC(27)=0.27 ;YFRAC(28)=0.28 YFRAC(29)=0.29 ;YFRAC(30)=0.3 YFRAC(31)=0.31 ;YFRAC(32)=0.32 YFRAC(33)=0.33 ;YFRAC(34)=0.34 YFRAC(35)=0.35 ;YFRAC(36)=0.36 YFRAC(37)=0.37 ;YFRAC(38)=0.38 YFRAC(39)=0.39 ;YFRAC(40)=0.4 YFRAC(41)=0.41 ;YFRAC(42)=0.42 YFRAC(43)=0.43 ;YFRAC(44)=0.44 YFRAC(45)=0.45 ;YFRAC(46)=0.46 YFRAC(47)=0.47 ;YFRAC(48)=0.48 YFRAC(49)=0.49 ;YFRAC(50)=0.5 YFRAC(51)=0.51 ;YFRAC(52)=0.52 YFRAC(53)=0.53 ;YFRAC(54)=0.54 YFRAC(55)=0.55 ;YFRAC(56)=0.56 YFRAC(57)=0.57 ;YFRAC(58)=0.58 YFRAC(59)=0.59 ;YFRAC(60)=0.6 YFRAC(61)=0.61 ;YFRAC(62)=0.62 YFRAC(63)=0.63 ;YFRAC(64)=0.64 YFRAC(65)=0.65 ;YFRAC(66)=0.66 YFRAC(67)=0.67 ;YFRAC(68)=0.68 YFRAC(69)=0.69 ;YFRAC(70)=0.7 YFRAC(71)=0.71 ;YFRAC(72)=0.72 YFRAC(73)=0.73 ;YFRAC(74)=0.74 YFRAC(75)=0.75 ;YFRAC(76)=0.76 YFRAC(77)=0.77 ;YFRAC(78)=0.78 YFRAC(79)=0.79 ;YFRAC(80)=0.8 YFRAC(81)=0.81 ;YFRAC(82)=0.82 YFRAC(83)=0.83 ;YFRAC(84)=0.84 YFRAC(85)=0.85 ;YFRAC(86)=0.86 YFRAC(87)=0.87 ;YFRAC(88)=0.88 YFRAC(89)=0.89 ;YFRAC(90)=0.9 YFRAC(91)=0.91 ;YFRAC(92)=0.92 YFRAC(93)=0.93 ;YFRAC(94)=0.94 YFRAC(95)=0.95 ;YFRAC(96)=0.96 YFRAC(97)=0.97 ;YFRAC(98)=0.98 YFRAC(99)=0.99 ;YFRAC(100)=1. ************************************************************ Group 5. Z-Direction Grid Spacing PARAB = F NZ = 1 ZWLAST =1. ZFRAC(1)=1. ************************************************************ Group 6. Body-Fitted Coordinates ************************************************************ Group 7. Variables: STOREd,SOLVEd,NAMEd ONEPHS = T NAME(16)=C1 ;NAME(149)=EXAC NAME(150)=ERRR * Y in SOLUTN argument list denotes: * 1-stored 2-solved 3-whole-field * 4-point-by-point 5-explicit 6-harmonic averaging SOLUTN(C1,Y,Y,N,N,N,Y) SOLUTN(EXAC,Y,N,N,N,N,Y) SOLUTN(ERRR,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(C1,N,N,Y,Y,Y,Y) TERMS(ERRR,N,N,N,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 =1. ;ENUT =0. PRNDTL(C1)=1. PRT(C1)=1. CP1 =1. ;CP2 =1. ************************************************************ Group 10.Inter-Phase Transfer Processes ************************************************************ Group 11.Initial field variables (PHIs) FIINIT(C1)=1.0E-10 ;FIINIT(EXAC)=1.0E-10 FIINIT(ERRR)=1.0E-10 PATCH(INIT ,INIVAL, 1, 100, 1, 100, 1, 1, 1, 1) INIT(INIT ,C1 ,0. ,0. ) INIT(INIT ,EXAC,0. ,0. ) PATCH(IINIT ,INIVAL, 1, 100, 1, 100, 1, 1, 1, 1) 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(WEST ,WWALL , 1, 1, 1, 100, 1, 1, 1, 5) COVAL(WEST ,C1 ,0. ,0. ) PATCH(EAST ,EWALL , 100, 100, 1, 100, 1, 1, 1, 5) COVAL(EAST ,C1 ,0. ,0. ) PATCH(SOUTH ,SWALL , 1, 100, 1, 1, 1, 1, 1, 5) COVAL(SOUTH ,C1 ,0. ,0. ) PATCH(NORTH ,NWALL , 1, 100, 100, 100, 1, 1, 1, 5) COVAL(NORTH ,C1 ,0. ,0. ) PATCH(SOURC ,VOLUME, 1, 100, 1, 100, 1, 1, 1, 5) COVAL(SOURC ,C1 , FIXFLU ,1. ) PATCH(IWEST ,WWALL , 1, 1, 1, 100, 1, 1, 1, 5) COVAL(IWEST ,C1 ,In-Form:source - see Grp 19) PATCH(IEAST ,EWALL , 100, 100, 1, 100, 1, 1, 1, 5) COVAL(IEAST ,C1 ,In-Form:source - see Grp 19) PATCH(ISOUTH ,SWALL , 1, 100, 1, 1, 1, 1, 1, 5) COVAL(ISOUTH ,C1 ,In-Form:source - see Grp 19) PATCH(INORTH ,NWALL , 1, 100, 100, 100, 1, 1, 1, 5) COVAL(INORTH ,C1 ,In-Form:source - see Grp 19) PATCH(IERROR ,CELL , 1, 100, 1, 100, 1, 1, 1, 5) COVAL(IERROR ,ERRR,In-Form:source - see Grp 19) XCYCLE = F EGWF = T WALLCO = GRND2 ************************************************************ Group 14. Downstream Pressure For PARAB ************************************************************ Group 15. Terminate Sweeps LSWEEP = 5 ;ISWC1 = 1 LITHYD = 1 ;LITFLX = 1 ;LITC = 1 ;ITHC1 = 1 SELREF = T RESFAC =1.0E-06 ************************************************************ Group 16. Terminate Iterations LITER(C1)=10 ;LITER(ERRR)=20 ENDIT(C1)=1.0E-03 ;ENDIT(ERRR)=1.0E-03 ************************************************************ Group 17. Relaxation RELAX(C1,FALSDT,1.0E+09) RELAX(EXAC,LINRLX,1.) RELAX(ERRR,FALSDT,1.0E+09) OVRRLX =0. EXPERT = F ;NNORSL = F ************************************************************ Group 18. Limits VARMAX(C1)=1.0E+10 ;VARMIN(C1)=-1.0E+10 VARMAX(EXAC)=1.0E+10 ;VARMIN(EXAC)=-1.0E+10 VARMAX(ERRR)=1.0E+10 ;VARMIN(ERRR)=-1.0E+10 ************************************************************ Group 19. Data transmitted to GROUND PARSOL = F ISG62 = 1 CSG3 ='CNGR' SPEDAT(SET,GXMONI,TRANSIENT,L,F) SPEDAT(SET,INITIAL,C1!IINIT,C,=XG+YG) SPEDAT(SET,INITIAL,EXAC!IINIT,C,=XG+YG+TLAST) SPEDAT(SET,SOURCE,C1!IWEST,C,=(TIM+YG-C1)*2./DXG!LINE) SPEDAT(SET,SOURCE,C1!IEAST,C,=(TIM+1.0+YG-C1)*2./DXG!LINE) SPEDAT(SET,SOURCE,C1!ISOUTH,C,=(TIM+XG-C1)*2./DYG!LINE) SPEDAT(SET,SOURCE,C1!INORTH,C,=(TIM+1.0+XG-C1)*2./DYG!LINE) SPEDAT(SET,SOURCE,ERRR!IERROR,C,=TIM+XG+YG-C1!FIXVAL) SPEDAT(SET,GXMONI,PLOTALL,L,T) ************************************************************ Group 20. Preliminary Printout DISTIL = T ;NULLPR = F NDST = 0 DSTTOL =1.0E-02 EX(C1)=2. ;EX(EXAC)=2. EX(ERRR)=9.861E-03 ************************************************************ 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(C1,Y,Y,Y,Y,Y,Y) OUTPUT(EXAC,Y,N,Y,N,N,N) OUTPUT(ERRR,Y,N,Y,N,N,N) ************************************************************ Group 22. Monitor Print-Out IXMON = 50 ;IYMON = 50 ;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 STOP