Issues on progress variable source term calculation

229 views
Skip to first unread message

Cai Jiangtao

unread,
Jan 10, 2022, 3:55:53 PM1/10/22
to Cantera Users' Group
Hello everyone, I am working on generating flamelet/progress variable library via Cantera on Python. I have tried to generate steady flamelet library by calculating counter diffusion flame, and results turned out fine. When I am working on FPV library, the source term of progress variable looks weird. The definition of progress variable I take is 
屏幕截图 2022-01-10 131408.png
The source term of progress variable is the change rate of progress variable. The case I took is DLR_A flame. I increase mass flow rate of both inlet after every flamelet computation to increase dissipation rate.
varrate.png
Here I take the sum of major reaction products' net production rates as the source term. From the figure above, it looks like the max production rate is too high. Is the definition for the source term wrong? Thanks.

Ray Speth

unread,
Jan 11, 2022, 11:31:18 AM1/11/22
to Cantera Users' Group
Hi,

What makes you say that the source term is too high? What are you comparing this to? If you could share your code, it might be possible to see if there are any issues in how you're using Cantera.

Regards,
Ray

Cai Jiangtao

unread,
Jan 12, 2022, 9:08:02 AM1/12/22
to Cantera Users' Group
1) The source terms of progress rate between low mass flow (e.g. 0.01 kg/m^2s) and high mass flow (e.g. 100 kg/m^2s) have a huge difference. On the low mass flow condition, the highest value of source term is about 0.1 while on high mass flow condition, the value soars to approx. 2000.
2) Unfortunately, I tried to search papers about source term calculation, but there are few articles I have found discussed it thoroughly. Most of papers referred FPV approach just simply point out the definition of progress variable is the sum of main reaction products.
3) The source code is in Python, here I extract the source term calculation part:
###################
# FPVA
for product in product_list:
                progressvar += flame.Y[gas.species_index(product.strip())]
                varrate += flame.net_production_rates[gas.species_index(product.strip())]*gas.molecular_weights[gas.species_index(product.strip())]
varrate /= flame.density
###################
the unit of source term here is 1/s. Since I have doubts in the definition of the source term of progress variable, I am looking forward to your reply, thanks.

Ray Speth

unread,
Jan 12, 2022, 10:09:52 AM1/12/22
to Cantera Users' Group
Hi,

Since your inlet mass flux is varying by 4 orders of magnitude, it doesn't seem unreasonable that the rate at which products are being formed is also varying by several orders of magnitude. The two change by different amounts since you also need to account for the width of the profile, and because eventually you have incomplete combustion.

Regards,
Ray

Cai Jiangtao

unread,
Jan 12, 2022, 9:15:20 PM1/12/22
to Cantera Users' Group

Thanks for your reply. BTW, the definition of source term means the change rate of major production's mass fraction, Is there a proper way to obtain it in Cantera? I am currently using the net_production_rates as my previous reply.
屏幕截图 2022-01-13 101339.png
(The definition of progress variable's source term)

Deity Neo

unread,
Feb 9, 2022, 9:05:25 AM2/9/22
to Cantera Users' Group
Hello Cai,

could you solve it? Which definition of the source term of progress variable are you using ?

Best Regards
Marian

Cai Jiangtao

unread,
Feb 17, 2022, 7:36:54 AM2/17/22
to Cantera Users' Group
My last reply describes the physical definition I use and variable in Cantera.
Reply all
Reply to author
Forward
0 new messages