35 incompressibleMomentumTransportModel
42 namespace incompressible
52 RASincompressibleMomentumTransportModel,
65 tmp<volScalarField> kkLOmega::fINT()
const
78 tmp<volScalarField> kkLOmega::fSS(
const volScalarField& Omega)
const
90 tmp<volScalarField> kkLOmega::BetaTS(
const volScalarField& ReOmega)
const
96 tmp<volScalarField> kkLOmega::fTaul
123 tmp<volScalarField> kkLOmega::alphaT
134 tmp<volScalarField> kkLOmega::fOmega
154 lambdaT.dimensions(),
164 tmp<volScalarField> kkLOmega::phiBP(
const volScalarField& Omega)
const
191 tmp<volScalarField> kkLOmega::phiNAT
232 const geometricOneField&
alpha,
233 const geometricOneField&
rho,
241 eddyViscosity<incompressible::RASModel>
509 this->groupName(
"kt"),
521 this->groupName(
"kl"),
533 this->groupName(
"omega"),
554 bound(omega_, omegaMin_);
555 epsilon_ = kt_*omega_ +
D(kl_) +
D(kt_);
557 if (
type == typeName)
560 nut_.correctBoundaryConditions();
640 tmp<volTensorField> tgradU(
fvc::grad(U_));
664 C11_*fTaul(lambdaEff, ktL, Omega)*Omega*
sqr(lambdaEff)
665 *
sqrt(ktL)*lambdaEff/nu()
700 tmp<fvScalarMatrix> omegaEqn
709 (1 -
CwR_/(fw + fwMin))*
kl_*(Rbp + Rnat)/(
kt_ + kMin_)
718 omegaEqn.ref().relax();
728 tmp<fvScalarMatrix> klEqn
748 tmp<fvScalarMatrix> ktEqn
static const Foam::dimensionedScalar D("D", Foam::dimTemperature, 257.14)
Bound the given scalar field where it is below the specified minimum.
void updateCoeffs()
Update the boundary condition coefficients.
void correctBoundaryConditions()
Correct boundary field.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
static dimensioned< scalar > lookupOrAddToDict(const word &, dictionary &, const dimensionSet &dims=dimless, const scalar &defaultValue=pTraits< scalar >::zero)
Construct from dictionary, with default value.
bool readIfPresent(const dictionary &)
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.
virtual void validate()
Validate the turbulence fields after construction.
dimensionedScalar CnatCrit_
virtual void correctNut()
virtual tmp< volScalarField > k() const
Return the total fluctuation kinetic energy.
dimensionedScalar Sigmaw_
dimensionedScalar Sigmak_
dimensionedScalar CbpCrit_
dimensionedScalar Prtheta_
dimensionedScalar omegaMin_
Lower limit for omega.
dimensionedScalar CalphaTheta_
dimensionedScalar CtsCrit_
dimensionedScalar CmuStd_
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
kkLOmega(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.
virtual bool read()
Read RASProperties dictionary.
dimensionedScalar Clambda_
tmp< volScalarField > DomegaEff(const volScalarField &alphaT) const
Return the effective diffusivity for omega.
tmp< volScalarField > DkEff(const volScalarField &alphaT) const
Return the effective diffusivity for k.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
makeMomentumTransportModelTypes(geometricOneField, geometricOneField, incompressibleMomentumTransportModel)
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
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 > > SuSp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)
dimensionedSymmTensor symm(const dimensionedSymmTensor &dt)
dimensionedScalar exp(const dimensionedScalar &ds)
VolField< vector > volVectorField
addToRunTimeSelectionTable(polyPatch, mergedCyclicPolyPatch, word)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
dimensionedScalar pow3(const dimensionedScalar &ds)
const dimensionSet dimless
SurfaceField< scalar > surfaceScalarField
const dimensionSet dimLength
VolField< tensor > volTensorField
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
const dimensionSet dimTime
dimensionedScalar sqrt(const dimensionedScalar &ds)
VolField< scalar > volScalarField
dimensioned< scalar > mag(const dimensioned< Type > &)
defineTypeNameAndDebug(combustionModel, 0)
dimensionedScalar pow4(const dimensionedScalar &ds)
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.
dimensioned< scalar > magSqr(const dimensioned< Type > &)
dimensionedTensor skew(const dimensionedTensor &dt)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
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))