Spalart-Allmaras one-transport-equation linear-eddy-viscosity turbulence closure model for incompressible and compressible external flows. More...
Public Types | |
typedef BasicTurbulenceModel::alphaField | alphaField |
typedef BasicTurbulenceModel::rhoField | rhoField |
typedef BasicTurbulenceModel::transportModel | transportModel |
Public Types inherited from SpalartAllmarasBase< eddyViscosity< RASModel< BasicTurbulenceModel > > > | |
typedef eddyViscosity< RASModel< BasicTurbulenceModel > > ::alphaField | alphaField |
typedef eddyViscosity< RASModel< BasicTurbulenceModel > > ::rhoField | rhoField |
typedef eddyViscosity< RASModel< BasicTurbulenceModel > > ::transportModel | transportModel |
Public Types inherited from eddyViscosity< RASModel< BasicTurbulenceModel > > | |
typedef RASModel< BasicTurbulenceModel > ::alphaField | alphaField |
typedef RASModel< BasicTurbulenceModel > ::rhoField | rhoField |
typedef RASModel< BasicTurbulenceModel > ::transportModel | transportModel |
Public Types inherited from linearViscousStress< RASModel< BasicTurbulenceModel > > | |
typedef RASModel< BasicTurbulenceModel > ::alphaField | alphaField |
typedef RASModel< BasicTurbulenceModel > ::rhoField | rhoField |
typedef RASModel< BasicTurbulenceModel > ::transportModel | transportModel |
Public Types inherited from RASModel< BasicTurbulenceModel > | |
typedef BasicTurbulenceModel::alphaField | alphaField |
typedef BasicTurbulenceModel::rhoField | rhoField |
typedef BasicTurbulenceModel::transportModel | transportModel |
Public Member Functions | |
TypeName ("SpalartAllmaras") | |
Runtime type information. More... | |
SpalartAllmaras (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName, const word &type=typeName) | |
Construct from components. More... | |
virtual | ~SpalartAllmaras ()=default |
Destructor. More... | |
Public Member Functions inherited from SpalartAllmarasBase< eddyViscosity< RASModel< BasicTurbulenceModel > > > | |
SpalartAllmarasBase (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName) | |
Construct from components. More... | |
virtual | ~SpalartAllmarasBase ()=default |
Destructor. More... | |
virtual bool | read () |
Re-read model coefficients if they have changed. More... | |
tmp< volScalarField > | DnuTildaEff () const |
Return the effective diffusivity for nuTilda. More... | |
virtual tmp< volScalarField > | k () const |
Return the (estimated) turbulent kinetic energy. More... | |
virtual tmp< volScalarField > | epsilon () const |
Return the (estimated) turbulent kinetic energy dissipation rate. More... | |
virtual tmp< volScalarField > | omega () const |
Return the (estimated) specific dissipation rate. More... | |
tmp< volScalarField > | nuTilda () const |
Return the modified kinematic viscosity. More... | |
virtual void | correct () |
Correct nuTilda and related properties. More... | |
Public Member Functions inherited from eddyViscosity< RASModel< BasicTurbulenceModel > > | |
eddyViscosity (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName) | |
Construct from components. More... | |
virtual | ~eddyViscosity ()=default |
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 > | R () const |
Return the Reynolds stress tensor. More... | |
virtual void | validate () |
Validate the turbulence fields after construction. More... | |
Public Member Functions inherited from linearViscousStress< RASModel< BasicTurbulenceModel > > | |
linearViscousStress (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName) | |
Construct from components. More... | |
virtual | ~linearViscousStress ()=default |
Destructor. More... | |
virtual tmp< volSymmTensorField > | devRhoReff () const |
Return the effective stress tensor. More... | |
virtual tmp< volSymmTensorField > | devRhoReff (const volVectorField &U) const |
Return the effective stress tensor based on a given velocity field. More... | |
virtual tmp< fvVectorMatrix > | divDevRhoReff (volVectorField &U) const |
Return the source term for the momentum equation. More... | |
virtual tmp< fvVectorMatrix > | divDevRhoReff (const volScalarField &rho, volVectorField &U) const |
Return the source term for the momentum equation. More... | |
Public Member Functions inherited from RASModel< BasicTurbulenceModel > | |
TypeName ("RAS") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, RASModel, dictionary,(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName),(alpha, rho, U, alphaRhoPhi, phi, transport, propertiesName)) | |
RASModel (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName) | |
Construct from components. More... | |
virtual | ~RASModel ()=default |
Destructor. More... | |
const dimensionedScalar & | kMin () const noexcept |
Return the lower allowable limit for k (default: SMALL) More... | |
const dimensionedScalar & | epsilonMin () const noexcept |
Return the lower allowable limit for epsilon (default: SMALL) More... | |
const dimensionedScalar & | omegaMin () const noexcept |
Return the lower allowable limit for omega (default: SMALL) More... | |
dimensionedScalar & | kMin () noexcept |
Allow kMin to be changed. More... | |
dimensionedScalar & | epsilonMin () noexcept |
Allow epsilonMin to be changed. More... | |
dimensionedScalar & | omegaMin () noexcept |
Allow omegaMin to be changed. More... | |
virtual const dictionary & | coeffDict () const |
Const access to the coefficients dictionary. More... | |
virtual tmp< volScalarField > | nuEff () const |
Return the effective viscosity. More... | |
virtual tmp< scalarField > | nuEff (const label patchi) const |
Return the effective viscosity on patch. More... | |
Public Member Functions inherited from RASModelBase | |
ClassName ("RASModelBase") | |
Runtime type information. More... | |
RASModelBase () noexcept=default | |
Constructor. More... | |
virtual | ~RASModelBase ()=default |
Destructor. More... | |
Spalart-Allmaras one-transport-equation linear-eddy-viscosity turbulence closure model for incompressible and compressible external flows.
nuTilda | Modified kinematic viscosity [m2/s]
References:
Standard model: Spalart, P.R., & Allmaras, S.R. (1994). A one-equation turbulence model for aerodynamic flows. La Recherche Aerospatiale, 1, 5-21. Standard model without trip and ft2 terms (tag:R): Rumsey, C. (2020). The Spalart-Allmaras Turbulence Model. Spalart-Allmaras One-Equation Model without ft2 Term (SA-noft2). https://turbmodels.larc.nasa.gov/spalart.html#sanoft2 (Retrieved:12-01-2021).
constant/turbulenceProperties
: RAS { // Mandatory entries (unmodifiable) RASModel SpalartAllmaras; // Optional entries (runtime modifiable) turbulence on; printCoeffs on; SpalartAllmarasCoeffs { sigmaNut 0.66666; kappa 0.41; Cb1 0.1355; Cb2 0.622; Cw2 0.3; Cw3 2.0; Cv1 7.1; Cs 0.3; } }
Stilda
generation term should never be allowed to be zero or negative to avoid potential numerical issues and unphysical results for complex flows. To this end, a limiter proposed by Spalart (R:Note-1(b)) is applied onto Stilda
where Stilda
is clipped at Cs*Omega
with the default value of Cs=0.3
.k
, epsilon
or omega
. Nevertheless, these quantities can be estimated by using an approximate expressions for turbulent kinetic energy and dissipation rate reported in (B:Eq. 4.50).Definition at line 115 of file SpalartAllmaras.H.
typedef BasicTurbulenceModel::alphaField alphaField |
Definition at line 151 of file SpalartAllmaras.H.
typedef BasicTurbulenceModel::rhoField rhoField |
Definition at line 152 of file SpalartAllmaras.H.
typedef BasicTurbulenceModel::transportModel transportModel |
Definition at line 153 of file SpalartAllmaras.H.
SpalartAllmaras | ( | const alphaField & | alpha, |
const rhoField & | rho, | ||
const volVectorField & | U, | ||
const surfaceScalarField & | alphaRhoPhi, | ||
const surfaceScalarField & | phi, | ||
const transportModel & | transport, | ||
const word & | propertiesName = turbulenceModel::propertiesName , |
||
const word & | type = typeName |
||
) |
Construct from components.
Definition at line 61 of file SpalartAllmaras.C.
References Foam::type().
|
virtualdefault |
Destructor.
|
protectedvirtual |
Return the length scale.
Implements SpalartAllmarasBase< eddyViscosity< RASModel< BasicTurbulenceModel > > >.
Definition at line 35 of file SpalartAllmaras.C.
|
protectedvirtual |
Reimplemented from SpalartAllmarasBase< eddyViscosity< RASModel< BasicTurbulenceModel > > >.
Definition at line 46 of file SpalartAllmaras.C.
References SpalartAllmarasBase< BasicEddyViscosityModel >::correctNut().
TypeName | ( | "SpalartAllmaras< BasicTurbulenceModel >" | ) |
Runtime type information.