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/)
-   -   RANS FX63-137: kKlOmega and kOmegaSST models (https://www.cfd-online.com/Forums/openfoam-solving/155041-rans-fx63-137-kklomega-komegasst-models.html)

PierluigiRossi June 24, 2015 06:00

RANS FX63-137: kKlOmega and kOmegaSST models
 
Dear Foamers,

I am trying to compute the polar data for the Wortmann FX63-137 at Reynolds number 500000, both in the fully turbulent regime (using kOmegaSST turbulence model) and with the lam-turb transition model (using kKlOmega turbulence model).
I would like to obtain the polar data measured by Selig and McGranahan in [1], figs. 17-18.

My questions concern the numerical schemes and the solvers that are recommended to use.

Starting from the kOmegaSST run, I would like to ask to you which solvers do you use in your similar cases for the fields U, p, k, omega?
This is my fvSolution file:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.3.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    p
    {
        solver          PCG;
        preconditioner  DIC;
        relTol          0.1;
    }

    U
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }

    k
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }

    omega
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }
}

SIMPLE
{
    nNonOrthogonalCorrectors 3;
    pRefCell        0;
    pRefValue      0;

    residualControl
    {
        p              1e-7;
        U              1e-7;
        k              1e-7;
        omega          1e-7;
    }
}

relaxationFactors
{
    fields
    {
        p              0.3;
    }
    equations
    {
        U              0.7;
        k              0.7;
        omega          0.7;
    }
}

// ************************************************************************* //

Concerning the numerical schemes, below my fvSchemes file:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.3.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default        steadyState;
}

gradSchemes
{
    default        Gauss linear;
    grad(U)        cellLimited Gauss linear 1;
}

divSchemes
{
    default        none;
    div(phi,U)      bounded Gauss linearUpwindV grad(U);
    div(phi,k)      bounded Gauss upwind;
    div(phi,omega)  bounded Gauss upwind;
    div((nuEff*dev(T(grad(U))))) Gauss linear;
}

laplacianSchemes
{
    default        Gauss linear corrected;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        corrected;
}

fluxRequired
{
    default        no;
    p;
}

// ************************************************************************* //

Do you have some suggestions?

Despite the kKlOmega run, I would like to ask if someone has some hints about schemes and solvers for this model.
Below my fvSchemes and fvSolution files:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.3.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default        steadyState;
}

gradSchemes
{
    default        Gauss linear;
}

divSchemes
{
    default        none;
    div(phi,U)      bounded Gauss upwind grad(U);
    div(phi,kt)    bounded Gauss upwind;
    div(phi,kl)    bounded Gauss upwind;
    div(phi,omega)  bounded Gauss upwind;
    div((nuEff*dev(T(grad(U))))) Gauss linear;
}

laplacianSchemes
{
    default        Gauss linear corrected;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        corrected;
}

fluxRequired
{
    default        no;
    p              ;
}

// ************************************************************************* //

Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.3.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    p
    {
        solver          PCG;
        preconditioner  DIC;
        relTol          0.1;
    }

    U
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }

    kt
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }

    kl
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }

    omega
    {
        solver          BICCG;
        preconditioner  DILU;
        relTol          0.1;
    }
}

SIMPLE
{
    nNonOrthogonalCorrectors 3;
    pRefCell        0;
    pRefValue      0;

    residualControl
    {
        p              1e-7;
        U              1e-7;
        kt              1e-7;
        kl              1e-7;
        omega          1e-7;
    }
}

relaxationFactors
{
    fields
    {
        p              0.3;
    }
    equations
    {
        U              0.7;
        kt              0.7;
        kl              0.7;
        omega          0.7;
    }
}

// ************************************************************************* //

About the mesh, I am using an Ogrid mesh obtained with an hyperbolic extrusion and a wall distance of 2.5e-5 * chord length, in order to have an y+ < 1.
Here the checkMesh result:
Code:

Create time

Create polyMesh for time = 0

Time = 0

Mesh stats
    points:          483344
    internal points:  0
    faces:            961357
    internal faces:  478013
    cells:            239895
    faces per cell:  6
    boundary patches: 4
    point zones:      0
    face zones:      0
    cell zones:      0

