Low Reynolds-number k-kl-omega turbulence model for incompressible flows. More...
Public Member Functions | |
TypeName ("kkLOmega") | |
Runtime type information. More... | |
kkLOmega (const geometricOneField &alpha, const geometricOneField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &type=typeName) | |
Construct from components. More... | |
virtual | ~kkLOmega () |
Destructor. More... | |
virtual bool | read () |
Read RASProperties dictionary. More... | |
tmp< volScalarField > | DkEff (const volScalarField &alphaT) const |
Return the effective diffusivity for k. More... | |
tmp< volScalarField > | DomegaEff (const volScalarField &alphaT) const |
Return the effective diffusivity for omega. More... | |
virtual tmp< volScalarField > | kl () const |
Return the laminar kinetic energy. More... | |
virtual tmp< volScalarField > | kt () const |
Return the turbulence kinetic energy. More... | |
virtual tmp< volScalarField > | omega () const |
Return the turbulence specific dissipation rate. More... | |
virtual tmp< volScalarField > | k () const |
Return the total fluctuation kinetic energy. More... | |
virtual tmp< volScalarField > | epsilon () const |
Return the total fluctuation kinetic energy dissipation rate. More... | |
virtual void | validate () |
Validate the turbulence fields after construction. More... | |
virtual void | correct () |
Solve the turbulence equations and correct the turbulence viscosity. More... | |
![]() | |
eddyViscosity (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport) | |
Construct from components. More... | |
virtual | ~eddyViscosity () |
Destructor. More... | |
virtual tmp< volScalarField > | nut () const |
Return the turbulence viscosity. More... | |
virtual tmp< scalarField > | nut (const label patchi) const |
Return the turbulence viscosity on patch. More... | |
virtual tmp< volSymmTensorField > | sigma () const |
Return the Reynolds stress tensor [m^2/s^2]. More... | |
![]() | |
linearViscousStress (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport) | |
Construct from components. More... | |
virtual | ~linearViscousStress () |
Destructor. More... | |
virtual tmp< volSymmTensorField > | devTau () const |
Return the effective stress tensor. More... | |
virtual tmp< fvVectorMatrix > | divDevTau (volVectorField &U) const |
Return the source term for the momentum equation. More... | |
virtual tmp< fvVectorMatrix > | divDevTau (const volScalarField &rho, volVectorField &U) const |
Return the source term for the momentum equation. More... | |
Protected Member Functions | |
virtual void | correctNut () |
Additional Inherited Members | |
![]() | |
typedef incompressible::RASModel ::alphaField | alphaField |
typedef incompressible::RASModel ::rhoField | rhoField |
typedef incompressible::RASModel ::transportModel | transportModel |
![]() | |
typedef incompressible::RASModel ::alphaField | alphaField |
typedef incompressible::RASModel ::rhoField | rhoField |
typedef incompressible::RASModel ::transportModel | transportModel |
Low Reynolds-number k-kl-omega turbulence model for incompressible flows.
This turbulence model is described in:
Walters, D. K., & Cokljat, D. (2008). A three-equation eddy-viscosity model for Reynolds-averaged Navier–Stokes simulations of transitional flow. Journal of Fluids Engineering, 130(12), 121401.
however the paper contains several errors which must be corrected for the model to operation correctly as explained in
Furst, J. (2013). Numerical simulation of transitional flows with laminar kinetic energy. Engineering MECHANICS, 20(5), 379-388.
All these corrections and updates are included in this implementation.
The default model coefficients are
kkLOmegaCoeffs { A0 4.04 As 2.12 Av 6.75 Abp 0.6 Anat 200 Ats 200 CbpCrit 1.2 Cnc 0.1 CnatCrit 1250 Cint 0.75 CtsCrit 1000 CrNat 0.02 C11 3.4e-6 C12 1.0e-10 CR 0.12 CalphaTheta 0.035 Css 1.5 CtauL 4360 Cw1 0.44 Cw2 0.92 Cw3 0.3 CwR 1.5 Clambda 2.495 CmuStd 0.09 Prtheta 0.85 Sigmak 1 Sigmaw 1.17 }
Definition at line 107 of file kkLOmega.H.
kkLOmega | ( | const geometricOneField & | alpha, |
const geometricOneField & | rho, | ||
const volVectorField & | U, | ||
const surfaceScalarField & | alphaRhoPhi, | ||
const surfaceScalarField & | phi, | ||
const transportModel & | transport, | ||
const word & | type = typeName |
||
) |
Construct from components.
Definition at line 219 of file kkLOmega.C.
References Foam::bound(), GeometricField< Type, PatchField, GeoMesh >::correctBoundaryConditions(), kkLOmega::epsilon_, kkLOmega::kl_, kkLOmega::kt_, eddyViscosity< incompressible::RASModel >::nut_, and kkLOmega::omega_.
Referenced by kkLOmega::correctNut().
|
inlinevirtual |
Destructor.
Definition at line 229 of file kkLOmega.H.
References kkLOmega::read().
|
protectedvirtual |
Implements eddyViscosity< incompressible::RASModel >.
Definition at line 208 of file kkLOmega.C.
References kkLOmega::kkLOmega(), and NotImplemented.
TypeName | ( | "kkLOmega" | ) |
Runtime type information.
|
virtual |
Read RASProperties dictionary.
Implements eddyViscosity< incompressible::RASModel >.
Definition at line 548 of file kkLOmega.C.
References kkLOmega::A0_, kkLOmega::Abp_, kkLOmega::Anat_, kkLOmega::As_, kkLOmega::Ats_, kkLOmega::Av_, kkLOmega::C11_, kkLOmega::C12_, kkLOmega::CalphaTheta_, kkLOmega::CbpCrit_, kkLOmega::Cint_, kkLOmega::Clambda_, kkLOmega::CmuStd_, kkLOmega::CnatCrit_, kkLOmega::Cnc_, kkLOmega::CR_, kkLOmega::CrNat_, kkLOmega::Css_, kkLOmega::CtauL_, kkLOmega::CtsCrit_, kkLOmega::Cw1_, kkLOmega::Cw2_, kkLOmega::Cw3_, kkLOmega::CwR_, kkLOmega::Prtheta_, dimensioned< Type >::readIfPresent(), kkLOmega::Sigmak_, and kkLOmega::Sigmaw_.
Referenced by kkLOmega::~kkLOmega().
|
inline |
Return the effective diffusivity for k.
Definition at line 239 of file kkLOmega.H.
References GeometricField< scalar, fvPatchField, volMesh >::New().
Referenced by kkLOmega::correct().
|
inline |
Return the effective diffusivity for omega.
Definition at line 249 of file kkLOmega.H.
References GeometricField< scalar, fvPatchField, volMesh >::New().
Referenced by kkLOmega::correct().
|
inlinevirtual |
Return the laminar kinetic energy.
Definition at line 259 of file kkLOmega.H.
References kkLOmega::kl_.
|
inlinevirtual |
Return the turbulence kinetic energy.
Definition at line 265 of file kkLOmega.H.
References kkLOmega::kt_.
|
inlinevirtual |
Return the turbulence specific dissipation rate.
Definition at line 271 of file kkLOmega.H.
References kkLOmega::omega_.
|
inlinevirtual |
Return the total fluctuation kinetic energy.
Implements eddyViscosity< incompressible::RASModel >.
Definition at line 277 of file kkLOmega.H.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), and GeometricField< scalar, fvPatchField, volMesh >::New().
|
inlinevirtual |
Return the total fluctuation kinetic energy dissipation rate.
Definition at line 288 of file kkLOmega.H.
References kkLOmega::correct(), kkLOmega::epsilon_, and kkLOmega::validate().
|
virtual |
Validate the turbulence fields after construction.
Update turbulence viscosity and other derived fields as requires
Reimplemented from eddyViscosity< incompressible::RASModel >.
Definition at line 590 of file kkLOmega.C.
Referenced by kkLOmega::epsilon().
|
virtual |
Solve the turbulence equations and correct the turbulence viscosity.
Implements eddyViscosity< incompressible::RASModel >.
Definition at line 594 of file kkLOmega.C.
References kkLOmega::Abp_, kkLOmega::Anat_, Foam::bound(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), kkLOmega::C11_, kkLOmega::C12_, kkLOmega::Clambda_, kkLOmega::Cnc_, eddyViscosity< BasicMomentumTransportModel >::correct(), GeometricField< Type, PatchField, GeoMesh >::correctBoundaryConditions(), kkLOmega::CR_, kkLOmega::CrNat_, kkLOmega::Cw1_, kkLOmega::Cw2_, kkLOmega::Cw3_, kkLOmega::CwR_, Foam::fvm::ddt(), Foam::dev(), Foam::dimLength, Foam::dimless, Foam::fvm::div(), kkLOmega::DkEff(), kkLOmega::DomegaEff(), kkLOmega::epsilon_, Foam::exp(), Foam::fvc::grad(), kkLOmega::kl_, kkLOmega::kt_, Foam::fvm::laplacian(), Foam::mag(), Foam::magSqr(), Foam::min(), eddyViscosity< incompressible::RASModel >::nut_, kkLOmega::omega_, Foam::pow(), Foam::pow3(), tmp< T >::ref(), Foam::skew(), Foam::solve(), Foam::fvm::Sp(), Foam::sqr(), Foam::sqrt(), Foam::fvm::SuSp(), Foam::symm(), and kkLOmega::y_.
Referenced by kkLOmega::epsilon().
|
protected |
Definition at line 160 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 161 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 162 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 163 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 164 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 165 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 166 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 167 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 168 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 169 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 170 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 171 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 172 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 173 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 174 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 175 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 176 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 177 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 178 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 179 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 180 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 181 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 182 of file kkLOmega.H.
Referenced by kkLOmega::correct(), and kkLOmega::read().
|
protected |
Definition at line 183 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 184 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 185 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 186 of file kkLOmega.H.
Referenced by kkLOmega::read().
|
protected |
Definition at line 191 of file kkLOmega.H.
Referenced by kkLOmega::correct(), kkLOmega::kkLOmega(), and kkLOmega::kt().
|
protected |
Definition at line 192 of file kkLOmega.H.
Referenced by kkLOmega::correct(), kkLOmega::kkLOmega(), and kkLOmega::kl().
|
protected |
Definition at line 193 of file kkLOmega.H.
Referenced by kkLOmega::correct(), kkLOmega::kkLOmega(), and kkLOmega::omega().
|
protected |
Definition at line 194 of file kkLOmega.H.
Referenced by kkLOmega::correct(), kkLOmega::epsilon(), and kkLOmega::kkLOmega().
|
protected |
Wall distance.
Note: different to wall distance in parent RASModel which is for near-wall cells only
Definition at line 199 of file kkLOmega.H.
Referenced by kkLOmega::correct().