Laminar burning velocity: Comparison to Chemkin-II / Chemkin-Pro / FlameMaster / OpenSMOKE++

408 views
Skip to first unread message

Raymond...@gmx.net

unread,
Jul 12, 2018, 7:36:55 AM7/12/18
to Cantera Users' Group
I'm comparing the results obtained with Chemkin-II, Chemkin-Pro,  Cantera, FlameMaster, and OpenSMOKE++ for zero- and one-dimensional configurations. The goal of the comparison is to find out whether users can expect consistent predictions from the different software assuming that they use the same models and a sufficiently accurate setup for the simulations. I'm also the current maintainer of FlameMaster.

I found good agreement between all projects  for the zero-dimensional configurations so far. I also found acceptable agreement for the 1D test cases, but I was wondering whether I can improve the setup for Cantera.

I found a slight deviation between Cantera (v2.3.0) on the one hand and FlameMaster/OpenSMOKE++/Chemkin-Pro on the other hand for the predicted laminar burning velocities of methane/air flames (GRI3.0 model, 1 bar, 300 K, mixture averaged transport model). While the FlameMaster/OpenSMOKE++/Chemkin-Pro results generally deviate less than ~0.2 cm/s from one another, the laminar burning velocity from Cantera is up ~0.5 cm/s lower. The maximum deviation occurs for slightly rich mixtures (fuel-air equivalence ratio 1.3). These are the results for the laminar burning velocity from the respective programs (in cm/s, phi=1.3):
CK-II       OS           FM               CK-Pro       Cantera
23.9160  23.6021   23.7673        23.62         23.1486

For the simulations with Cantera, I've used the adaptive grid refinement with the following parameters:

setRefineCriteria(flowdomain, ratio=2.0, slope=0.005, curve=0.005, prune = 0.000001)

Except for Cantera, all simulations account for thermal diffusion of light species. However, the effect of the applied thermal diffusion model is too small to explain the difference and accounting for thermal diffusion actually decreases the laminar burning velocity for this test case. I would expect the deviation to be slightly larger, if I used this thermal diffusion model in Cantera as well.

According to tests done with OpenSMOKE++ and FlameMaster, I don't think that the adaptive grid refinement can be responsible for the deviation, but I haven't finished the corresponding tests with Cantera and I have noticed differences in the discretization between FlameMaster and Cantera. I found that using more grid points, e.g. with the following parameters

setRefineCriteria(flowdomain, ratio=2.0, slope=0.003, curve=0.003, prune = 0.000001),

results in a slightly decreased laminar burning velocity (23.1331 cm/s) making the deviation even larger. This trend continues as I (indirectly) increase the number of grid points. Therefore, I don't think that the deviation can be explained by the discretization error. I will also test an equidistant grid. Do you have any further suggestions? 

Ray Speth

unread,
Jul 12, 2018, 5:57:25 PM7/12/18
to Cantera Users' Group
Raymond,

Can you provide the full output profiles for these different cases, as well as the relevant input files/configurations? It would also be interesting to see the results for the other solvers without the use of the approximate model for thermal diffusion of light species, since that is at least one known difference that can be eliminated. These differences in flame speed are larger than what I've previously noted when comparing CK-Pro to Cantera, so I think it's possible that at least some of the differences can be explained by the problem setup.

Regards,
Ray

arief...@gmail.com

unread,
Jul 13, 2018, 1:46:55 PM7/13/18
to canter...@googlegroups.com

Dear Raymond and Ray,

I repeated the calculation for phi=1.3 and I found Sl= 23,9529 cm/s
This result is the closest to the one obtained by ChemKin II.

Below there are the iteration tableaux for phi=1.0 and phi=1.3

With phi=1.3 there is an additional grid refinement step to resolve C2H3. See below.

Also: for phi=1.0 the most accurate experimental unstretched laminar burning velocities fall between 37.5 and 38.5 cm/s. The Cantera solution falls within this range of experimental values. See below.

****************
Solution for phi = 1.0
****************
C:\CPrograms\flamespeed\exe>xflamespeed
Enter phi: 1.0
Enter initial guess: 0.37
Attempt Newton solution of steady-state problem...    success.
Problem solved on [179] point grid(s).
no new points needed in flame
Flame speed with mixture-averaged transport: 0.377563 m/s
Attempt Newton solution of steady-state problem...    success.
Problem solved on [179] point grid(s).
no new points needed in flame
Flame speed with multicomponent transport: 0.382302 m/s
Attempt Newton solution of steady-state problem...    success.
Problem solved on [179] point grid(s).
no new points needed in flame
Flame speed with multicomponent transport + Soret: 0.376472 m/s