Overall number of cells of each type:
    hexahedra:    239895
    prisms:        0
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:    0

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces...
    Patch              Faces    Points  Surface topology                 
    airfoil            1777    3554    ok (non-closed singly connected) 
    frontAndBack        479790  483344  ok (non-closed singly connected) 
    inflow              896      1794    ok (non-closed singly connected) 
    outflow            881      1764    ok (non-closed singly connected) 

Checking geometry...
    Overall domain bounding box (-87.0591 0 -87.8402) (87.8918 1 87.2957)
    Mesh (non-empty, non-wedge) directions (1 0 1)
    Mesh (non-empty) directions (1 0 1)
    All edges aligned with or perpendicular to non-empty directions.
    Boundary openness (-4.70703e-18 3.51173e-15 4.37863e-19) OK.
    Max cell openness = 1.7516e-15 OK.
    Max aspect ratio = 105.345 OK.
    Minimum face area = 2.27894e-09. Maximum face area = 7.93032.  Face area magnitudes OK.
    Min volume = 2.27894e-09. Max volume = 2.33894.  Total volume = 24065.3.  Cell volumes OK.
    Mesh non-orthogonality Max: 18.5434 average: 0.720871
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 1.45155 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End

My problems arise comparing lift and drag coefficients with [1].
I have obtained an under predicte CL and over predicted CD, both with kOmegaSST and kKlOmega.

Do you have some suggestions in order to improve my RANS simulations?
Thank you so much for the help and I hope to be clear enough.

Pier

References:
[1] Selig, M.S., and McGranahan, B.D., “Wind Tunnel Aerodynamic Tests of Six Airfoils for Use on Small Wind Turbines,” NREL/SR-500-34515, Oct. 2004.

niklatt July 3, 2015 05:18

Hi,

I did a revision of the kkl omega model 2 months ago because the implementation was faulty. The corrected model has been send to OpenFOAM but i don't know if it is already updated. You might want to contact Henry Weller and ask for the updated version.
I canot recommend using the original implementation of the kklomega model in OF 3.2.0 due to its massive bugs.

The updated version was tested for steady internal flows and yielded excellent results for all flow regimes.
I can recommend the following schemes:
Quote:


/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format binary;
class dictionary;
location "system";
object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
default steadyState;
}

gradSchemes
{
limitedGauss cellLimited Gauss linear 1;
default Gauss linear;
grad(U) Gauss linear;
grad(p) Gauss linear;
}

divSchemes
{
default none;
div(phi,U) bounded Gauss linearUpwindV limitedGauss;
div((nuEff*dev(T(grad(U))))) Gauss linear;
div(phi,kt) bounded Gauss limitedLinear 1;
div(phi,kl) bounded Gauss limitedLinear 1;
div(phi,omega) bounded Gauss limitedLinear 1;
div(U,p) Gauss linear;
}

laplacianSchemes
{
default Gauss linear corrected;
laplacian(muEff,U) Gauss linear corrected;
laplacian(alphaEff,h) Gauss linear corrected;
laplacian((rho*rAU),p) Gauss linear corrected;
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
laplacian(DkEff,k) Gauss linear corrected;
laplacian(1,p) Gauss linear corrected;
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
laplacian(DomegaEff,omega) Gauss linear corrected;
}

interpolationSchemes
{
default linear;
div(U,p) upwind phi;
}

snGradSchemes
{
default corrected;
}

fluxRequired
{
default no;
p ;
}


// ************************************************** *********************** //

// ************************************************** *********************** //
I used the follwoing fvsolution:
Quote:

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
p
{
solver GAMG;
tolerance 1e-08;
relTol 1.e-3;
smoother GaussSeidel;
nPreSweeps 2;
nPostSweeps 2;
cacheAgglomeration true;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;
mergeLevels 1;
}

"(U|kt|kl|omega)"
{
solver smoothSolver;
smoother GaussSeidel;
nSweeps 2;
tolerance 1e-010;
relTol 1.e-3;
}

}

SIMPLE
{
nNonOrthogonalCorrectors 1;
}

relaxationFactors
{
p 0.3;
U 0.7;
kl 0.8;
kt 0.8;
omega 0.8;
}


// ************************************************** *********************** //

klausb August 31, 2015 17:29

send me your mesh
 
Hello,

