CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   What is the c3 coefficient in k-epsilon model? (https://www.cfd-online.com/Forums/openfoam/65144-what-c3-coefficient-k-epsilon-model.html)

Marcin June 5, 2009 08:24

What is the c3 coefficient in k-epsilon model?
 
Hi everyone!

I've tried to find some informations about the coefficients in the k-epsilon turbulence model and i found the c3, a coefficient which I can't find enywhere else. Does anybody know know what is it? And how big should be the value of it? I think the default value is -0.33. Why negative?

Thank's for any help.

Best regards,

Marcin

sega June 7, 2009 16:58

As "mentioned" in the code the default value for c3 is -0.33 and is corresponding to compressible flow only.
It is included in the dissipation equation for epsilon.

Marcin June 9, 2009 02:12

Hallo Sebastian,

thank you for your reply. I have also found these informations in the code. The problem is, I don't uznderstand them. I have comared some equations implemented in OpenFOAM with other, commercial codes (for example CFX) and most of them are simmilar or the same exept for the dissipation equation. I have also compared this equation with some literature and I haven't found anywhere else the C3 coefficient exept for some papers, where the C3 was 0.85. I have also searched for -0.33 value but without success. I would be pleased for some help.

Best regards,

Marcin

sega June 9, 2009 05:59

You habe obviously done far more research on this topic than me.
I'm quite new to turbulence and have only dealt with incompressible fluids so far.
Tough enough without compressible fluids ;)

Marcin June 10, 2009 02:11

Hallo Sebastian,

thak you anyway for your help. All my simulations are compressible and turbulent. The problem is, i have done some simulations of a stator blade of a compressor and comared the results of OpenFOAM with CFX. All values like velocities, pressure, mach number, kinetic energy and temperature of both simulations are quite similar with small or very small differences. The only problematic value is the dissipation. The difference between these codes is quite big with a value between 1e4 and 1e6 in depand of the position. I have no idea what could be the cause. When i change the C3 coefficient from -0.33 to 0.85 it doesn't seem to make a difference in the simulation, but I would anyway like to know, what it is.

Regards,

Marcin

waynezw0618 June 11, 2009 01:48

Hi Marcin

How do you give the inlet boundary value of k and epsilon for you blade?

i am doing the simulation with water pump.it is easy to give a value for SST ,but for k-epsilon,i always get divgence. i tried two ways

1 calculating it from the according the Programme guide P84

2 post the CFX result to get the k and epsilon value

but both leaded to divgence within 100 steps

how can I do

wayne
Quote:

Originally Posted by Marcin (Post 218745)
Hallo Sebastian,

thak you anyway for your help. All my simulations are compressible and turbulent. The problem is, i have done some simulations of a stator blade of a compressor and comared the results of OpenFOAM with CFX. All values like velocities, pressure, mach number, kinetic energy and temperature of both simulations are quite similar with small or very small differences. The only problematic value is the dissipation. The difference between these codes is quite big with a value between 1e4 and 1e6 in depand of the position. I have no idea what could be the cause. When i change the C3 coefficient from -0.33 to 0.85 it doesn't seem to make a difference in the simulation, but I would anyway like to know, what it is.

Regards,

Marcin


Marcin June 15, 2009 02:31

Dear Wayne,

I had also problems with the inlet boudary conditions for k and epsilon. I have also tried to set up predetermined values, but it doesn't seem to work in both codes. The one way you can loose it is:

the boudary condition for k:

type turbulentIntensityKineticEnergyInlet;
intensity 0.05;
value $internalField;

and for epsilon:

type turbulentMixingLengthDissipationRateInlet;
mixingLength 0.005;
value $internalField;

This is also the default adjustment in CFX in inlet. The problem is, that I get with these settings different results for k and epsilon in OpenFOAM and CFX and I don't know where these diffrences come from.
I would be pleased, if you could inform me about your results and how you solve your problem.

Regards, Marcin

rob3rt June 16, 2010 08:39

