35 incompressibleMomentumTransportModel
42 namespace incompressible
52 RASincompressibleMomentumTransportModel,
79 return scalar(1) - 0.3*
exp(-
sqr(Rt));
143 const geometricOneField&
alpha,
144 const geometricOneField&
rho,
152 nonlinearEddyViscosity<incompressible::RASModel>
163 Ceps1_(
"Ceps1", coeffDict(), 1.44),
164 Ceps2_(
"Ceps2", coeffDict(), 1.92),
165 sigmak_(
"sigmak", coeffDict(), 1.0),
166 sigmaEps_(
"sigmaEps", coeffDict(), 1.3),
167 Cmu_(
"Cmu", coeffDict(), 0.09),
168 Cmu1_(
"Cmu1", coeffDict(), 1.25),
169 Cmu2_(
"Cmu2", coeffDict(), 0.9),
170 Cbeta_(
"Cbeta", coeffDict(), 1000.0),
171 Cbeta1_(
"Cbeta1", coeffDict(), 3.0),
172 Cbeta2_(
"Cbeta2", coeffDict(), 15.0),
173 Cbeta3_(
"Cbeta3", coeffDict(), -19.0),
174 Cgamma1_(
"Cgamma1", coeffDict(), 16.0),
175 Cgamma2_(
"Cgamma2", coeffDict(), 16.0),
176 Cgamma4_(
"Cgamma4", coeffDict(), -80.0),
177 kappa_(
"kappa", coeffDict(), 0.41),
178 Anu_(
"Anu", coeffDict(), 0.0198),
179 AE_(
"AE", coeffDict(), 0.00375),
185 this->groupName(
"k"),
198 this->groupName(
"epsilon"),
254 tmp<volTensorField> tgradU =
fvc::grad(U_);
270 tmp<fvScalarMatrix> epsEqn
281 epsEqn.ref().relax();
288 tmp<fvScalarMatrix> kEqn
makeMomentumTransportModelTypes(geometricOneField, geometricOneField, incompressibleMomentumTransportModel)
Bound the given scalar field where it is below the specified minimum.
void updateCoeffs()
Update the boundary condition coefficients.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
void correctBoundaryConditions()
Correct boundary field.
bool readIfPresent(const dictionary &, const unitConversion &defaultUnits=NullObjectRef< unitConversion >())
Update the value of dimensioned<Type> if found in the dictionary.
virtual bool read()=0
Re-read model coefficients if they have changed.
virtual void correct()=0
Solve the turbulence equations and correct the turbulence viscosity.
LienCubicKE(const geometricOneField &alpha, const geometricOneField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const viscosity &viscosity, const word &type=typeName)
Construct from components.
dimensionedScalar sigmak_
virtual void correctNut()
Correct the eddy-viscosity nut.
tmp< volScalarField > DkEff() const
Return the effective diffusivity for k.
tmp< volScalarField > f2() const
dimensionedScalar sigmaEps_
dimensionedScalar Cgamma2_
dimensionedScalar Cbeta2_
dimensionedScalar Cbeta1_
dimensionedScalar Cgamma1_
dimensionedScalar Cgamma4_
tmp< volScalarField > E(const volScalarField &f2) const
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
void boundEpsilon()
Bound epsilon.
dimensionedScalar Cbeta3_
tmp< volScalarField > DepsilonEff() const
Return the effective diffusivity for epsilon.
virtual void correctNonlinearStress(const volTensorField &gradU)
virtual bool read()
Read RASProperties dictionary.
tmp< volScalarField > fMu() const
volSymmTensorField nonlinearStress_
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
const dimensionedScalar G
Newtonian constant of gravitation.
tmp< VolField< typename outerProduct< vector, Type >::type > > grad(const SurfaceField< Type > &ssf)
tmp< fvMatrix< Type > > S(const Pair< tmp< volScalarField::Internal >> &, const VolField< Type > &)
tmp< fvMatrix< Type > > laplacian(const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
void skew(LagrangianPatchField< tensor > &f, const LagrangianPatchField< tensor > &f1)
dimensionedScalar exp(const dimensionedScalar &ds)
VolField< vector > volVectorField
addToRunTimeSelectionTable(polyPatch, mergedCyclicPolyPatch, word)
void dev(LagrangianPatchField< tensor > &f, const LagrangianPatchField< tensor > &f1)
void twoSymm(LagrangianPatchField< tensor > &f, const LagrangianPatchField< tensor > &f1)
SurfaceField< scalar > surfaceScalarField
void mag(LagrangianPatchField< scalar > &f, const LagrangianPatchField< Type > &f1)
VolField< tensor > volTensorField
void symm(LagrangianPatchField< tensor > &f, const LagrangianPatchField< tensor > &f1)
void pow(LagrangianPatchField< typename powProduct< Type, r >::type > &f, const LagrangianPatchField< Type > &f1)
scalarList W(const fluidMulticomponentThermo &thermo)
VolField< scalar > volScalarField
defineTypeNameAndDebug(combustionModel, 0)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
bool bound(volScalarField &, const dimensionedScalar &min)
Bound the given scalar field where it is below the specified min value.
void pow3(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
void sqr(LagrangianPatchField< typename outerProduct< Type, Type >::type > &f, const LagrangianPatchField< Type > &f1)
void magSqr(LagrangianPatchField< scalar > &f, const LagrangianPatchField< Type > &f1)
dimensionedSymmTensor innerSqr(const dimensionedSymmTensor &dt)
void sqrt(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
VolField< symmTensor > volSymmTensorField
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
SolverPerformance< Type > solve(fvMatrix< Type > &, const word &)
Solve returning the solution statistics given convergence tolerance.
Info<< "Reading field U\n"<< endl;volVectorField U(IOobject("U", runTime.name(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);Info<< "Creating face flux\n"<< endl;surfaceScalarField phi(IOobject("phi", runTime.name(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), mesh, dimensionedScalar(mesh.Sf().dimensions() *U.dimensions(), 0));autoPtr< viscosityModel > viscosity(viscosityModel::New(mesh))