CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Combustion (https://www.cfd-online.com/Forums/openfoam-solving/57815-combustion.html)

Chalothon Thumthae (Thumthae) February 3, 2004 22:46

Hello, I try to model non-pr
 
Hello,
I try to model non-premix combustion in SI engine(inject gaseous fuel into cylinder and ignite it) . Fist I use kivaTest in the tutorial, it have many parameters that I don't know such as Xi,Su,sigmaExt and ...... .
What kind of this combustion model? As I ever model combustion with finnite rate/ eddy breakup, the input parameter is quite different from Foam model. How can I find theory and laterature of Foam combustion model?

Help me please.
Thank
Torn.

Henry Weller (Henry) February 4, 2004 05:37

Currently the FOAM premixed/pa
 
Currently the FOAM premixed/partially-premixed combustion codes are supplied with the Weller flamelet combustion model. This was originally developed by me while I was at Imperial College and the first report I wrote on it is available from
ftp://monet.me.ic.ac.uk/pub/papers/TF9307.ps.gz However I have developed and expended the model significantly since then and the latest implementation in FOAM is a a form I originally developed for LES http://monet.me.ic.ac.uk/publications/abstracts.html#Welleretal:1998
from which I redeveloped a RANS version. There is also a second publication on the final model in the proceedings of the 28th Combustion Symposium.

If you have trouble finding either of these papers let me know and I will dig them out for you.

Tommaso Lucchini (Lucchini) March 7, 2005 04:29

Hi Henry, I am using OpenFo
 
Hi Henry,
I am using OpenFoam to predict combustion in spark-ignition engines. I always have an overestimation of the heat release rate in the first part of the combustion process compared with the experimental one.
I am using the b-Xi combustion model with Xi calculated.
I found on a Comodia Paper, called "Validation of SI Combustion Model over Range of Speed, Load, Equivalence Ratio and Spark timing", that the value of Xi at equilibrium condition is calculated differently from how it is calculated in the bEqn.H.
In fact it contains some extra stuff, like the stretch factor I0, the effetct of laminar flame propagation, turbulence and lenght scale effects when the flame radius is small.
Is this implementation very much different from the OpenFoam one, and more suitable for engine spark-ignition combustion?
If so, which value for the stretch factor?
How to calculate the flame radius? could it be the distance from the ignition point and the farthest point in the flame with b minor than a certain value?
Which value for tOG? I found 1.5 ms, is it ok?
Thanks a lot. wishes.
tommaso

Henry Weller (Henry) March 7, 2005 06:47

"with Xi calculated" using wh
 
"with Xi calculated" using which method?

> Is this implementation very much different from the OpenFoam one

Yes

> and more suitable for engine spark-ignition combustion?

No, that model is a simplified 2-eqn model using a turbulent flame speed correlation fitted to engine data but has been superseded by the model presented at the 27th symposium.

> If so, which value for the stretch factor?

It depends on the fuel, stoichiometry etc. but for engines it's not usually important so set the
SuModel to unstrained.

> How to calculate the flame radius?

What do you need it for? The flame is not necessarly spherical. Wouldn't calculating the flame volume be more useful to you?

What is tOG?

Tommaso Lucchini (Lucchini) March 7, 2005 07:21

Hi, Xi is calculated at the
 
Hi,
Xi is calculated at the equilibrium conditions. (I wanted to write "algebraic" and not calculated... sorry).
So I am using the one-equation model.
tOG is a constant which is used in the eq. number (3) of the comodia 1998 paper.
thanks
tommaso

Henry Weller (Henry) March 7, 2005 07:26

> Xi is calculated at the equ
 
> Xi is calculated at the equilibrium conditions.

That explains your problem of the flame being too fast initially; it's because you are assuming the wrinkling is in equilibrium when it really takes time to develop. Try the transport option, that allows the wrinkling to develop in space and time appropriately for your case.

The model in XiFoam etc. is not based on the model in comodia 1998 and does not have an equivalent of tOG.

lucchini March 9, 2005 03:17

Hi, It seems to me that the i
 
Hi,
It seems to me that the ignition model influences very much all the combustion process.
If, after the igntion duration, the ignition cells have b major than zero, that b value will become the minimum value for b in all the cells.
So, in my opinion, it is not really possible to describe really the flame kernel development with only the 2 equation model.
Maybe, adding a source term in the bEqn.H that takes account of the kernel development, could it be better?
any suggestions?
thanks a lot. wishes.
ciao
tommaso

henry March 9, 2005 03:46

It is VERY important with the
 
It is VERY important with the b-Xi model to ensure that b -> 0 and remains 0 in the ignition region otherwise the minimum b in the field will remain this value. Currently this is done by appropriate choice of the ignition paramerters. This is currently done by trial-and-error.

The ignition model is already introduced as a sink-term in the bEqn.H with correction on the local flame speed corresponding to the bad resolution of the flame kernel in that region (StCorr.H). If you have a better idea for modelling ignition in the b-Xi model I am very interested to hear your thoughts.

sathiah March 11, 2005 09:09

Why is the value of uPrimeCoef
 
Why is the value of uPrimeCoef =2 in tutorial case of XiFoam and Xoodles.
I think it should be equal to 1

henry March 11, 2005 09:22

Yes it should be 1 for all cas
 
Yes it should be 1 for all cases for which the mesh is fine enough to produce good predictions for the turbulence properties and should certainly be 1 for all LES cases but I am not so sure about the XiFoam tutorial case.

henry March 11, 2005 09:29

Also the default should be set
 
Also the default should be set to 1 in the FoamX defaults files:

applications/combustion/Xoodles/defaults/combustionProperties.def
applications/combustion/XiFoam/defaults/combustionProperties.def
applications/combustion/engineFoam/defaults/combustionProperties.def

lucchini March 11, 2005 09:58

Hi, I was running the kivaTe
 
Hi,
I was running the kivaTest tutorial case on the 1.0.2 version (I haven't updated to the 1.1 yet), but it doesn't work. It crashes at about -9 CAD before the top death center because a temperature lower than 298 K was found.
I guess if it could be because of the boundary condition on temperature (T and Tu), which is fixed for the liner, piston, and cylinderHead.
This tutorial was working on the 2.2 version of the "old" foam....
I tried it with different values for the maximum Courant Number but nothing really changed.
Any suggestion please?
thanks a lot. wishes
ciao
tommaso

sathiah March 12, 2005 04:25

When I run XiFoam in my case I
 
When I run XiFoam in my case I get this error

FOAM FATAL ERROR : attempt to use janafThermo<equationofstate> out of temperature range 200 -> 5000; T = 193.577

Function: janafThermo<equationofstate>::checkT(const scalar T) const
in file: /users/tfd/pratap/OpenFOAM/OpenFOAM-1.0.2/src/thermophysicalModels/specie/lnIncl ude/janafThermoI.H at line: 73.

FOAM aborting

I increased the ignition time and ignition diameter, but of no use.
Pratap

henry March 13, 2005 05:20

Tommaso, I ran the kivaTest
 
Tommaso,

I ran the kivaTest tutorial over night and it ran correctly to completion: -180 to 60. How did you perform the run? Did you use the Allrun script or run the equivalent sequence of events?

lucchini March 13, 2005 13:30

I didn't use the Allrun script
 
I didn't use the Allrun script.
Firstly I converted the mesh with the kivaToFoam application. Then I ran the compression using the controlDict.1st file, and then the combustion with the controlDict.2nd.

henry March 13, 2005 13:42

That is what the Allrun script
 
That is what the Allrun script does anyway so it should have worked but try the script anyway just in case because as I say it works fine for me.

lucchini March 15, 2005 04:08

Hi. I have a question about t
 
Hi.
I have a question about the transport equation of Xi. Why is it solved only after the ignition and not before?
Should Xi be something related to the conditions for the flame propagation?
Thanks.
ciao
tommaso

henry March 15, 2005 04:22

The Xi transport MUST be consi
 
The Xi transport MUST be consistent with the b transport and because the latter is implicit it can only be evaluated for the Xi equation after the b equation is solved. Consequently the Xi value used in the b equation is lagged but this isn't an issue if your time-step is sufficiently small. If you would like to check this hypothesis try iterating over bEqn.H a few times to see if it affects your results significantly.

thumthae March 16, 2005 22:30

Hi Tommaso, I also used en
 
Hi Tommaso,

I also used engineFoam and got same problem like as you, kivaTest is not complete run.

the solution diverge with the temperature out of range (lower than 200 K). I also try to run with other mash, and it was the same.

the solution diverge after combustion reach to the wall. I guess it have problem at the wall, so I try to changed boundary condition at wall to wall function at "line" and "cylinderHead" at the piston I changed to movingWallAdiabatic, then it work. I guess the problem probably at the wall.

Henry,
I try run kivaTest with Allrun scrit, yes it work.
However after I check solution, the combustion does not occur. the combustion reach only about 1e-12 percent.

this problem occur since OpenFOAM1.0.x version. in Foam2.2 it can run completely.

I see some changed in the code at pEqu difference from the older version, but I don't know Is it concern or not.

Torn

henry March 17, 2005 03:59

You are quite right, the kivaT
 
You are quite right, the kivaTest case fails to ignite. The problem appears to be with the location of the ignition point which I think is slightly outside the domain and with the new parallelised ignition cell finding routine no ignition cells are found whereas they were before. I will investigate and post a fix.

henry March 17, 2005 04:51

The specified ignition locatio
 
The specified ignition location is indeed outside the domain, try changing it to

location (0.03 0 0.091);

thumthae March 17, 2005 21:42

Henry I just finished run e
 
Henry

I just finished run engineFoam with spark location at center 0.0, 0.0, 0.092, combustion exist. However when combustion progress reach about 6.7 % it error.

like here....

Combustion progress = 6.7208%
BICCG: Solving for hu, Initial residual = 0.00182041, Final residual = 1.09263e-06, No Iterations 1
BICCG: Solving for h, Initial residual = 0.00200048, Final residual = 1.02023e-06, No Iterations 1


--> FOAM FATAL ERROR : attempt to use janafThermo<equationofstate> out of temperature range 298.15 -> 5000; T = 296.354

Function: janafThermo<equationofstate>::checkT(const scalar T) const
in file: /home/dm2/henry/OpenFOAM/OpenFOAM-1.1/src/thermophysicalModels/specie/lnInclude/ janafThermoI.H at line: 73.

FOAM aborting

Aborted

.............................................

It strange at line

file: /home/dm2/henry/OpenFOAM/OpenFOAM-1.1/src/thermophysicalModels/specie/lnInclude/ janafThermoI.H at line: 73.

I don't have this folder(/home/dm2/henry/), why it show in error message.

Thank.
Torn

henry March 18, 2005 05:00

I think the difference in beha
 
I think the difference in behaviour between Foam2.2 and OpenFOAM is in the heat-transfer boundary condition. I can get the kivaTest case to run fine with adiabatic walls but not with fixed temperatures wall. I will investigate further but in the meantime try running adiabatic.

henry March 23, 2005 03:41

I have found the problem with
 
I have found the problem with the heat transfer, it does not relate to the temperature field T but to the unburnt gas temperature Tu so the problem only occurs for codes using the hhu* thermodynamics packages like Xoodles, XiFoam and engineFoam and only for cases with fixed temperature walls. I will include the corrected thermodynamics package in the 1.1.1 release, in the meantime if you are running these codes I suggest you use adiabatic walls.

thumthae March 23, 2005 05:16

Henry, Thank you for the inves
 
Henry, Thank you for the investigation.

With adiabatic wall the solution quite over predicted. So I change to wallFunction b.c. type,which it not fixed temperature and I got resonable results.

However, I'm not clear what the physical of wallFunction b.c. condition.

What differences of wallFunction compare with wallFixedTemp and wallAdiabatic.

please suggest.

Torn

henry March 23, 2005 05:20

Have a look at the boundary co
 
Have a look at the boundary conditions each of these options sets for the fields and you will see the difference. You can reconfigure FoamX to give a different set of boundary conditions for your cases if you need to or edit the fields directly.

thumthae April 28, 2005 03:30

Hi Henry After I run engine
 
Hi Henry

After I run engineFoam, I got some strange with the combustion progress is over 100% and b value is negative.

Is it bug of the solver?

henry April 28, 2005 03:35

This is not a bug in the solve
 
This is not a bug in the solver it is unboundedness associated with your choice of discretisation schemes time-step etc. How negative is b? What schemes have you tried? What coefficient are you using for the schemes you have tried?

thumthae April 28, 2005 05:10

Henry, All schemes are defult
 
Henry,
All schemes are defult scheme of engineFoam. I got b=-0.03

with backward-different scheme I got b=-0.27

However I think it not concern with result because the combustion finished since 100% progress(b=0)

Torn

henry April 28, 2005 05:15

You should not rely on the def
 
You should not rely on the defaults and choose schemes appropriate for your case. If you are not sure what is appropriate you should try out combinations until you get the best balance between accuracy, boundedness, stability and efficiency, this is standard practice in CFD.

mattos April 28, 2005 09:14

Hi Henry In the message of
 
Hi Henry

In the message of Feb/04-2005 you give us an electronic address to access your report and article abstract (monet.me.ic.ac.uk) . But I had not success to acess it, because it appear for me that it is unknown host. Is that address unavailable now? What can I do to obtain these docs?

And congratulations for the initiative to left OpenFoam as open source for CFD community.

Tanks you in advance for your help

Wladimyr

henry April 28, 2005 09:43

Unfortunately due to errors in
 
Unfortunately due to errors in the administrators of monet.me.ic.ac.uk the web-site is down/not accessible and we will have to find another home for these documents. Do you know which ones you would like to have?

mattos April 28, 2005 11:06

Hi Henry Fisrt, I would lik
 
Hi Henry

Fisrt, I would like to obtain these two references that you wrote at Feb/04-2005 which are related with the combustion models implemented in OpenFOam.

Second, if you may list all references which are related with the combustion models implemented in the OpenFoam it can help us very much. Are these references available for general public? I would like to suggest to include the references that the solvers are based as comments in the source code of these ones (if it is not alread donne!).
I would like to use the Openfoam in our researches of gas turbine combustion chamber and rocket engines.

Once more, tank you in advance for your help.

Wladimyr

henry April 28, 2005 11:18

We are planning to create a pa
 
We are planning to create a page on the web-site from which you will be able to download all our papers and reports but I am not sure when it will be ready. Recently I started pulling together all the reports I have written in the past on my combustion modelling into a single consistent report, it's not finished but at least it includes everything I have written so far on my model and I will Email you what I have done so far.

Currently the only premixed/partially premixed model released with OpenFOAM is my own model but it is easy to implement most other models like presumed-PDF, eddy-break-up etc. etc. The only model included to Diesel combution is the EDC model from the guys at Chalmers -- contact them for more info.

lucchini April 28, 2005 14:41

I have a copy of the TF9307 re
 
I have a copy of the TF9307 report. If you are interested in send me an e-mail and I can send it to you.
ciao
tommaso

thumthae April 28, 2005 22:47

Hi Wladimyr, I have a copy
 
Hi Wladimyr,

I have a copy of "Application of a Flame-Wrinkling LES Combustion Model to a Turbulent Mixing Layer" if you want I can sent it to you

Tommaso
Do you also run the combustion solver. May be we can exchange an experience.

mattos April 29, 2005 14:27

Hi Tommaso and Chalothon Fi
 
Hi Tommaso and Chalothon

First of all, I wish send many tanks fou your promptness offer. Please, could you send me these reports to me? I will be very glade. You can mail me to gmail addres: wladimyrmd AT gmail dot com, because it is wider then my terra accout. But if it is not so big, you can send me to terra account anyway. The addres is: wladimyrmd AT terra dot com dot br.

I think that soon I will participate in the exchange of experience discussion group. I would like to test OpenFOam in the same test case that I considered in my PhD. Thesis: turbulent reactive wake of a bluf body.

Many tanks in advance

Wladimyr Dourado

seang April 29, 2005 19:26

hiya Wladimyr just wonderin
 
hiya Wladimyr

just wondering, are you looking at the Sandia bluff body flames (non-premixed) for your phd?

Tek Seang

mattos April 30, 2005 09:54

Hi Tek Seang I really concl
 
Hi Tek Seang

I really concluded my PhD one and half year ago. I used data of LCD/CNRS at Poitiers premixed test bench to validate my code. It is a rectangular cross section channel with bluff body inside where blocking ration variates since 33% up to 50%. I really tested only one geometry, one blocking ration and one flow mass. I need test my code for others configurations which experimental data are available.

Did I answer you?

Wladimyr Mattos C. Dourado

adorean May 3, 2005 06:46

Hello, I would very much
 
Hello,

I would very much appreciate some guidelines for using 'dieselEngineFoam'.

Is it OK to define the piston, liner and cylinderhead temp. b.c. as fixedValue?

And how is that light speed-like value of "Average Velocity for injector 0: 5.63034e+06 m/s, injection pressure = 1200 bar" calculated?
Does this need to be calculated, even if injection doesn't exist at that time?

For a calculation starting at -180 CAD and ending at -10 CAD, the injection beginning at -4.4 CAD I always get divergence quite soon (-170 CAD for ex. or sooner), because of a high Courant number.
Which is the best way of keeping the Courant number low?

Or, maybe my case setup is wrong.
If anyone has experience with dieselEngineFoam, please help me setup correctly a case: the 'time' directory and the 'system' directory are those that I'm not sure that are OK.

Thanks!

Ervin


All times are GMT -4. The time now is 10:21.