the mesh quality and fvSolution settings are critical for kklomega simulations... in particular relaxation factors especially for U. Residuals for p are also an issue.

Please upload your mesh (polyMesh directory). I need to run it to provide propper advise.

Klaus

PierluigiRossi September 17, 2015 04:59

Dear Niklatt,

thank you for your reply.
Can you suggest me how to contact Henry Weller?
Can you give me a test case that is working well with kKlOmega turb model?
I am using now OF2.4 and the foam-extend-3.1. Is it the last updating?

Thank you so much for your fvSchemes and fvSolutions.

Pier

niklatt September 17, 2015 09:57

1 Attachment(s)
Hi Pier,

I uploaded a 2D channel testcase at Re_tau=395 into my dropbox ordner: https://www.dropbox.com/sh/rnrrjzne1...hgeHMBF1a?dl=0

You might have to change the turbulence model from "kklupdated" to the original name of the the kklomega model in the RASProperties file ...

If everything is working fine and the model got fixed in OF 2.4 you should get a graph like the one I attached for the typical profiles.

PierluigiRossi September 28, 2015 11:35

Dear Niklatt,

thank you for your reply.
I have tried to run your case and my OF version seems to be not updated.
Are you speaking about the official 2.4 version?

How can I get the last version?
Thank you,

Pier

PierluigiRossi September 28, 2015 11:41

The version installed on my pc is this one:
https://github.com/OpenFOAM/OpenFOAM...e/RAS/kkLOmega

Can you suggest me where I can get the kklupdated turb model?

Thank you again.

RodriguezFatz September 29, 2015 03:30

Pierluigi, to your first post about recommendations for the schemes: If you encounter problems during the run with bounding errors of k and omega, you should try to limit the laplacian scheme for k and omega. I.e. "laplacian(DomegaEff,omega) Gauss linear limited 0.5;" or something similar. Also, I usually don't use first order upwind, but second order upwind for them.

niklatt September 29, 2015 07:59

Dear Pierluigi,

you can get the version I am using here:
https://www.dropbox.com/sh/62pbu4us4...Wl8c2EDda?dl=0

So far I have tested this model for steady channel flows and a backward facing step. I also suggest to change the model constant "CR" to the value of 59 (In the RASProperties File, there is no need to recompile the code to change the coefficients). I did a recalibration for the model for internal flows and with the value of 59 the model predicts the Darcy friction factor in pipes very well and also the BFS simulations look quite nicely compared to experimental data.
Cheers
niklatt

dsn September 29, 2015 15:29

kklOmega Model
 
Hi niklatt,

I have downloaded the model which you have updated and when I try to compile it, I get the following error.

Code:

kkLOmegaupdated.C:89:21: error: prototype for ‘Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::incompressible::RASModels::kkLOmega::fTaul(const volScalarField&, const volScalarField&, const volScalarField&) const’ does not match any in class ‘Foam::incompressible::RASModels::kkLOmega’
 tmp<volScalarField> kkLOmega::fTaul
                    ^
In file included from kkLOmegaupdated.C:31:0:
/home/aditya/OpenFOAM/OpenFOAM-2.3.0/src/turbulenceModels/incompressible/RAS/lnInclude/kkLOmega.H:115:29: error: candidate is: Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::incompressible::RASModels::kkLOmega::fTaul(const volScalarField&, const volScalarField&) const
        tmp<volScalarField> fTaul
                            ^
kkLOmegaupdated.C:192:3: error: no ‘Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::incompressible::RASModels::kkLOmega::gammaNat(const volScalarField&, const volScalarField&) const’ member function declared in class ‘Foam::incompressible::RASModels::kkLOmega’
 ) const
  ^
kkLOmegaupdated.C: In member function ‘virtual void Foam::incompressible::RASModels::kkLOmega::correct()’:
kkLOmegaupdated.C:696:58: error: no matching function for call to ‘Foam::incompressible::RASModels::kkLOmega::fTaul(const volScalarField&, const volScalarField&, const volScalarField&)’
          * sqr(lambdaEff)/nu()*fTaul(lambdaEff,ktL,omega)
                                                          ^
