Flame Temperature Profile

251 views
Skip to first unread message

blki...@gmail.com

unread,
May 22, 2014, 7:41:52 PM5/22/14
to canter...@googlegroups.com
Hello Everyone,

Is it possible to specify a flame temperature profile when using the free flame code?  If so, how do I go about doing this.

Thank you.

Ray Speth

unread,
May 28, 2014, 3:37:29 PM5/28/14
to canter...@googlegroups.com
Hi,

In the Python module, you can set a fixed temperature profile using the set_fixed_temp_profile method of the flow domain object. For example, if you were starting with the burner_flame.py sample, you would call:

f.flame.set_fixed_temp_profile([array of points], [array of temperatures])

Regards,
Ray

burak

unread,
Mar 27, 2017, 9:25:40 AM3/27/17
to Cantera Users' Group
Hi Ray, Hi all,
we have a problem with the fixed temperature profile in a flame (it is more a pseudo-flame..):


using:
f.flame.set_fixed_temp_profile([0,1e-1,5e-1,0.65],[300., 850,850.,300])


the solution of the flame simulation (stiochiometric methan mixture, GRI-mech, diluted) ends up with:
f.T
array([ 293.15      ,  850.        ,  850.        ,  850.        ,
        850.        ,  850.        ,  850.        ,  850.        ,
        850.        ,  850.        ,  850.        ,  850.        ,
        850.        ,  850.        ,  850.        ,  850.        ,
        850.        ,  850.        ,  850.        ,  850.        ,
        850.        ,  850.        ,  850.        ,  844.27083333,
        838.54166667,  827.08333333,  815.625     ,  804.16666667,
        781.25      ,  758.33333333,  735.41666667,  712.5       ,
        666.66666667,  575.        ,  483.33333333,  300.        ,
        300.        ,  300.        ,  300.        ])
>>> f.grid
array([ 0.        ,  0.065     ,  0.0975    ,  0.13      ,  0.14625   ,
        0.1625    ,  0.170625  ,  0.17875   ,  0.186875  ,  0.195     ,
        0.21125   ,  0.2275    ,  0.24375   ,  0.26      ,  0.27625   ,
        0.2925    ,  0.300625  ,  0.30875   ,  0.316875  ,  0.3209375 ,
        0.32296875,  0.32398437,  0.325     ,  0.32601563,  0.32703125,
        0.3290625 ,  0.33109375,  0.333125  ,  0.3371875 ,  0.34125   ,
        0.3453125 ,  0.349375  ,  0.3575    ,  0.37375   ,  0.39      ,
        0.4225    ,  0.455     ,  0.5525    ,  0.65      ])

which looks very different from our initial profile.
What are we doing wrong?

Thank you in advance!
My best regards,
Burak

Ray Speth

unread,
Mar 27, 2017, 5:36:28 PM3/27/17
to Cantera Users' Group
Burak,

The array of points in the 'set_fixed_temp_profile' function does not correspond to the actual point locations (in meters) but to the relative position along the flame length, with 0 being the left side of the flame and 1 being the right side (as described in the documentation).

I'm assuming that the reason you end up with 293.15 as the left temperature is because your inlet mixture is set to that temperature.

Regards,
Ray

burak

unread,
Mar 28, 2017, 4:08:03 AM3/28/17
to Cantera Users' Group
Thank you Ray!

But even after changing this and with the following setting, the end of the T-profile is distorted:
f.flame.set_fixed_temp_profile([0,1e-1,.5,9e-1,0.95,1],[tburner, 850,850,850.,(850+tburner)/2., tburner])
...
plot (f.grid,f.T)
plot(array([0,1e-1,.5,9e-1,0.95,1])*max(array(f.grid)),[tburner, 850,850,850.,(850+tburner)/2.,tburner],"o")

 I am attaching a plot and the python script. The final temperature is not what it should be. It seems to be a repetition of the temperature before.

 How can I change this? Is this perhaps a problem, of the initial grid?

Thanks again!

Regards
Burak
figure_1.png
burner_flame_mix.py

Ray Speth

unread,
Mar 29, 2017, 8:53:20 PM3/29/17
to Cantera Users' Group
Burak,

This appears to be a bug in how the feature of disabling the energy equation is implemented. Namely, that disabling the energy equation does not affect the equations used at the boundaries. As a result, the solver is enforcing the condition that dT/dz = 0 at the right hand boundary which is why you get that profile shape.

I have pushed a commit fixing this problem to the development version of Cantera (52dbe8c0). Thanks for reporting the issue.

Regards,
Ray

burak

unread,
Apr 7, 2017, 2:54:35 AM4/7/17
to Cantera Users' Group
Thanks!
Knowing this, we can work around it by taking a slightly larger spatial range and repeating the final temperature once. By evaluating not the last point, but the one before should be fine.


Regards
Burak

Am Freitag, 23. Mai 2014 01:41:52 UTC+2 schrieb blki...@gmail.com:
Reply all
Reply to author
Forward
0 new messages