****************
Solution for phi = 1.3
****************
C:\CPrograms\flamespeed\exe>xflamespeed
Enter phi: 1.3
Enter initial guess: 0.24
Attempt Newton solution of steady-state problem...    success.
Problem solved on [177] point grid(s).
no new points needed in flame
Flame speed with mixture-averaged transport: 0.233185 m/s
Attempt Newton solution of steady-state problem...    success.
Problem solved on [177] point grid(s).
##############
Refining grid in flame.
    New points inserted after grid points 100 101
    to resolve C2H3
##############
Attempt Newton solution of steady-state problem...    success.
Problem solved on [179] point grid(s).
no new points needed in flame
Flame speed with multicomponent transport: 0.236359 m/s
Attempt Newton solution of steady-state problem...    success.
Problem solved on [179] point grid(s).
no new points needed in flame
Flame speed with multicomponent transport + Soret: 0.239529 m/s

Arief

Raymond...@gmx.net

unread,
Jul 14, 2018, 10:49:17 AM7/14/18
to Cantera Users' Group
Hi Ray, Hi Arief,

Arief, I used more grid points than you did. My goal is to minimize the discretization error and my expectation is that with my setup the discretization error is reduced compared to your setup. Note that the comparison is about the consistency of the predictions from the different programs and not about a comparison to experimental measurements.

Ray, these are the results without thermal diffusion (phi 1.3, in cm/s):
            OS           FM        CK-Pro  
            23.78        23.76     23.64   

I don't have CK-II results without thermal diffusion available right now. The thermal diffusion model has either a very small effect on the laminar burning velocity (here FM, CK-Pro) or it slightly decreases the laminar burning velocity (OS). Either way, it is not important for the comparison to Cantera.

The Cantera results in my previous post were obtained on a Xeon CPU E5-2695 v4 @ 2.10GHz and Cantera was compiled the Intel 18 compilers. Now, I've repeated the simulations with Cantera on my MacBookPro (source code + description + mechanism(s) attached, grid refinement criteria that are not mentioned below are as specified in the source code and the same for all cases). These are results for the laminar burning velocity (cm/s):
slope, curve: 0.005
23.2005
slope, curve: 0.0025
23.1783

This time I used clang/llvm (Apple LLVM version 9.0.0) to compile Cantera. The laminar burning velocity is a little bit larger, but very similar to my previous post.

Note that I've used a slightly modified version of the thermodynamic data in the gri3.0 kinetic scheme. So far, I've used this version for all simulations. The modifications result in a small discontinuity in the NASA polynomials of three species. I've repeated the simulations with the original thermodynamic data from the GRI3.0 model without the discontinuities. These are the results for the laminar burning velocity (cm/s):

slope, curve: 0.005
23.2675
slope, curve: 0.0025
23.2447

The change in the laminar burning velocity is relatively small. Does the implementation in Cantera handle discontinuities in the polynomials differently from continuous polynomials?
 
I've also tested whether different ways of specifying the unburned mixture can affect the agreement. I wanted to sure that I avoid errors due to assumptions about the composition of air. Copying the mass flux fraction from FlameMaster instead of using the fuel-air equivalence ratio has no significant effect on the results. Both approaches for are included in the code.

Best regards,
Raymond
gri30-cmp.zip

Raymond...@gmx.net

unread,
Jul 14, 2018, 11:01:29 AM7/14/18
to Cantera Users' Group
I've noticed that the attached zip-file doesn't include the README.md file that describes in more detail how I've compiled the flamespeed.cpp file. I've attached it to this post.


On Thursday, July 12, 2018 at 1:36:55 PM UTC+2, raymond...@gmx.net wrote:
README.md

arief...@gmail.com

unread,
Jul 14, 2018, 8:38:46 PM7/14/18
to canter...@googlegroups.com

Hello Raymond,

Here is the source code of the driver program I applied for the computations:

The adaptive gridding parameters (lines 123 to 125) are:

        double ratio = 10.0;
        double slope = 0.08;
        double curve = 0.1;