kkLOmegaupdated.C:696:58: note: candidate is:
In file included from kkLOmegaupdated.C:31:0:
/home/aditya/OpenFOAM/OpenFOAM-2.3.0/src/turbulenceModels/incompressible/RAS/lnInclude/kkLOmega.H:115:29: note: Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::incompressible::RASModels::kkLOmega::fTaul(const volScalarField&, const volScalarField&) const
        tmp<volScalarField> fTaul
                            ^
/home/aditya/OpenFOAM/OpenFOAM-2.3.0/src/turbulenceModels/incompressible/RAS/lnInclude/kkLOmega.H:115:29: note:  candidate expects 2 arguments, 3 provided
kkLOmegaupdated.C:721:42: error: ‘gammaNat’ was not declared in this scope
      1.0-exp(- gammaNat(ReOmega,fNatCrit)/Anat_)
                                          ^
make: *** [Make/linux64GccDPOpt/kkLOmegaupdated.o] Error 1

Can you please tell me why this is happening

Thanks

niklatt September 29, 2015 17:02

Hi dsn,

I am not an expert about questions how exactly OpenFoam works (I have mainly modified the physical modeling in the model) but you can try not to implement my model as an additional model but to modify the original one and recompile it.
It could be that there are additional changes to other files necessary when implementing a complete new model.

You can try to implement the changes from my model directly to the original model and then recompile it. This would be a little work but the necessary changes are in the functions:
fINT
lambdaT
fTaul
fw
Dt
Dl

lastly the omega equation needs to be replaced by this (only sqr(fw) is added):
tmp<fvScalarMatrix> omegaEqn
(
fvm::ddt(omega_)
+ fvm::div(phi_, omega_)
- fvm::laplacian
(
DomegaEff(alphaTEff),
omega_,
"laplacian(alphaTEff,omega)"
)
==
Cw1_*Pkt*omega_/(kt_ + kMin_)
+ fvm::SuSp
(
(CwR_/(fw + fwMin) - 1.0)*kl_*(Rbp + Rnat)/(kt_ + kMin_)
, omega_
)
- fvm::Sp(Cw2_*sqr(fw)*omega_, omega_)
+ Cw3_*fOmega(lambdaEff, lambdaT)*alphaTEff*sqr(fw)*sqrt(kt_)/pow3(y_)
);


I know this is not a very elegant approach but maybe with more insight into the OpenFoam structure can help with a better way to get it running.
Cheers
Niklatt

klausb October 2, 2015 12:50

How can I set a model constant in the RASproperties file?
 
Hi,

you mentioned above, that a model constant can be changed/set in the RASproperties file.

What's the syntax/how is that done?

I'd like to change CtsCrit 1000; to a differnt value.

Klaus

PierluigiRossi October 5, 2015 09:22

kkLOmegaCoeffs
{
CtsCrit xxxx;
}

hamide December 7, 2015 01:35

hi friends
i'm going to run a pisoFoam algorithm of a simple duct, but i face to a problem as follow:


Starting time loop

Time = 0.0005

Courant Number mean: 3.90625e+290 max: 3.125e+292
#0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2 in "/lib/x86_64-linux-gnu/libc.so.6"
#3 void Foam::fvc::surfaceIntegrate<Foam::Vector<double> >(Foam::Field<Foam::Vector<double> >&, Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh> const&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#4 Foam::tmp<Foam::GeometricField<Foam::Vector<double >, Foam::fvPatchField, Foam::volMesh> > Foam::fvc::surfaceIntegrate<Foam::Vector<double> >(Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh> const&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#5 at gaussDivSchemes.C:0
#6 Foam::fv::gaussDivScheme<Foam::Tensor<double> >::fvcDiv(Foam::GeometricField<Foam::Tensor<double >, Foam::fvPatchField, Foam::volMesh> const&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#7 Foam::tmp<Foam::GeometricField<Foam::innerProduct< Foam::Vector<double>, Foam::Tensor<double> >::type, Foam::fvPatchField, Foam::volMesh> > Foam::fvc::div<Foam::Tensor<double> >(Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> const&) in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libincompressibleTurbulenceModel.so"
#8 Foam::incompressible::RASModels::kEpsilon::divDevR eff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const in "/opt/openfoam220/platforms/linux64GccDPOpt/lib/libincompressibleRASModels.so"
#9
in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pisoFoam"
#10 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#11
in "/opt/openfoam220/platforms/linux64GccDPOpt/bin/pisoFoam"
Floating point exception (core dumped)


i don't know how to fix it!!!!!!!

the blockMeshdict is:

convertToMeters 1;

vertices
(
(0 0 0) //0
(0.4 0 0) //1
(0 0.02 0) //2
(0.4 0.02 0) //3
(0 0 -0.01) //4
(0.4 0 -0.01) //5
(0 0.02 -0.01) //6
(0.4 0.02 -0.01) //7
);

blocks
(
hex (0 1 3 2 4 5 7 6) (80 4 1) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
inlet
{
type patch;
faces
(
(4 0 2 6)
);
}
outlet
{
type patch;
faces
(
(5 1 3 7)
);
}
wall
{
type wall;
faces
(
(4 0 1 5)
(6 2 3 7)
);
}
frontAndBack
{
type empty;
faces
(
(0 1 3 2)
(4 5 7 6)
);
}
);

mergePatchPairs
(
);


and the u file:

dimensions [0 1 -1 0 0 0 0];

internalField uniform (0 0 0);

boundaryField
{
inlet
{
type fixedValue;
value uniform (5 0 0);
}

outlet
{
type zeroGradient;
}

wall
{
type fixedValue;
value uniform (0 0 0);
}

frontAndBack
{
type empty;
}
}



and p file:


dimensions [0 2 -2 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type zeroGradient;
}

outlet
{
type fixedValue;
value uniform 0;
}

wall
{
type zeroGradient;
}

frontAndBack
{
type empty;
}
}


and epsilon file:

dimensions [0 2 -3 0 0 0 0];

internalField uniform 5.2;
boundaryField
{
inlet
{
type fixedValue ;
value uniform 5.2;
}

outlet
{
type zeroGradient;
}

wall
{
type epsilonWallFunction;
value uniform 5.2;
}

frontAndBack
{
type empty;
}
}


and k file:


dimensions [0 2 -2 0 0 0 0];

internalField uniform 0.09375;

boundaryField
{
inlet
{
type fixedValue;
value 0.0009375;
}

outlet
{
type zeroGradient;
}

wall
{
type kqRWallFunction;
value uniform 0.09375;
}

frontAndBack
{
type empty;
}
}



and nut file:




dimensions [0 2 -1 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type calculated
value uniform 0;
}

outlet
{
type calculated;
value uniform 0;
}

wall
{
type nutkWallFunction;
value uniform 0;
}

frontAndBack
{
type empty;
}
}




and nuTilda file:


dimensions [0 2 -1 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type fixedValue;
value uniform 0;
}

ouelet
{
type zeroGradient;
}

wall
{
type zeroGradient;
}

frontAndBack
{
type empty;
}
}






i don't know what the problem is :(
would you please help me?

malv83 June 17, 2016 15:27

new model
 
After 8 years, there is a new version (or new model) of the k-kl-omega model.

There are a few problems with the k-kl-omega model in the farfield. One of them is the growth of Laminar Kinetic energy when separation occurs. Lopez and Walters have a paper (have not been published yet) correcting this issue:

Maurin Lopez. D. K. Walters. “A recommended correction to the k-kl-omega transition sensitive eddy-viscosity model”. Journal of Fluid Engineering.

This correction has to be made to the 2008 k-kl-omega model from now on.

Now, Lopez and Walters also developed a new transitional model (k-omega-v2) as an alternative to the k-kl-omega one. This new model has more capabilities (it is more reliable) than the k-kl-omega model, especially in the farfield computations. Fortunately the paper for this new model is already publish.

Maurin Lopez. D. K. Walters. “Prediction of transitional and fully turbulent free shear flows using an alternative to the laminar kinetic energy approach”. Journal of Turbulence, Vol 17, Iss. 3, 2016.

If you see the papers, you will immediately see how the k-kl-omega model is not good for free shear flows, and how the new model corrects all those issues. From now on, k-kl-omega users have to start using the new k-omega-v2 model.

be_inspired November 28, 2019 17:33

Is there any implementation of the new k-omega-v2 into openfoam?
Best regards

HPE November 29, 2019 00:03

nope at least for the official repos.


All times are GMT -4. The time now is 07:37.