Hi Marcin,

I have a problem with kEpsilonCoeffs. I randomly selected some numbers (i.e. 0.09, 0.14, -0.33, etc.....) and it generates this error:

Selecting incompressible transport model Newtonian
Selecting RAS turbulence model kEpsilon


--> FOAM FATAL ERROR:
Attempt to return primitive entry ITstream : ::kEpsilonCoeffs, line 19, IOstream: Version 2.0, format ASCII, line 0, OPENED, GOOD
primitiveEntry 'kEpsilonCoeffs' comprises
on line 19 the doubleScalar -0.33
as a sub-dictionary

From function const dictionary& primitiveEntry::dict()
in file db/dictionary/primitiveEntry/primitiveEntry.C at line 107.

FOAM aborting

#0 Foam::error::printStack(Foam::Ostream&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libOpenFOAM.so"
#1 Foam::error::abort() in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libOpenFOAM.so"
#2 Foam::primitiveEntry::dict() in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libOpenFOAM.so"
#3 Foam::dictionary::subDict(Foam::word const&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libOpenFOAM.so"
#4 Foam::boussinesq::RASModel::RASModel(Foam::word const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::transportModel&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libboussinesqRASModels.so"
#5 Foam::boussinesq::RASModels::kEpsilon::kEpsilon(Fo am::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::transportModel&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libboussinesqRASModels.so"
#6 Foam::boussinesq::RASModel::adddictionaryConstruct orToTable<Foam::boussinesq::RASModels::kEpsilon>:: New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::transportModel&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libboussinesqRASModels.so"
#7 Foam::boussinesq::RASModel::New(Foam::GeometricFie ld<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::transportModel&) in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPOpt/libboussinesqRASModels.so"
#8
in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/applications/bin/linux64GccDPOpt/my_porousSimpleFoam8"
#9 __libc_start_main in "/lib/libc.so.6"
#10
in "/home/roberto/OpenFOAM/OpenFOAM-1.6.x/applications/bin/linux64GccDPOpt/my_porousSimpleFoam8"
Aborted

Do you have any suggestions??

Thanks very much in advance.

DimaZ January 16, 2011 10:18

compressible Launder Sharma k-e model
 
Hi all,
Does anybody know the reference for the implementation of the compressible k-e Launder Sharma k-epsilon model in OpenFOAM?
The incompressible formulation follows: Launder, B. E. and Sharma, B. I. (1974), "Application of the Energy-Dissipation Model of Turbulence to the Calculation of Flow Near a Spinning Disc", Letters in Heat and Mass Transfer, Vol. 1, No. 2, pp. 131-138.

But in the compressible implementation there is the constant CEpsilon3 and I'm just wondering about the reference for it.

Thanks in advance,
Dmitry


Eren10 July 1, 2011 09:06

Quote:

Originally Posted by DimaZ (Post 290621)


But in the compressible implementation there is the constant CEpsilon3 and I'm just wondering about the reference for it.



I want to use the incompressible case, but I see also there a C3 -0.33; I can't see this value in the paper of Launder ans Sharma. Did they introduced this term later ?

And is there a tutorial of LaunderSharma ? I want to see the required files.

Thanks.

DimaZ July 4, 2011 03:37

Quote:

Originally Posted by Eren10 (Post 314400)
I want to use the incompressible case, but I see also there a C3 -0.33; I can't see this value in the paper of Launder ans Sharma. Did they introduced this term later ?

And is there a tutorial of LaunderSharma ? I want to see the required files.

Thanks.

I did not find any. Regarding the tutorials and files: I can send you one of my own test cases, witch are validated, documented and published.
Best regards,
Dmitry

RJ87 July 19, 2013 04:48

Need some explanation on kEpsilon.C
 
Hi foamers,

I check through kEpsilon.C file and don't quite understand how

Code:

tmp<fvScalarMatrix> epsEqn
    (
        fvm::ddt(rho_, epsilon_)
      + fvm::div(phi_, epsilon_)
      - fvm::Sp(fvc::ddt(rho_) + fvc::div(phi_), epsilon_)
      - fvm::laplacian(DepsilonEff(), epsilon_)
    ==
        C1_*G*epsilon_/k_
      - fvm::SuSp(((2.0/3.0)*C1_ + C3_)*rho_*divU, epsilon_)
      - fvm::Sp(C2_*rho_*epsilon_/k_, epsilon_)
    );

why is the dissipative term is (- fvm::SuSp(((2.0/3.0)*C1_ + C3_)*rho_*divU, epsilon_)) instead of (- fvm::SuSp(((2.0/3.0)*C1_ - C3_)*rho_*divU, epsilon_).

I look through turbulence papers indicating that usage -((2.0/3.0)*C1-C3) with C3 assigned with negative value between 0 to 1 with the whole dissipative term a negative value. OpenFoam -((2.0/3.0)*C1+C3) with constant C3 assign with negative value of -0.33. In this case, if C3 is large enough, dissipative term will be a positive value. Any chances that something is wrong with the codes?

galap June 12, 2014 01:33

I have a question which goes in the same direction. Why is actually in the compressible kEpsilon model equation the constant C3 included in this way? For me, I don't understand why C3 contributes to the reynolds shear stress term, which does not follow the standard formulation according to

http://www.cfd-online.com/Wiki/Standard_k-epsilon_model

or books from e.g. Pope and Poisnot

C3 should be the constant for source due to buoyancy.


tmp<fvScalarMatrix> epsEqn
(
fvm::ddt(rho_, epsilon_)
+ fvm::div(phi_, epsilon_)
- fvm::Sp(fvc::ddt(rho_) + fvc::div(phi_), epsilon_)
- fvm::laplacian(DepsilonEff(), epsilon_)
==
C1_*G*epsilon_/k_
- fvm::SuSp(((2.0/3.0)*C1_ + C3_)*rho_*divU, epsilon_)
- fvm::Sp(C2_*rho_*epsilon_/k_, epsilon_)
);

I would exspect something like

..
- fvm::SuSp(((2.0/3.0)*C1_)*rho_*divU, epsilon_) + C3_*(..)
..

wyldckat December 16, 2014 06:07

Greetings to all!

Quote:

Originally Posted by Marcin (Post 218361)
I've tried to find some informations about the coefficients in the k-epsilon turbulence model and i found the c3, a coefficient which I can't find enywhere else. Does anybody know know what is it?

Sorry for the necro-bump, but the CFD-Online forums follow the principle of using a thread on the same topic to keep things on-topic, and there are some news about this question:
Just in case something happens to the internet, the reference added was this one:
Code:

    Reference:
        "k-epsilon equations for compressible reciprocating engine flows"
        El Tahry, S. H.,
        AIAA Journal of Energy 7 (1983), 345-353.

Best regards,
Bruno

fumiya March 19, 2017 23:54

There has been an update to this topic:
https://bugs.openfoam.org/view.php?id=2496
https://github.com/OpenFOAM/OpenFOAM...d9e4ffcdef2392

Best regards,
Fumiya

gu1 November 11, 2018 11:22

Hi,

Could anyone explain to me why constant C1 is multiplied twice (as marked in bold below)? To my understanding, it would only be necessary to multiply once...

Quote:

C1_*G*epsilon_/k_
- fvm::SuSp(((2.0/3.0)*C1_ + C3_)*rho_*divU, epsilon_)
By the way, can I end up with the constant C3 without fear of messing with my solution?! I think so, but...

New:
Quote:

C1_*G*epsilon_/k_
- fvm::SuSp((2.0/3.0)*rho_*divU, epsilon_)

wyldckat November 11, 2018 17:14

Quick answer: My guess is that this is related to the same paper from which the C3 term came from, because the 2/3 factor is also not found on most standard k-epsilon formulations.


All times are GMT -4. The time now is 04:51.