The parameter prune does not exist in the file xflamespeed.cpp

Perhaps you could apply these refinement criteria to see what happens.

Questions:
With phi = 1.3 Cantera invokes a node insertion between nodes 100, 101 and 102. Were there also node insertions with phi = 1.3 in your calculation? If so, how many, and, between which nodes of the initial grid? Would it be possible for you to share the iteration tableau of your calculation?

Here is the summary of the calculations (which I sent before):
Date: Sat, Jul 14, 2018 at 3:49 PM
Subject: [cantera-users] Re: Laminar burning velocity: Comparison to Chemkin-II / Chemkin-Pro / FlameMaster / OpenSMOKE++
To: Cantera Users' Group <canter...@googlegroups.com>


Hi Ray, Hi Arief,

Arief, I used more grid points than you did. My goal is to minimize the discretization error and my expectation is that with my setup the discretization error is reduced compared to your setup. Note that the comparison is about the consistency of the predictions from the different programs and not about a comparison to experimental measurements.

Ray, these are the results without thermal diffusion (phi 1.3, in cm/s):
            OS           FM        CK-Pro  
            23.78        23.76     23.64   

I don't have CK-II results without thermal diffusion available right now. The thermal diffusion model has either a very small effect on the laminar burning velocity (here FM, CK-Pro) or it slightly decreases the laminar burning velocity (OS). Either way, it is not important for the comparison to Cantera.

The Cantera results in my previous post were obtained on a Xeon CPU E5-2695 v4 @ 2.10GHz and Cantera was compiled the Intel 18 compilers. Now, I've repeated the simulations with Cantera on my MacBookPro (source code + description + mechanism(s) attached, grid refinement criteria that are not mentioned below are as specified in the source code and the same for all cases). These are results for the laminar burning velocity (cm/s):
slope, curve: 0.005
23.2005
slope, curve: 0.0025
23.1783

This time I used clang/llvm (Apple LLVM version 9.0.0) to compile Cantera. The laminar burning velocity is a little bit larger, but very similar to my previous post.

Note that I've used a slightly modified version of the thermodynamic data in the gri3.0 kinetic scheme. So far, I've used this version for all simulations. The modifications result in a small discontinuity in the NASA polynomials of three species. I've repeated the simulations with the original thermodynamic data from the GRI3.0 model without the discontinuities. These are the results for the laminar burning velocity (cm/s):

slope, curve: 0.005
23.2675
slope, curve: 0.0025
23.2447

The change in the laminar burning velocity is relatively small. Does the implementation in Cantera handle discontinuities in the polynomials differently from continuous polynomials?
 
I've also tested whether different ways of specifying the unburned mixture can affect the agreement. I wanted to sure that I avoid errors due to assumptions about the composition of air. Copying the mass flux fraction from FlameMaster instead of using the fuel-air equivalence ratio has no significant effect on the results. Both approaches for are included in the code.

Best regards,
Raymond

Raymond...@gmx.net

unread,
Jul 14, 2018, 9:10:10 PM7/14/18
to Cantera Users' Group
Hi Arief,

Could you explain why you suggest to use larger values for the grid parameters and how this reduces the discretization error?

In my previous post I've attached an archive (gri30-cmp.zip) which contains the file 'run.log'. It provides information about the inserted grid points.

Best regards,
Raymond 

arief...@gmail.com

unread,
Jul 14, 2018, 10:26:11 PM7/14/18
to canter...@googlegroups.com

Hello Raymond,

Many thanks. Will look into the zip file you sent and try to repeat the calculations with your number of grid nodes and refinement parameters.

I'm not suggesting to use coarser grid parameters. I just reported to you what I did in the calculations. And when Cantera said 'no additional points needed' then I assumed everything was Ok with my computations.

But obviously, if the choice of  grid parameters has such a large effect on the value of the laminar burning velocity then it implies that I need to re-do all my hydrogen and methane calculations with more stringent grid parameters.

The difference between 23.9529 cm/s and 23.1486 cm/s is 3.4%.

So I have reason to be worried (because the difference is > 2%). 

Arief


--
You received this message because you are subscribed to the Google Groups "Cantera Users' Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cantera-users+unsubscribe@googlegroups.com.
To post to this group, send email to canter...@googlegroups.com.
Visit this group at https://groups.google.com/group/cantera-users.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages