TALK=T;RUN(1,1)
DISPLAY A hydrocarbon fuel enters steadily a duct of uniform cross- section steadily, through the porous wall of which is supplied a steady stream of air, at a low rate for the first 3/4 of the length, and at an increased rate over the last 1/4 . The air and fuel are supposed to react in a mixed-is-burned manner; but smoke is presumed to be generated at a rate which is proportional to the concentration of unburned fuel times the absolute temperature raised to the power SMOEXP. The multi-fuel model of turbulence is used, but with arbitrarily chosen values of the micro-mixing rate, CONMIX * RATE. The situation is discussed in the report by DB Spalding, dated 1998 ENDDIS ************************************************************ PHOTON USE AUTOPLOT file; phi 5 cl; da 1; prod; da 1; oxid; da 1; fuel; scale; cola 1; col3 2 colf 3 msg mass fractions of prod - yellow, oxid - blue, free fuel -red msg msg flow is from left to right pause cl; da 1; smos; da 1; smom; f11; scale; cola 1; col3 2; msg mass fractions of smoke according to: msg msg single-fluid - yellow; multi-fluid - blue pause cl; da 1; f1; da 1; f10; da 1; f20; scale; cola 1; col3 2; colf 3 msg mass fractions of f1 - yellow, f10 - blue, f20 - red pause cl; da 1; f1; da 1; f3; da 1; f5; da 1; f7; da 1; f9; da 1; f11; da 1; f13; da 1; f15; da 1; f17; da 1; f19; da 1; f20; scale; cola 1; col1 2; col1 3; col1 4; col1 5; col3 6; col1 7; col1 8; col1 9; col1 10; colf 11 msg mass fractions of some intermediate fluids also pause cl; da 1; mnsq; cola 1 msg root-mean-square fluctuations pause cl; da 1; tmp1; cola 1 ; da 1; tmpm; col3 2 msg temperatures: single fluid - yellow; multi-fluid - blue pause cl; da 1; fuel; cola 1; da 1; frfm; col3 2; msg free fuel from single- (yellow) and multi-fluid models (blue) pause enduse TEXT(1D Smoke-Generation with MFM TITLE NX=50; XULAST=1; YVLAST=0.1 nx=4 #unigrid Declarations of non-standard variables REAL(WAIR,WFU,WPR,STOIC,FSTOI,CPAIR,CPPR,CPFU,HFU,TOXID,TFUEL) REAL(HFUIN,UINF,RHAIN,RHFIN,FINF,HAIRIN,TSTOIC) Settings of these and other variables WAIR=29.0; WFU=16.0; WPR=28.0 ! molecular weights STOIC=17.24 ! stoichiometric air/fuel ratio FSTOI=1./(1.+ STOIC) ! stoichiometric mixture fract. CPAIR=1.5E3; CPPR=1.5E3; CPFU=1.5E3 ! specific heats HFU=4.9E7 ! heat of reaction TOXID=773.0; TFUEL=773.0 ! inflow-stream temperatures HAIRIN=CPAIR*TOXID ! & resulting enthalpy UINF=2.0 ! fuel-inflow velocity m/s FINF=1.0 ! and fuel mass fraction ! in fuel-bearing stream RHAIN=1.0 * 273.0 / TOXID ! densities of inflow RHFIN = RHAIN * WFU / WAIR ! streams PRESS0=1.0E5 ! pressure is 1 atmosphere Group 7: variables to be solved and stored SOLVE(P1,U1,H1,MIXF) ! FUEL need not be solved, because deduced STORE(RATE,FUEL,OXID,PROD,TMP1,RHO1,SPH1) ! from MIXF .. see SCRSEQ GROUP 8. Terms (in differential equations) & devices TERMS(H1,N,Y,Y,N,Y,N) ! switch off kinetic heat source DENPCO=T Group 9: other property settings data settings relating to density, temperature & specific heat RHO1=3GASES ! select density to be computed in gxdens; igrnd=6 RHO1A=WFU; RHO1B=WAIR; RHO1C=WPR ! transmit necessary constants TMP1=SCRSEQ ! select density to be computed in gxtempr; igrnd=7 ! fixes concentrations to fit thermodynamic equilib. TMP1A=CPFU; TMP1B=CPPR; TMP1C=CPAIR ! transmit necessary constants CP1=GRND10 ! select sp. heat to be computed in gxspehe; igrnd=10 CP1A=CPFU; CP1B=CPAIR; CP1C=CPPR ! transmit necessary constants HFUIN=CPFU*TFUEL + HFU * (FINF-FSTOI) /(1.0 - FSTOI) ! & resulting TSTOIC = TOXID + (FSTOI/FINF) * HFUIN / CPAIR ! values TMP2A=FSTOI; TMP2B=HFU ; TMP2C=FINF ! transmit necessary constants GROUP 11: Initial values FIINIT(RHO1)=RHAIN; FIINIT(H1)=HAIRIN; FIINIT(MIXF)=FINF FIINIT(FUEL)=FINF; FIINIT(U1)=UINF GROUP 13. Boundary conditions and special sources ** Fuel inlet PATCH(FUIN,WEST,1,1,1,1,1,1,1,1) COVAL(FUIN,P1,FIXFLU,RHFIN*UINF) COVAL(FUIN,U1,ONLYMS,UINF) COVAL(FUIN,MIXF,ONLYMS,1.0) ! stream is pure fuel, hence the 1.0 COVAL(FUIN,H1,ONLYMS,HFUIN) ** Outlet Boundary PATCH(OUTLET,EAST,NX,NX,1,1,1,1,1,1) COVAL(OUTLET,P1, 1.0, 0.0) ** Air inlet PATCH(AIRIN,NORTH,1,NX,1,1,1,1,1,1) COVAL(AIRIN,P1,FIXFLU,1.4*RHAIN*UINF) COVAL(AIRIN,H1,ONLYMS,HAIRIN) ** second air inlet PATCH(AIRIN2,NORTH,3*NX/4,NX,1,1,1,1,1,1) COVAL(AIRIN2,P1,FIXFLU,40*RHAIN*UINF) COVAL(AIRIN2,H1,ONLYMS,HAIRIN) GROUP 15. Termination of sweeps LSWEEP=1000 GROUP 16. Termination of iterations LITER(P1)=20; LITER(U1)=20; LITER(V1)=20; LITER(W1)=20 GROUP 17. Under-relaxation devices RELAX(RHO1,LINRLX,0.1); RELAX(P1,LINRLX,0.5) GROUP 18. Limits on variables or increments to them VARMIN(TMP1)=TOXID VARMIN(RHO1)=0.1*RHAIN VARMAX(RHO1)=2.0*RHAIN GROUP 19. Data communicated by satellite to GROUND TMP2A=FSTOI; TMP2B=HFU GROUP 21. Print-out of variables NPRINT=LSWEEP GROUP 22. Spot-value print-out IXMON=3*NX/4 GROUP 23. Field print-out and plot control NPLT=5; IPLTF=2; IPLTL=LSWEEP NROWCO=40; ORSIZ=0.4 PATCH(LONGPLOT,PROFIL,1,NX,1,1,1,1,1,LSTEP) COVAL(LONGPLOT,MIXF,0.0,1.0) COVAL(LONGPLOT,OXID,0.0,1.0) COVAL(LONGPLOT,PROD,0.0,1.0) COVAL(LONGPLOT,FUEL,0.0,1.0) PATCH(LONGPLT2,PROFIL,1,NX,1,1,1,1,1,LSTEP) COVAL(LONGPLT2,TMP1,0.0,0.0) COVAL(LONGPLT2,U1,0.0,0.0) COVAL(LONGPLT2,P1,0.0,0.0) *************************************** MFM data #mfm NFLR=1; NFLF= 20 ! 20 fluids, distinguished by mixture fraction nflf=3 The population-defining attribute is "mixture fraction", ie mass of material derived from the inlet stream containing fuel (and oxidant) per unit mass of local mixture. MFMMOD=SCRS ! activate calculation of fluid temperature and ! other quantities in gxmfm SPEDAT( MFM, FFUIN, R, 1.0) SPEDAT( MFM, TAIRIN, R, TOXID ) SPEDAT( MFM, TFUIN , R, TFUEL) SPEDAT( MFM, TSTOIC, R, TSTOIC) SPEDAT( MFM, FACST , R, FSTOI) ! i.e. tmp2a SPEDAT( MFM, GASCON, R, 8314.) SPEDAT( MFM, SPVLMX, R, 100.0) SPEDAT( MFM, SPVLMN, R, 0.01 ) SPEDAT( MFM, SMOCON, R, 1.0) SPEDAT( MFM, SMOEXP, R, 7.0 ) SPEDAT( MFM, SMOEXP, R, 0.01 ) ! use to nullify temperature effect the micromixing constant: conmix conrea is set to zero, as not being relevant to this case CONMIX=5.0; CONREA=0.0 TEXT(MFM; 1dsmoke; conmix=:conmix: TITLE #mfm1 ** Initial conditions REAL(REALNFL,INIFL); REALNFL=:NFLUIDS: FIINIT(RATE)=100.0 INIFL=1./REALNFL DO II = 1,NFLUIDS FIINIT(F:II:)=INIFL RELAX(F:II:,LINRLX,0.25) COVAL(OUTLET,F:II:,ONLYMS,SAME) ENDDO ** Boundary conditions Fuel inlet COVAL(FUIN,F:NFLUIDS:,ONLYMS,1.0) ! only fluid 20 enters here ** Oxidant inlet COVAL(AIRIN,F1,ONLYMS,1.0) ! only fluid 1 enters here COVAL(AIRIN2,F1,ONLYMS,1.0) ! and here RELAX(H1,FALSDT,10.0) Solve for SMOM, ie smoke according to multi-fluid model, and SMOS, ie smoke according to single-fluid model. SOLVE(SMOM,SMOS) FIINIT(SMOM)=0.0; FIINIT(SMOS)=0.0 COVAL(OUTLET,SMOM,ONLYMS,SAME); COVAL(OUTLET,SMOS,ONLYMS,SAME) The patch called smoke activates the coding for smoke generation according to both the single- and multi-fluid models PATCH(SMOKE,PHASEM,1,NX,1,NY,1,NZ,1,LSTEP) COVAL(SMOKE,SMOM,FIXFLU,GRND); COVAL(SMOKE,SMOS,FIXFLU,GRND) STORE(TMPM,FRFM,OXDM,PRDM) CHAR(NAMPROF) ! line-printer plots ORSIZ=0.2 DO II=1,NFLUIDS NAMPROF=FPROF:II: PATCH(:NAMPROF:,PROFIL,1,NX,1,1,1,1,1,1) COVAL(:NAMPROF:,F:II:,0.0,0.0) ENDDO TSTSWP=-1; UWATCH=T; USTEER=T; NYPRIN=1; RESFAC=1.E-3 distil=t expected values EX(P1 )= 1.425E+04; EX(P1 )= 3.786E+04 EX(U1 )= 4.948E+01; EX(U1 )= 7.707E+01 EX(H1 )= 6.590E+06; EX(H1 )= 9.408E+06 EX(PRDM)= 4.451E-01; EX(PRDM)= 3.831E-01 ; EX(OXDM)= 4.773E-01 EX(FRFM)= 8.193E-02; EX(FRFM)= 1.397E-01 EX(TMPM)= 1.580E+03; EX(TMPM)= 1.460E+03 EX(SMOS)= 4.530E-04; EX(SMOS)= 3.547E-04 EX(SMOM)= 2.564E-04; EX(SMOM)= 1.579E-04 ; EX(F1 )= 4.727E-01 EX(F2 )= 1.867E-01; EX(F2 )= 1.142E-01 EX(F3 )= 1.088E-01; EX(F3 )= 7.434E-02 EX(F4 )= 6.151E-02; EX(F4 )= 5.543E-02 EX(F5 )= 3.851E-02; EX(F5 )= 4.300E-02 EX(F6 )= 2.639E-02; EX(F6 )= 3.415E-02 EX(F7 )= 1.926E-02; EX(F7 )= 2.767E-02 EX(F8 )= 1.471E-02; EX(F8 )= 2.282E-02 EX(F9 )= 1.164E-02; EX(F9 )= 1.912E-02 EX(F10 )= 9.470E-03; EX(F10 )= 1.626E-02 EX(F11 )= 7.886E-03; EX(F11 )= 1.401E-02 EX(F12 )= 6.699E-03; EX(F12 )= 1.224E-02 EX(F13 )= 5.791E-03; EX(F13 )= 1.083E-02 EX(F14 )= 5.090E-03; EX(F14 )= 9.705E-03 EX(F15 )= 4.548E-03; EX(F15 )= 8.832E-03 EX(F16 )= 4.138E-03; EX(F16 )= 8.191E-03 EX(F17 )= 3.858E-03; EX(F17 )= 7.813E-03 EX(F18 )= 3.762E-03; EX(F18 )= 7.901E-03 EX(F19 )= 4.392E-03; EX(F19 )= 1.022E-02 EX(F20 )= 1.133E-02; EX(F20 )= 3.056E-02 EX(MNSQ)= 1.137E-01; EX(MNSQ)= 1.773E-01 EX(AVEF)= 1.108E-01; EX(AVEF)= 1.683E-01 EX(RHO1)= 2.099E-01; EX(RHO1)= 2.311E-01 EX(PROD)= 6.985E-01; EX(PROD)= 6.835E-01 EX(OXID)= 2.289E-01; EX(SPH1)= 1.500E+03 EX(MIXF)= 1.108E-01; EX(MIXF)= 1.683E-01 EX(FUEL)= 7.253E-02; EX(FUEL)= 1.309E-01 EX(TMP1)= 1.997E+03; EX(OXID)= 1.856E-01 EX(RATE)= 1.000E+02 lsweep=500 STOP