mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
DOC-STYLE: various release changes
This commit is contained in:
@ -48,6 +48,7 @@ Foam::epsilonWallFunctionFvPatchScalarField::blendingTypeNames
|
||||
|
||||
Foam::scalar Foam::epsilonWallFunctionFvPatchScalarField::tolerance_ = 1e-5;
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
|
||||
|
||||
void Foam::epsilonWallFunctionFvPatchScalarField::setMaster()
|
||||
|
||||
@ -74,9 +74,9 @@ Usage
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: epsilonWallFunction | word | yes | -
|
||||
lowReCorrection | Flag for low-Re correction | bool | no | false
|
||||
lowReCorrection | Flag: apply low-Re correction | bool | no | false
|
||||
blending | Viscous/inertial sublayer blending method <!--
|
||||
--> | word | no | stepwise
|
||||
--> | word | no | stepwise
|
||||
n | Binomial blending exponent | scalar | no | 2.0
|
||||
\endtable
|
||||
|
||||
@ -189,8 +189,6 @@ class epsilonWallFunctionFvPatchScalarField
|
||||
:
|
||||
public fixedValueFvPatchField<scalar>
|
||||
{
|
||||
private:
|
||||
|
||||
// Private Enumerations
|
||||
|
||||
//- Options for the blending treatment of viscous and inertial sublayers
|
||||
|
||||
@ -56,7 +56,7 @@ Usage
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: kLowReWallFunction | word | yes | -
|
||||
type | Type name: kLowReWallFunction | word | yes | -
|
||||
Ceps2 | Model coefficient | scalar | no | 1.9
|
||||
Ck | Model coefficient | scalar | no | -0.416
|
||||
Bk | Model coefficient | scalar | no | 8.366
|
||||
|
||||
@ -32,8 +32,10 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a simple wrapper around the zero-gradient
|
||||
condition, which can be used for \c k, \c q, and \c R fields for
|
||||
the case of high Reynolds number flow using wall functions.
|
||||
condition, which can be used for the turbulent kinetic energy, i.e. \c k,
|
||||
square-root of turbulent kinetic energy, i.e. \c q, and Reynolds stress
|
||||
tensor fields, i.e. \c R, for the cases of high Reynolds number flow
|
||||
using wall functions.
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
|
||||
@ -31,8 +31,8 @@ Group
|
||||
grpWallFunctions
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut for low Reynolds number models.
|
||||
This boundary condition provides a wall constraint on the
|
||||
turbulent viscosity, i.e. \c nut, for low Reynolds number models.
|
||||
It sets \c nut to zero, and provides an access function to calculate \c y+.
|
||||
|
||||
Usage
|
||||
|
||||
@ -31,8 +31,10 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions based on
|
||||
a blending of viscous and inertial sublayer contributions.
|
||||
viscosity, i.e. \c nut, based on velocity, i.e. \c U, using a
|
||||
binomial-function wall-function blending method between the viscous
|
||||
and inertial sublayer predictions of \c nut for low- and high-Reynolds
|
||||
number turbulence models.
|
||||
|
||||
\f[
|
||||
u_\tau = (u_{\tau,v}^n + u_{\tau,l}^n)^{1/n}
|
||||
@ -46,12 +48,13 @@ Description
|
||||
\endvartable
|
||||
|
||||
Reference:
|
||||
See the section that describes 'automatic wall treatment'
|
||||
\verbatim
|
||||
Menter, F., Ferreira, J. C., Esch, T., Konno, B. (2003).
|
||||
The SST Turbulence Model with Improved Wall Treatment
|
||||
for Heat Transfer Predictions in Gas Turbines.
|
||||
Proceedings of the International Gas Turbine Congress 2003 Tokyo
|
||||
See the section that describes 'automatic wall treatment':
|
||||
Menter, F., Ferreira, J. C., Esch, T., Konno, B. (2003).
|
||||
The SST turbulence model with improved wall treatment
|
||||
for heat transfer predictions in gas turbines.
|
||||
In Proceedings of the International Gas Turbine Congress.
|
||||
November, 2003. Tokyo, Japan. pp. 2-7.
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
@ -62,7 +65,7 @@ Usage
|
||||
// Mandatory entries (unmodifiable)
|
||||
type nutUBlendedWallFunction;
|
||||
|
||||
// Optional entries
|
||||
// Optional entries (unmodifiable)
|
||||
n 4.0;
|
||||
|
||||
// Optional (inherited) entries
|
||||
@ -72,9 +75,9 @@ Usage
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: nutUBlendedWallFunction | word | yes | -
|
||||
n | Blending factor | scalar | no | 4.0
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: nutUBlendedWallFunction | word | yes | -
|
||||
n | Blending factor | scalar | no | 4.0
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -32,8 +32,8 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions for rough walls,
|
||||
based on velocity, \c U.
|
||||
viscosity, i.e. \c nut, based on velocity i.e. \c U, for low- and
|
||||
high-Reynolds number turbulence models for rough walls.
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
@ -74,9 +74,6 @@ Note
|
||||
\c turbulence->validate) returns a slightly different value every time
|
||||
it is called.
|
||||
See \link nutUSpaldingWallFunctionFvPatchScalarField.C \endlink.
|
||||
- Can be avoided by seeding the NR with e.g. the laminar viscosity
|
||||
or tightening the convergence tolerance to e.g. 1e-7 and the max
|
||||
number of iterations to 100.
|
||||
|
||||
SourceFiles
|
||||
nutURoughWallFunctionFvPatchScalarField.C
|
||||
|
||||
@ -32,9 +32,8 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions for rough walls,
|
||||
based on velocity, \c U, using Spalding's law to give a continuous \c nut
|
||||
profile to the wall (y+ = 0)
|
||||
viscosity, i.e. \c nut, based on velocity, i.e. \c U. Using Spalding's
|
||||
law gives a continuous \c nut profile to the wall.
|
||||
|
||||
\f[
|
||||
y^+ = u^+ + \frac{1}{E} \left[exp(\kappa u^+) - 1 - \kappa u^+\,
|
||||
@ -81,13 +80,11 @@ Note
|
||||
\c turbulence->validate) returns a slightly different value every time
|
||||
it is called. This is since the seed for the Newton-Raphson iteration
|
||||
uses the current value of \c *this (\c =nut ).
|
||||
|
||||
- This can be avoided by overriding the tolerance. This also switches on
|
||||
a pre-detection whether the current nut already satisfies the turbulence
|
||||
conditions and if so does not change it at all. This means that the nut
|
||||
only changes if it 'has really changed'. This probably should be used with
|
||||
a tight tolerance, to make sure to kick every iteration, e.g.
|
||||
|
||||
maxIter 100;
|
||||
tolerance 1e-7;
|
||||
|
||||
|
||||
@ -32,10 +32,10 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions, based on
|
||||
velocity, i.e. \c U.
|
||||
viscosity, i.e. \c nut, based on velocity, i.e. \c U, for low- and
|
||||
high-Reynolds number turbulence models.
|
||||
|
||||
As input, the user specifies a look-up table of \c U+ as a function of
|
||||
As input, the user specifies a look-up table of \c u+ as a function of
|
||||
near-wall Reynolds number.
|
||||
|
||||
The table should be located in the \c $FOAM_CASE/constant directory.
|
||||
@ -58,7 +58,7 @@ Usage
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: nutUTabulatedWallFunction | word | yes | -
|
||||
uPlusTable | U+ as a function of Re table name | word | yes | -
|
||||
uPlusTable | u+ as a function of Re table name | word | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -32,8 +32,8 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions, based on
|
||||
velocity, \c U.
|
||||
viscosity, i.e. \c nut, based on velocity, i.e. \c U, for low- and
|
||||
high-Reynolds number turbulence models.
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
|
||||
@ -35,6 +35,8 @@ Description
|
||||
boundary conditions which provide a wall constraint on various fields, such
|
||||
as turbulent viscosity, i.e. \c nut, or turbulent kinetic energy dissipation
|
||||
rate, i.e. \c epsilon, for low- and high-Reynolds number turbulence models.
|
||||
The class is not an executable itself, yet a provider for common entries
|
||||
to its derived boundary conditions.
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
@ -72,6 +74,7 @@ Usage
|
||||
E 9.8;
|
||||
blending stepwise;
|
||||
n 4.0;
|
||||
U U;
|
||||
|
||||
// Optional (inherited) entries
|
||||
...
|
||||
@ -86,6 +89,7 @@ Usage
|
||||
E | Wall roughness parameter | scalar | no | 9.8
|
||||
blending | Viscous/inertial sublayer blending | word | no | stepwise
|
||||
n | Binomial blending exponent | scalar | no | 2.0
|
||||
U | Name of the velocity field | word | no | U
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
@ -151,11 +155,8 @@ Usage
|
||||
\Gamma | \f$0.01 (y^+)^4 / (1.0 + 5.0 y^+)\f$
|
||||
\endvartable
|
||||
|
||||
Note
|
||||
- \c nutWallFunction is not directly usable.
|
||||
|
||||
See also
|
||||
Foam::fixedValueFvPatchField
|
||||
- Foam::fixedValueFvPatchField
|
||||
|
||||
SourceFiles
|
||||
nutWallFunctionFvPatchScalarField.C
|
||||
|
||||
@ -32,9 +32,10 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
kinematic viscosity, i.e. \c nut, when using wall functions for rough walls,
|
||||
based on the turbulent kinetic energy, \c k. The condition manipulates the
|
||||
wall roughness parameter, i.e. \c E, to account for roughness effects.
|
||||
viscosity, i.e. \c nut, when using wall functions for rough walls,
|
||||
based on the turbulent kinetic energy, i.e. \c k. The condition
|
||||
manipulates the wall roughness parameter, i.e. \c E, to account
|
||||
for roughness effects.
|
||||
|
||||
Parameter ranges:
|
||||
- roughness height = sand-grain roughness (0 for smooth walls)
|
||||
@ -105,7 +106,7 @@ protected:
|
||||
//- Compute the roughness function
|
||||
virtual scalar fnRough(const scalar KsPlus, const scalar Cs) const;
|
||||
|
||||
//- Calculate the turbulence viscosity
|
||||
//- Calculate the turbulent viscosity
|
||||
virtual tmp<scalarField> calcNut() const;
|
||||
|
||||
|
||||
|
||||
@ -32,8 +32,8 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, when using wall functions,
|
||||
based on the turbulent kinetic energy, \c k.
|
||||
viscosity, i.e. \c nut, based on the turbulent kinetic energy,
|
||||
i.e. \c k, for for low- and high-Reynolds number turbulence models.
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
|
||||
@ -78,13 +78,12 @@ Usage
|
||||
\endverbatim
|
||||
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: omegaWallFunction | word | yes | -
|
||||
blended | Blending switch (Deprecated) | bool | no | true
|
||||
beta1 | Model coefficient | scalar | no | 0.075
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: omegaWallFunction | word | yes | -
|
||||
beta1 | Model coefficient | scalar | no | 0.075
|
||||
blending | Viscous/inertial sublayer blending method <!--
|
||||
--> | word | no | binomial2
|
||||
n | Binomial blending exponent | sclar | no | 2.0
|
||||
--> | word | no | binomial2
|
||||
n | Binomial blending exponent | scalar | no | 2.0
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
@ -185,10 +184,10 @@ Note
|
||||
the specified \c nutWallFunction in order to ensure that each patch
|
||||
possesses the same set of values for these coefficients.
|
||||
- The reason why \c binomial2 and \c binomial blending methods exist at
|
||||
the same time is to ensure the elementwise backward compatibility with
|
||||
the previous versions since \c binomial2 and \c binomial with n=2 will
|
||||
yield slightly different output due to the miniscule differences in the
|
||||
implementation of the basic functions (i.e. pow, sqrt, sqr).
|
||||
the same time is to ensure the bitwise regression with the previous
|
||||
versions since \c binomial2 and \c binomial with \c n=2 will yield
|
||||
slightly different output due to the miniscule differences in the
|
||||
implementation of the basic functions (i.e. \c pow, \c sqrt, \c sqr).
|
||||
|
||||
See also
|
||||
- Foam::epsilonWallFunctionFvPatchScalarField
|
||||
@ -218,8 +217,6 @@ class omegaWallFunctionFvPatchScalarField
|
||||
:
|
||||
public fixedValueFvPatchField<scalar>
|
||||
{
|
||||
private:
|
||||
|
||||
// Private Enumerations
|
||||
|
||||
//- Options for the blending treatment of viscous and inertial sublayers
|
||||
|
||||
@ -31,7 +31,7 @@ Group
|
||||
grpRASBoundaryConditions grpInletBoundaryConditions
|
||||
|
||||
Description
|
||||
Base class to set log-law type ground-normal inflow boundary conditions for
|
||||
Base class to set log-law type ground-normal inlet boundary conditions for
|
||||
wind velocity and turbulence quantities for homogeneous, two-dimensional,
|
||||
dry-air, equilibrium and neutral atmospheric boundary layer (ABL) modelling.
|
||||
|
||||
@ -85,15 +85,6 @@ Description
|
||||
C_2 | Curve-fitting coefficient for \c YGCJ profiles [-]
|
||||
\endvartable
|
||||
|
||||
Note
|
||||
- The \c RH expressions are special cases of those in \c YGCJ when \c C1=0
|
||||
and \c C2=1. Both \c C1 and \c C2 can be determined by nonlinear fitting
|
||||
of (\c YGCJ:Eq. 19) with an experimental dataset for \c k. By default,
|
||||
\c atmBoundaryLayerInlet boundary conditions compute \c RH expressions.
|
||||
- \c z is the ground-normal height relative to the global minimum height
|
||||
of the inlet patch; therefore, the minimum of \c z is always zero
|
||||
irrespective of the absolute z-coordinate of the computational patch.
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
The ground-normal profile expressions (tag:RH):
|
||||
@ -135,6 +126,35 @@ Note
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the entries provided for the inherited boundary conditions:
|
||||
\verbatim
|
||||
inlet
|
||||
{
|
||||
// Mandatory and other optional entries
|
||||
...
|
||||
|
||||
// Mandatory (inherited) entries (runtime modifiable)
|
||||
flowDir (1 0 0);
|
||||
zDir (0 0 1);
|
||||
Uref 10.0;
|
||||
Zref 0.0;
|
||||
z0 uniform 0.1;
|
||||
d uniform 0.0;
|
||||
|
||||
// Optional (inherited) entries (unmodifiable)
|
||||
kappa 0.41;
|
||||
Cmu 0.09;
|
||||
initABL true;
|
||||
phi phi;
|
||||
C1 0.0;
|
||||
C2 1.0;
|
||||
|
||||
// Conditional mandatory (inherited) entries (runtime modifiable)
|
||||
value uniform 0; // when initABL=false
|
||||
}
|
||||
\endverbatim
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Deflt
|
||||
flowDir | Flow direction | TimeFunction1<vector> | yes | -
|
||||
@ -160,6 +180,13 @@ Usage
|
||||
\endtable
|
||||
|
||||
Note
|
||||
- The \c RH expressions are special cases of those in \c YGCJ when \c C1=0
|
||||
and \c C2=1. Both \c C1 and \c C2 can be determined by nonlinear fitting
|
||||
of (\c YGCJ:Eqs. 19-20) with an experimental dataset for \c k. By default,
|
||||
\c atmBoundaryLayerInlet boundary conditions compute \c RH expressions.
|
||||
- \c z is the ground-normal height relative to the global minimum height
|
||||
of the inlet patch; therefore, the minimum of \c z is always zero
|
||||
irrespective of the absolute z-coordinate of the computational patch.
|
||||
- The derived ABL expressions automatically satisfy the simplified transport
|
||||
equation for \c k. Yet the same expressions only satisfy the simplified
|
||||
transport equation for \c epsilon when the model constants \c sigmaEpsilon
|
||||
@ -176,11 +203,10 @@ Note
|
||||
with obstacles such as trees or buildings" (E:p. 28).
|
||||
|
||||
See also
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
- ExtendedCodeGuide::atmBoundaryLayer
|
||||
- Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
- Foam::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
|
||||
SourceFiles
|
||||
atmBoundaryLayer.C
|
||||
|
||||
@ -31,10 +31,10 @@ Group
|
||||
grpRASBoundaryConditions grpInletBoundaryConditions
|
||||
|
||||
Description
|
||||
This boundary condition provides a log-law type ground-normal inflow
|
||||
boundary condition for turbulent kinetic energy dissipation rate, i.e.
|
||||
\c epsilon, for homogeneous, two-dimensional, dry-air, equilibrium and
|
||||
neutral atmospheric boundary layer modelling.
|
||||
This boundary condition provides a log-law type ground-normal inlet
|
||||
boundary condition for the turbulent kinetic energy dissipation rate,
|
||||
i.e. \c epsilon, for homogeneous, two-dimensional, dry-air, equilibrium
|
||||
and neutral atmospheric boundary layer modelling.
|
||||
|
||||
The ground-normal \c epsilon profile expression:
|
||||
|
||||
@ -53,14 +53,14 @@ Description
|
||||
d | Ground-normal displacement height [m]
|
||||
C_1 | Curve-fitting coefficient for \c YGCJ profiles [-]
|
||||
C_2 | Curve-fitting coefficient for \c YGCJ profiles [-]
|
||||
\endvartable
|
||||
\endvartable
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
\heading Required fields
|
||||
\plaintable
|
||||
epsilon | Turbulent kinetic energy dissipation rate [m^2/s^3]
|
||||
\endplaintable
|
||||
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
inlet
|
||||
@ -68,37 +68,26 @@ Usage
|
||||
// Mandatory entries (unmodifiable)
|
||||
type atmBoundaryLayerInletEpsilon;
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
flowDir (1 0 0);
|
||||
z (0 0 1);
|
||||
Uref 10.0;
|
||||
Zref 0.0;
|
||||
z0 uniform 0.1;
|
||||
d uniform 0.0;
|
||||
|
||||
// Optional (inherited) entries (unmodifiable)
|
||||
kappa 0.41;
|
||||
Cmu 0.09;
|
||||
initABL true;
|
||||
phi phi;
|
||||
C1 0.0;
|
||||
C2 1.0;
|
||||
|
||||
// Conditional mandatory (inherited) entries (runtime modifiable)
|
||||
value uniform 0; // when initABL=false
|
||||
// Mandatory/Optional (inherited) entries (unmodifiable)
|
||||
...
|
||||
}
|
||||
\endverbatim
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Deflt
|
||||
type | Type name: atmBoundaryLayerInletEpsilon | word | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link atmBoundaryLayer.H \endlink
|
||||
- \link inletOutletFvPatchField.H \endlink
|
||||
|
||||
See also
|
||||
- Foam::atmBoundaryLayer
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletEpsilon
|
||||
- Foam::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
|
||||
SourceFiles
|
||||
atmBoundaryLayerInletEpsilonFvPatchScalarField.C
|
||||
|
||||
@ -31,8 +31,8 @@ Group
|
||||
grpRASBoundaryConditions grpInletBoundaryConditions
|
||||
|
||||
Description
|
||||
This boundary condition provides a log-law type ground-normal inflow
|
||||
boundary condition for turbulent kinetic energy, i.e. \c k,
|
||||
This boundary condition provides a log-law type ground-normal inlet
|
||||
boundary condition for the turbulent kinetic energy, i.e. \c k,
|
||||
for homogeneous, two-dimensional, dry-air, equilibrium and neutral
|
||||
atmospheric boundary layer modelling.
|
||||
|
||||
@ -52,12 +52,12 @@ Description
|
||||
C_2 | Curve-fitting coefficient for \c YGCJ profiles [-]
|
||||
\endvartable
|
||||
|
||||
Usage
|
||||
\heading Required fields
|
||||
\plaintable
|
||||
k | Turbulent kinetic energy [m^2/s^2]
|
||||
\endplaintable
|
||||
Required fields:
|
||||
\verbatim
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
inlet
|
||||
@ -65,37 +65,28 @@ Usage
|
||||
// Mandatory entries (unmodifiable)
|
||||
type atmBoundaryLayerInletK;
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
Uref 10.0;
|
||||
Zref 0.0;
|
||||
z0 uniform 0.1;
|
||||
d uniform 0.0;
|
||||
// Mandatory/Optional (inherited) entries (unmodifiable)
|
||||
...
|
||||
flowDir (1 0 0); // not used
|
||||
z (0 0 1); // not used
|
||||
|
||||
// Optional (inherited) entries (unmodifiable)
|
||||
kappa 0.41;
|
||||
Cmu 0.09;
|
||||
initABL true;
|
||||
phi phi;
|
||||
C1 0.0;
|
||||
C2 1.0;
|
||||
|
||||
// Conditional mandatory (inherited) entries (runtime modifiable)
|
||||
value uniform 0; // when initABL=false
|
||||
zDir (0 0 1); // not used
|
||||
}
|
||||
\endverbatim
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Deflt
|
||||
type | Type name: atmBoundaryLayerInletK | word | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link atmBoundaryLayer.H \endlink
|
||||
- \link inletOutletFvPatchField.H \endlink
|
||||
|
||||
See also
|
||||
- Foam::atmBoundaryLayer
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletK
|
||||
- Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
|
||||
- Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
|
||||
SourceFiles
|
||||
atmBoundaryLayerInletKFvPatchScalarField.C
|
||||
|
||||
@ -29,8 +29,8 @@ Group
|
||||
grpRASBoundaryConditions grpInletBoundaryConditions
|
||||
|
||||
Description
|
||||
This boundary condition provides a log-law type ground-normal inflow
|
||||
boundary condition for specific dissipation rate, i.e. \c omega,
|
||||
This boundary condition provides a log-law type ground-normal inlet
|
||||
boundary condition for the specific dissipation rate, i.e. \c omega,
|
||||
for homogeneous, two-dimensional, dry-air, equilibrium and neutral
|
||||
atmospheric boundary layer modelling.
|
||||
|
||||
@ -51,12 +51,12 @@ Description
|
||||
z_0 | Aerodynamic roughness length [m]
|
||||
\endvartable
|
||||
|
||||
Usage
|
||||
\heading Required fields
|
||||
\plaintable
|
||||
Required fields:
|
||||
\verbatim
|
||||
omega | Specific dissipation rate [1/s]
|
||||
\endplaintable
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
inlet
|
||||
@ -64,37 +64,26 @@ Usage
|
||||
// Mandatory entries (unmodifiable)
|
||||
type atmBoundaryLayerInletOmega;
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
flowDir (1 0 0);
|
||||
z (0 0 1);
|
||||
Uref 10.0;
|
||||
Zref 0.0;
|
||||
z0 uniform 0.1;
|
||||
d uniform 0.0;
|
||||
|
||||
// Optional (inherited) entries (unmodifiable)
|
||||
kappa 0.41;
|
||||
Cmu 0.09;
|
||||
initABL true;
|
||||
phi phi;
|
||||
C1 0.0;
|
||||
C2 1.0;
|
||||
|
||||
// Conditional mandatory (inherited) entries (runtime modifiable)
|
||||
value uniform 0; // when initABL=false
|
||||
// Mandatory/Optional (inherited) entries (unmodifiable)
|
||||
...
|
||||
}
|
||||
\endverbatim
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Deflt
|
||||
type | Type name: atmBoundaryLayerInletOmega | word | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link atmBoundaryLayer.H \endlink
|
||||
- \link inletOutletFvPatchField.H \endlink
|
||||
|
||||
See also
|
||||
- Foam::atmBoundaryLayer
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVelocityField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletOmega
|
||||
- Foam::atmBoundaryLayerInletVelocityFvPatchVelocityField
|
||||
- Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletKFvPatchScalarField
|
||||
|
||||
SourceFiles
|
||||
atmBoundaryLayerInletOmegaFvPatchScalarField.C
|
||||
|
||||
@ -31,10 +31,10 @@ Group
|
||||
grpRASBoundaryConditions grpInletBoundaryConditions
|
||||
|
||||
Description
|
||||
This boundary condition provides a log-law type ground-normal inflow
|
||||
boundary condition for streamwise component of wind velocity, i.e. \c u,
|
||||
for homogeneous, two-dimensional, dry-air, equilibrium and neutral
|
||||
atmospheric boundary layer modelling.
|
||||
This boundary condition provides a log-law type ground-normal inlet
|
||||
boundary condition for the streamwise component of wind velocity,
|
||||
i.e. \c u, for homogeneous, two-dimensional, dry-air, equilibrium
|
||||
and neutral atmospheric boundary layer modelling.
|
||||
|
||||
The ground-normal streamwise flow speed profile expression:
|
||||
|
||||
@ -58,12 +58,12 @@ Description
|
||||
z_0 | Aerodynamic roughness length [m]
|
||||
\endvartable
|
||||
|
||||
Usage
|
||||
\heading Required fields
|
||||
\plaintable
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endplaintable
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
inlet
|
||||
@ -71,37 +71,26 @@ Usage
|
||||
// Mandatory entries (unmodifiable)
|
||||
type atmBoundaryLayerInletVelocity;
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
flowDir (1 0 0);
|
||||
z (0 0 1);
|
||||
Uref 10.0;
|
||||
Zref 0.0;
|
||||
z0 uniform 0.1;
|
||||
d uniform 0.0;
|
||||
|
||||
// Optional (inherited) entries (unmodifiable)
|
||||
kappa 0.41;
|
||||
Cmu 0.09;
|
||||
initABL true;
|
||||
phi phi;
|
||||
C1 0.0;
|
||||
C2 1.0;
|
||||
|
||||
// Conditional mandatory (inherited) entries (runtime modifiable)
|
||||
value uniform (0 0 0); // when initABL=false
|
||||
// Mandatory/Optional (inherited) entries (unmodifiable)
|
||||
...
|
||||
}
|
||||
\endverbatim
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Deflt
|
||||
type | Type name: atmBoundaryLayerInletVelocity | word | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link atmBoundaryLayer.H \endlink
|
||||
- \link inletOutletFvPatchField.H \endlink
|
||||
|
||||
See also
|
||||
- Foam::atmBoundaryLayer
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletVelocity
|
||||
- Foam::atmBoundaryLayerInletKFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
|
||||
- Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
|
||||
|
||||
SourceFiles
|
||||
atmBoundaryLayerInletVelocityFvPatchVectorField.C
|
||||
|
||||
@ -32,13 +32,13 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a fixed heat constraint on temperature,
|
||||
i.e. \c T, to specify temperature gradient. Input heat source either
|
||||
specified in terms of an absolute power [W], or as a flux [W/m2].
|
||||
i.e. \c T, to specify temperature gradient through an input heat source
|
||||
which can either be specified as absolute power [W], or as flux [W/m2].
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
@ -64,23 +64,25 @@ Usage
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
heatSource | Heat source type | word | yes | -
|
||||
alphaEff | Name of turbulent thermal diff. field [kg/m/s] <!--
|
||||
--> | word | yes | -
|
||||
Cp0 | Specific heat capacity | TimeFunction1<scalar> | yes | -
|
||||
q | Heat source value | PatchFunction1<scalar> | yes | -
|
||||
alphaEff | Name of turbulent thermal diff. field [kg/m/s] <!--
|
||||
--> | word | yes | -
|
||||
Cp0 | Specific heat capacity [m2/s2/K] <!--
|
||||
--> | TimeFunction1<scalar> | yes | -
|
||||
q | Heat source value [W (power) or W/m2 (flux)] <!--
|
||||
--> | PatchFunction1<scalar> | yes | -
|
||||
\endtable
|
||||
|
||||
Options for the \c heatSource entry:
|
||||
\verbatim
|
||||
power | Absolute power heat source [W]
|
||||
flux | Flux heat source [W/m^2]
|
||||
\endverbatim
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link fixedGradientFvPatchScalarField.H \endlink
|
||||
- \link TimeFunction1.H \endlink
|
||||
- \link PatchFunction1.H \endlink
|
||||
|
||||
Options for the \c heatSource entry:
|
||||
\verbatim
|
||||
power | Absolute power heat source [W]
|
||||
flux | Flux heat source [W/m2]
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
atmTurbulentHeatFluxTemperatureFvPatchScalarField.C
|
||||
|
||||
@ -128,7 +130,7 @@ class atmTurbulentHeatFluxTemperatureFvPatchScalarField
|
||||
//- Name of effective thermal diffusivity field [kg/m/s]
|
||||
word alphaEffName_;
|
||||
|
||||
//- Specific heat capacity [-]
|
||||
//- Specific heat capacity [m2/s2/K]
|
||||
TimeFunction1<scalar> Cp0_;
|
||||
|
||||
//- Heat power [W] or flux [W/m2]
|
||||
|
||||
@ -44,6 +44,7 @@ scalar atmAlphatkWallFunctionFvPatchScalarField::tolerance_ = 0.01;
|
||||
|
||||
label atmAlphatkWallFunctionFvPatchScalarField::maxIters_ = 10;
|
||||
|
||||
|
||||
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
|
||||
|
||||
void atmAlphatkWallFunctionFvPatchScalarField::checkType()
|
||||
|
||||
@ -31,10 +31,10 @@ Group
|
||||
grpAtmWallFunctions
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on kinematic turbulent
|
||||
thermal conductivity, \c alphat, for atmospheric boundary layer modelling.
|
||||
It assumes a logarithmic distribution of the potential temperature within
|
||||
the first cell.
|
||||
This boundary condition provides a wall constraint on the kinematic
|
||||
turbulent thermal conductivity, i.e. \c alphat, for atmospheric boundary
|
||||
layer modelling. It assumes a logarithmic distribution of the potential
|
||||
temperature within the first cell.
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
@ -47,7 +47,7 @@ Usage
|
||||
<patchName>
|
||||
{
|
||||
// Mandatory entries (unmodifiable)
|
||||
type alphatkAtmWallFunction;
|
||||
type atmAlphatkWallFunction;
|
||||
|
||||
// Mandatory entries (runtime modifiable)
|
||||
Pr 0.90;
|
||||
@ -66,7 +66,7 @@ Usage
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: alphatAtmWallFunction | word | yes | -
|
||||
type | Type name: atmAlphatkWallFunction | word | yes | -
|
||||
Pr | Molecular Prandtl number | TimeFunction1<scalar> | yes | -
|
||||
Prt | Turbulent Prandtl number | PatchFunction1<scalar> | yes | -
|
||||
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
|
||||
|
||||
@ -31,14 +31,10 @@ Group
|
||||
grpAtmWallFunctions
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on turbulent kinetic
|
||||
energy dissipation rate, i.e. \c epsilon, for atmospheric boundary layer
|
||||
flows in neutral stratification conditions.
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
|
||||
\endverbatim
|
||||
This boundary condition provides a wall constraint on the turbulent kinetic
|
||||
energy dissipation rate, i.e. \c epsilon, and the turbulent kinetic energy
|
||||
production contribution, i.e. \c G, for atmospheric boundary layer
|
||||
modelling.
|
||||
|
||||
References:
|
||||
\verbatim
|
||||
@ -56,6 +52,11 @@ Description
|
||||
DOI:10.1016/B978-0-444-81688-7.50018-8
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
@ -81,7 +82,6 @@ Usage
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link epsilonWallFunctionFvPatchScalarField.H \endlink
|
||||
- \link nutWallFunctionFvPatchScalarField.H \endlink
|
||||
- \link PatchFunction1 \endlink
|
||||
|
||||
See also
|
||||
|
||||
@ -32,9 +32,9 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, based on velocity, \c U, for atmospheric boundary
|
||||
layer modelling. It is designed to be used in conjunction with the
|
||||
\c atmBoundaryLayerInletVelocity boundary condition.
|
||||
viscosity, i.e. \c nut, based on velocity, i.e. \c U, for atmospheric
|
||||
boundary layer modelling. It is designed to be used in conjunction
|
||||
with the \c atmBoundaryLayerInletVelocity boundary condition.
|
||||
|
||||
The governing equation of the boundary condition:
|
||||
|
||||
@ -80,7 +80,7 @@ Usage
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: atmNutUWallFunction | word | yes | -
|
||||
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
|
||||
boundNut | Flag: zero-bound nut at the wall | bool | no | true
|
||||
boundNut | Flag: zero-bound nut near wall | bool | no | true
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -32,8 +32,8 @@ Group
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, based on turbulent kinetic energy, \c k, and
|
||||
velocity, i.e. \c U, for atmospheric boundary layer modelling.
|
||||
viscosity, i.e. \c nut, based on the turbulent kinetic energy, \c k,
|
||||
and velocity, i.e. \c U, for atmospheric boundary layer modelling.
|
||||
|
||||
The governing equation of the boundary condition:
|
||||
|
||||
@ -64,34 +64,37 @@ Description
|
||||
k | turbulent kinetic energy
|
||||
\endvartable
|
||||
|
||||
References:
|
||||
\verbatim
|
||||
Theoretical expressions (tags:RH, SBJM, SM):
|
||||
Richards, P. J., & Hoxey, R. P. (1993).
|
||||
Appropriate boundary conditions for computational wind
|
||||
engineering models using the k-ε turbulence model.
|
||||
In Computational Wind Engineering 1 (pp. 145-153).
|
||||
DOI:10.1016/B978-0-444-81688-7.50018-8
|
||||
|
||||
Sørensen, N. N., Bechmann, A., Johansen, J., Myllerup, L.,
|
||||
Botha, P., Vinther, S., & Nielsen, B. S. (2007).
|
||||
Identification of severe wind conditions using
|
||||
a Reynolds Averaged Navier-Stokes solver.
|
||||
In Journal of Physics: Conference
|
||||
series (Vol. 75, No. 1, p. 012053).
|
||||
DOI:10.1088/1742-6596/75/1/012053
|
||||
|
||||
Sumner, J., & Masson, C. (2012).
|
||||
k−ε simulations of the neutral atmospheric boundary layer:
|
||||
analysis and correction of discretization errors on practical grids.
|
||||
International journal for numerical
|
||||
methods in fluids, 70(6), 724-741.
|
||||
DOI:10.1002/fld.2709
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
\endverbatim
|
||||
|
||||
References:
|
||||
\verbatim
|
||||
Richards, P. J., & Hoxey, R. P. (1993).
|
||||
Appropriate boundary conditions for computational wind
|
||||
engineering models using the k-ε turbulence model.
|
||||
In Computational Wind Engineering 1 (pp. 145-153).
|
||||
DOI:10.1016/B978-0-444-81688-7.50018-8
|
||||
|
||||
Sørensen, N. N., Bechmann, A., Johansen, J., Myllerup, L.,
|
||||
Botha, P., Vinther, S., & Nielsen, B. S. (2007).
|
||||
Identification of severe wind conditions using
|
||||
a Reynolds Averaged Navier-Stokes solver.
|
||||
In Journal of Physics: Conference series (Vol. 75, No. 1, p. 012053).
|
||||
DOI:10.1088/1742-6596/75/1/012053
|
||||
|
||||
Sumner, J., & Masson, C. (2012).
|
||||
k− ε simulations of the neutral atmospheric boundary layer:
|
||||
analysis and correction of discretization errors on practical grids.
|
||||
International journal for numerical methods in fluids, 70(6), 724-741.
|
||||
DOI:10.1002/fld.2709
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
@ -111,10 +114,10 @@ Usage
|
||||
|
||||
where the entries mean:
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: nutAtmWallFunction | word | yes | -
|
||||
z0Min | Minimum surface roughness length [m] | scalar | yes | -
|
||||
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: nutAtmWallFunction | word | yes | -
|
||||
z0Min | Minimum surface roughness length [m] | scalar | yes | -
|
||||
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -32,8 +32,8 @@ Group
|
||||
grpAtmWallFunctions
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on turbulent
|
||||
viscosity, i.e. \c nut, based on turbulent kinetic energy, \c k
|
||||
This boundary condition provides a wall constraint on the turbulent
|
||||
viscosity, i.e. \c nut, based on the turbulent kinetic energy, i.e. \c k,
|
||||
for atmospheric boundary layer modelling. It is designed to be used in
|
||||
conjunction with the \c atmBoundaryLayerInletVelocity boundary condition.
|
||||
|
||||
@ -67,6 +67,12 @@ Description
|
||||
DOI:10.1016/j.jweia.2006.08.002
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
@ -91,7 +97,7 @@ Usage
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: atmNutkWallFunction | word | yes | -
|
||||
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
|
||||
boundNut | Flag: zero-bound nut at the wall | bool | no | false
|
||||
boundNut | Flag: zero-bound nut near wall | bool | no | false
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
@ -100,6 +106,7 @@ Usage
|
||||
|
||||
Note
|
||||
- \c boundNut entry is set \c false for backward compatibility reasons.
|
||||
- \c nutkAtmRoughWallFunction was renamed to \c atmNutkWallFunction.
|
||||
|
||||
See also
|
||||
- Foam::nutkWallFunctionFvPatchField
|
||||
|
||||
@ -31,13 +31,10 @@ Group
|
||||
grpAtmWallFunctions
|
||||
|
||||
Description
|
||||
This boundary condition provides a wall constraint on specific dissipation
|
||||
rate, i.e. \c omega, for atmospheric boundary layer modelling.
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
omega | Specific dissipation rate [1/s]
|
||||
\endverbatim
|
||||
This boundary condition provides a wall constraint on the specific
|
||||
dissipation rate, i.e. \c omega, and the turbulent kinetic energy
|
||||
production contribution, i.e. \c G, for atmospheric boundary
|
||||
layer modelling.
|
||||
|
||||
References:
|
||||
\verbatim
|
||||
@ -54,6 +51,11 @@ Description
|
||||
Internal Report 00/4. Sweden: Göteborg.
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
omega | Specific dissipation rate [1/s]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example of the boundary condition specification:
|
||||
\verbatim
|
||||
@ -79,7 +81,6 @@ Usage
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
- \link omegaWallFunctionFvPatchScalarField.H \endlink
|
||||
- \link nutWallFunctionFvPatchScalarField.H \endlink
|
||||
- \link PatchFunction1.H \endlink
|
||||
|
||||
See also
|
||||
|
||||
@ -33,10 +33,10 @@ Group
|
||||
Description
|
||||
Computes the Obukhov length field and associated friction velocity field.
|
||||
|
||||
When scaled by the ground-normal height, i.e. z, the Obukhov length becomes
|
||||
a dimensionless stability parameter, i.e. z/L, for atmospheric boundary
|
||||
layer modelling, expressing the relative roles of buoyancy and shear in the
|
||||
production and dissipation of turbulent kinetic energy.
|
||||
When scaled by the ground-normal height, i.e. \c z, the Obukhov length
|
||||
becomes a dimensionless stability parameter, i.e. \c z/L, for atmospheric
|
||||
boundary layer modelling, expressing the relative roles of buoyancy and
|
||||
shear in the production and dissipation of turbulent kinetic energy.
|
||||
|
||||
\f[
|
||||
u^* = \sqrt{\max (\nu_t \sqrt{2 |\symm{\grad{\u}}|^2}, VSMALL)}
|
||||
@ -85,11 +85,11 @@ Description
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
T | Temperature [K]
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
alphat | Kinematic turbulent thermal conductivity [m2/s]/[kg/m/s]
|
||||
g | Gravitational acceleration [m/s2]
|
||||
U | Velocity [m/s]
|
||||
T | Temperature [K]
|
||||
nut | Turbulent viscosity [m2/s]
|
||||
alphat | Kinematic turbulent thermal conductivity [m2/s]/[kg/m/s]
|
||||
g | Gravitational acceleration [m/s2]
|
||||
\endverbatim
|
||||
|
||||
\table
|
||||
@ -134,7 +134,7 @@ Usage
|
||||
rhoRef | Reference density (to convert from kinematic to static <!--
|
||||
--> pressure) | scalar | no | 1.0
|
||||
kappa | von Kármán constant | scalar | no | 0.40
|
||||
beta | Thermal expansion coefficient [1/K] | scalar | no | 3e-3
|
||||
beta | Thermal expansion coefficient | scalar | no | 3e-3
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -34,7 +34,7 @@ Description
|
||||
Applies sources on \c k and either \c epsilon or \c omega to prevent them
|
||||
droping below a specified ambient value for atmospheric boundary
|
||||
layer modelling. Such adjustment reportedly increases numerical
|
||||
stability for very stable atmospheric conditions, and prevents
|
||||
stability for very stable atmospheric stability conditions, and prevents
|
||||
nonphysical oscillations in regions of low shear at higher altitudes.
|
||||
|
||||
Corrections applied to:
|
||||
@ -50,8 +50,8 @@ Description
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
epsilon/omega | Dissipation rate OR Specific dissipation rate [m2/s3]/[1/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
|
||||
\endverbatim
|
||||
|
||||
References:
|
||||
@ -95,10 +95,10 @@ Usage
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: atmAmbientTurbSource | word | yes | -
|
||||
kAmb | Ambient value for k | scalar | yes | -
|
||||
kAmb | Ambient value for \c k | scalar | yes | -
|
||||
rho | Name of density field | word | no | rho
|
||||
epsilonAmb | Ambient value for epsilon | scalar | no | 0.0
|
||||
omegaAmb | Ambient value for omega | scalar | no | 0.0
|
||||
epsilonAmb | Ambient value for \c epsilon | scalar | no | 0.0
|
||||
omegaAmb | Ambient value for \c omega | scalar | no | 0.0
|
||||
\endtable
|
||||
|
||||
The inherited entries are elaborated in:
|
||||
|
||||
@ -48,7 +48,7 @@ void Foam::fv::atmBuoyancyTurbSource::calcB()
|
||||
//- Temperature field [K]
|
||||
const volScalarField& T = mesh_.lookupObjectRef<volScalarField>("T");
|
||||
|
||||
//- Turbulent heat transfer coefficient field [m2/s]
|
||||
//- Kinematic turbulent thermal conductivity field [m2/s]
|
||||
const volScalarField& alphat =
|
||||
mesh_.lookupObjectRef<volScalarField>("alphat");
|
||||
|
||||
@ -149,19 +149,6 @@ Foam::fv::atmBuoyancyTurbSource::atmBuoyancyTurbSource
|
||||
)
|
||||
)
|
||||
),
|
||||
n_
|
||||
(
|
||||
dimensionedScalar
|
||||
(
|
||||
dimless,
|
||||
coeffs_.getCheckOrDefault<scalar>
|
||||
(
|
||||
"n",
|
||||
3.0,
|
||||
[&](const scalar n){ return n > SMALL; }
|
||||
)
|
||||
)
|
||||
),
|
||||
beta_
|
||||
(
|
||||
dimensionedScalar
|
||||
|
||||
@ -47,10 +47,10 @@ Description
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
epsilon/omega | Dissipation rate OR Specific dissipation rate [m2/s3]/[1/s]
|
||||
T | Temperature [K]
|
||||
alphat | Turbulent heat tranfer coefficient [m2/s]
|
||||
k | Turbulent kinetic energy [m2/s2]
|
||||
epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
|
||||
T | Temperature [K]
|
||||
alphat | Kinematic turbulent thermal conductivity [m2/s]
|
||||
\endverbatim
|
||||
|
||||
References:
|
||||
@ -60,7 +60,7 @@ Description
|
||||
Consistent two-equation closure modelling for atmospheric
|
||||
research: buoyancy and vegetation implementations.
|
||||
Boundary-layer meteorology, 145(2), 307-327.
|
||||
DOI: 10.1007/s10546-012-9726-5
|
||||
DOI:10.1007/s10546-012-9726-5
|
||||
|
||||
Alletto, M., Radi, A., Adib, J., Langner, J.,
|
||||
Peralta, C., Altmikus, A., & Letzel, M. (2018).
|
||||
@ -98,7 +98,6 @@ Usage
|
||||
// Optional (unmodifiable)
|
||||
rho rho;
|
||||
Lmax 41.575;
|
||||
n 3.0;
|
||||
beta 3.3e-03;
|
||||
}
|
||||
|
||||
@ -113,7 +112,6 @@ Usage
|
||||
type | Type name: atmBuoyancyTurbSource | word | yes | -
|
||||
rho | Name of density field | word | no | rho
|
||||
Lmax | Maximum mixing-length scale | scalar | no | 41.575
|
||||
n | Mixing-length scale exponent | scalar | no | 3.0
|
||||
beta | Thermal expansion coefficient | scalar | no | 3.3e-03
|
||||
\endtable
|
||||
|
||||
@ -160,9 +158,6 @@ class atmBuoyancyTurbSource
|
||||
//- Maximum mixing-length scale [m]
|
||||
const dimensionedScalar Lmax_;
|
||||
|
||||
//- Mixing-length scale exponent
|
||||
const dimensionedScalar n_;
|
||||
|
||||
//- Thermal expansion coefficient [1/K]
|
||||
const dimensionedScalar beta_;
|
||||
|
||||
|
||||
@ -34,16 +34,6 @@ Description
|
||||
Applies corrections to incorporate the horizontal and vertical components
|
||||
of the Coriolis force for which the rotating frame is Earth.
|
||||
|
||||
Corrections applied on:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
The Coriolis force is an inertial or fictitious force that acts on
|
||||
objects that are in motion within a frame of reference that rotates with
|
||||
respect to an inertial frame.
|
||||
@ -60,6 +50,16 @@ Description
|
||||
surface of Earth, so only the horizontal component of the Coriolis
|
||||
force is generally important.
|
||||
|
||||
Corrections applied on:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
References:
|
||||
\verbatim
|
||||
Coriolis force. (n.d.).
|
||||
@ -80,6 +80,8 @@ Usage
|
||||
selectionMode all;
|
||||
|
||||
// Conditional mandatory entries (unmodifiable)
|
||||
// Select either of the below
|
||||
|
||||
// Option-1: to directly input rotation vector
|
||||
Omega (0 0 5.65156e-5);
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ Description
|
||||
A limited-length-scale k-ε model for the neutral and
|
||||
stably-stratified atmospheric boundary layer.
|
||||
Boundary-layer meteorology, 83(1), 75-98.
|
||||
DOI:10.1023/A:100025221
|
||||
DOI:10.1023/A:1000252210512
|
||||
|
||||
Mixing-length scale limiter for omega (tag:L):
|
||||
Langner, J. (2016).
|
||||
|
||||
@ -31,8 +31,8 @@ Group
|
||||
grpFvOptionsSources
|
||||
|
||||
Description
|
||||
Applies sources on temperature \c T to incorporate effects
|
||||
of plant canopy for atmospheric boundary layer modelling.
|
||||
Applies sources on temperature, i.e. \c T, to incorporate
|
||||
effects of plant canopy for atmospheric boundary layer modelling.
|
||||
|
||||
Corrections applied to:
|
||||
\verbatim
|
||||
@ -41,8 +41,8 @@ Description
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
T | Temperature [K]
|
||||
qPlant | Heat flux [m2/s3]
|
||||
T | Temperature [K]
|
||||
qPlant | Tree-height based specific heat flux [m2/s3]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
|
||||
@ -42,9 +42,9 @@ Description
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
epsilon/omega | Dissipation rate OR specific dissipation rate [m2/s3]/[1/s]
|
||||
plantCd | Plant canopy drag coefficient [-]
|
||||
leafAreaDensity | Leaf area density [1/m]
|
||||
epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
|
||||
plantCd | Plant canopy drag coefficient [-]
|
||||
leafAreaDensity | Leaf area density [1/m]
|
||||
\endverbatim
|
||||
|
||||
References:
|
||||
|
||||
@ -31,7 +31,7 @@ Group
|
||||
grpFvOptionsSources
|
||||
|
||||
Description
|
||||
Applies sources on velocity \c U to incorporate effects
|
||||
Applies sources on velocity, i.e. \c U, to incorporate effects
|
||||
of plant canopy for atmospheric boundary layer modelling.
|
||||
|
||||
Corrections applied to:
|
||||
|
||||
@ -192,18 +192,6 @@ Foam::turbulentDFSEMInletFvPatchVectorField::patchMapper() const
|
||||
// Initialise interpolation (2D planar interpolation by triangulation)
|
||||
if (mapperPtr_.empty())
|
||||
{
|
||||
//// Reread values and interpolate
|
||||
//fileName samplePointsFile
|
||||
//(
|
||||
// this->db().time().path()
|
||||
// /this->db().time().caseConstant()
|
||||
// /"boundaryData"
|
||||
// /this->patch().name()
|
||||
// /"points"
|
||||
//);
|
||||
//
|
||||
//pointField samplePoints((IFstream(samplePointsFile)()));
|
||||
|
||||
const fileName samplePointsFile
|
||||
(
|
||||
this->db().time().globalPath()
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2015 OpenFOAM Foundation
|
||||
Copyright (C) 2016 OpenCFD Ltd
|
||||
Copyright (C) 2016-2020 OpenCFD Ltd
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -73,32 +73,6 @@ Foam::turbulentDFSEMInletFvPatchVectorField::interpolateBoundaryData
|
||||
{
|
||||
const word& patchName = this->patch().name();
|
||||
|
||||
//fileName valsFile
|
||||
//(
|
||||
// fileHandler().filePath
|
||||
// (
|
||||
// fileName
|
||||
// (
|
||||
// this->db().time().path()
|
||||
// /this->db().time().caseConstant()
|
||||
// /"boundaryData"
|
||||
// /patchName
|
||||
// /"0"
|
||||
// /fieldName
|
||||
// )
|
||||
// )
|
||||
//);
|
||||
//
|
||||
//autoPtr<ISstream> isPtr
|
||||
//(
|
||||
// fileHandler().NewIFstream
|
||||
// (
|
||||
// valsFile
|
||||
// )
|
||||
//);
|
||||
//
|
||||
//Field<Type> vals(isPtr());
|
||||
|
||||
const fileName valsFile
|
||||
(
|
||||
fileName
|
||||
|
||||
@ -38,18 +38,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::patchMapper() const
|
||||
// Initialise interpolation (2D planar interpolation by triangulation)
|
||||
if (mapperPtr_.empty())
|
||||
{
|
||||
//// Reread values and interpolate
|
||||
//fileName samplePointsFile
|
||||
//(
|
||||
// this->db().time().path()
|
||||
// /this->db().time().caseConstant()
|
||||
// /"boundaryData"
|
||||
// /this->patch().name()
|
||||
// /"points"
|
||||
//);
|
||||
//
|
||||
//pointField samplePoints((IFstream(samplePointsFile)()));
|
||||
|
||||
// Reread values and interpolate
|
||||
const fileName samplePointsFile
|
||||
(
|
||||
@ -73,7 +61,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::patchMapper() const
|
||||
// Read data
|
||||
const rawIOField<point> samplePoints(io, false);
|
||||
|
||||
|
||||
// tbd: run-time selection
|
||||
bool nearestOnly =
|
||||
(
|
||||
|
||||
@ -72,32 +72,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::interpolateBoundaryData
|
||||
{
|
||||
const word& patchName = this->patch().name();
|
||||
|
||||
//fileName valsFile
|
||||
//(
|
||||
// fileHandler().filePath
|
||||
// (
|
||||
// fileName
|
||||
// (
|
||||
// this->db().time().path()
|
||||
// /this->db().time().caseConstant()
|
||||
// /"boundaryData"
|
||||
// /patchName
|
||||
// /"0"
|
||||
// /fieldName
|
||||
// )
|
||||
// )
|
||||
//);
|
||||
//
|
||||
//autoPtr<ISstream> isPtr
|
||||
//(
|
||||
// fileHandler().NewIFstream
|
||||
// (
|
||||
// valsFile
|
||||
// )
|
||||
//);
|
||||
//
|
||||
//Field<Type> vals(isPtr());
|
||||
|
||||
// Reread values and interpolate
|
||||
const fileName valsFile
|
||||
(
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
\\ / A nd | www.openfoam.com
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
Copyright (C) 2020 ENERCON GmbH
|
||||
Copyright (C) 2018-2020 OpenCFD Ltd
|
||||
-------------------------------------------------------------------------------
|
||||
@ -94,7 +95,7 @@ void Foam::fv::actuationDiskSource::writeFileHeader(Ostream& os)
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& subDict)
|
||||
void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& dict)
|
||||
{
|
||||
switch (monitorMethod_)
|
||||
{
|
||||
@ -105,7 +106,17 @@ void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& subDict)
|
||||
labelHashSet selectedCells;
|
||||
|
||||
List<point> monitorPoints;
|
||||
subDict.readEntry("points", monitorPoints);
|
||||
|
||||
if (dict.found("monitorCoeffs"))
|
||||
{
|
||||
const dictionary subDict(dict.subDict("monitorCoeffs"));
|
||||
subDict.readIfPresent("points", monitorPoints);
|
||||
}
|
||||
else
|
||||
{
|
||||
monitorPoints.resize(1);
|
||||
monitorPoints[0] = dict.get<point>("upstreamPoint");
|
||||
}
|
||||
|
||||
for (const auto& monitorPoint : monitorPoints)
|
||||
{
|
||||
@ -171,10 +182,11 @@ Foam::fv::actuationDiskSource::actuationDiskSource
|
||||
),
|
||||
monitorMethod_
|
||||
(
|
||||
monitorMethodTypeNames.get
|
||||
monitorMethodTypeNames.getOrDefault
|
||||
(
|
||||
"monitorMethod",
|
||||
dict
|
||||
dict,
|
||||
monitorMethodType::POINTS
|
||||
)
|
||||
),
|
||||
sink_
|
||||
@ -205,7 +217,8 @@ Foam::fv::actuationDiskSource::actuationDiskSource
|
||||
UvsCtPtr_(Function1<scalar>::New("Ct", dict)),
|
||||
monitorCells_()
|
||||
{
|
||||
setMonitorCells((dict.subDict("monitorCoeffs")));
|
||||
//setMonitorCells((dict.subDict("monitorCoeffs")));
|
||||
setMonitorCells(dict);
|
||||
|
||||
fieldNames_.setSize(1, "U");
|
||||
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
\\ / A nd | www.openfoam.com
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||
Copyright (C) 2020 ENERCON GmbH
|
||||
Copyright (C) 2020 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
@ -31,19 +32,9 @@ Group
|
||||
grpFvOptionsSources
|
||||
|
||||
Description
|
||||
Applies sources on \c U to enable actuator disk models for aero/hydro thrust
|
||||
loading of horizontal axis turbines on surrounding flow field in
|
||||
terms of energy conversion processes.
|
||||
|
||||
Corrections applied to:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
Applies sources on velocity, i.e. \c U, to enable actuator disk models
|
||||
for aero/hydro thrust loading of horizontal axis turbines on surrounding
|
||||
flow field in terms of energy conversion processes.
|
||||
|
||||
Available options for force computations:
|
||||
\verbatim
|
||||
@ -119,6 +110,16 @@ Description
|
||||
DOI:10.1002/we.1804
|
||||
\endverbatim
|
||||
|
||||
Corrections applied to:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
Required fields:
|
||||
\verbatim
|
||||
U | Velocity [m/s]
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
Example by using \c constant/fvOptions:
|
||||
\verbatim
|
||||
@ -126,6 +127,18 @@ Usage
|
||||
{
|
||||
// Mandatory entries (unmodifiable)
|
||||
type actuationDiskSource;
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
selectionMode <mode>; // e.g. cellSet as shown below
|
||||
cellSet <cellSetName>;
|
||||
|
||||
// Mandatory entries (runtime modifiable)
|
||||
diskArea 40.0;
|
||||
diskDir (1 0 0);
|
||||
Cp <Function1>;
|
||||
Ct <Function1>;
|
||||
|
||||
// Conditional optional entries (unmodifiable)
|
||||
monitorMethod <points|cellSet>;
|
||||
monitorCoeffs
|
||||
{
|
||||
@ -141,16 +154,6 @@ Usage
|
||||
cellSet <monitorCellSet>;
|
||||
}
|
||||
|
||||
// Mandatory (inherited) entries (unmodifiable)
|
||||
selectionMode <mode>; // e.g. cellSet as shown below
|
||||
cellSet <cellSetName>;
|
||||
|
||||
// Mandatory entries (runtime modifiable)
|
||||
diskArea 40.0;
|
||||
diskDir (1 0 0);
|
||||
Cp <Function1>;
|
||||
Ct <Function1>;
|
||||
|
||||
// Optional entries (unmodifiable)
|
||||
variant <forceMethod>;
|
||||
|
||||
@ -168,15 +171,15 @@ Usage
|
||||
\table
|
||||
Property | Description | Type | Req'd | Dflt
|
||||
type | Type name: actuationDiskSource | word | yes | -
|
||||
diskArea | Actuator disk planar surface area [m2] | scalar | yes | -
|
||||
diskArea | Actuator disk planar surface area | scalar | yes | -
|
||||
diskDir | Surface-normal vector of the actuator disk <!--
|
||||
--> pointing upstream | vector | yes | -
|
||||
Cp | Power coefficient | Function1 | yes | -
|
||||
Ct | Thrust coefficient | Function1 | yes | -
|
||||
monitorMethod | Type of incoming velocity monitoring method <!--
|
||||
--> - see below | word | yes | -
|
||||
--> - see below | word | no | points
|
||||
variant | Type of the force computation method - see below <!--
|
||||
--> | word | no | Froude
|
||||
--> | word | no | Froude
|
||||
sink | Flag for body forces to act as a source (true) <!--
|
||||
--> or a sink (false) | bool | no | true
|
||||
writeFileStart | Start time for file output | scalar | no | 0
|
||||
@ -230,7 +233,6 @@ class actuationDiskSource
|
||||
public cellSetOption,
|
||||
public functionObjects::writeFile
|
||||
{
|
||||
|
||||
protected:
|
||||
|
||||
// Protected Enumerations
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
\\ / A nd | www.openfoam.com
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
Copyright (C) 2020 ENERCON GmbH
|
||||
Copyright (C) 2018-2020 OpenCFD Ltd
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
@ -7,6 +7,9 @@ runApplication blockMesh
|
||||
|
||||
restore0Dir
|
||||
|
||||
runApplication topoSet
|
||||
|
||||
runApplication $(getApplication)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -65,6 +65,7 @@ functions
|
||||
#include "FOLambda2"
|
||||
#include "FOLambVector"
|
||||
#include "FOlimitFields"
|
||||
#include "FOlog"
|
||||
#include "FOmag"
|
||||
#include "FOmagSqr"
|
||||
#include "FOmomentum"
|
||||
@ -73,6 +74,7 @@ functions
|
||||
#include "FOpressure"
|
||||
#include "FOprocessorField"
|
||||
#include "FOproudmanAcousticPower"
|
||||
#include "FOpow"
|
||||
#include "FOQ"
|
||||
#include "FOrandomise"
|
||||
#include "FOreadFields"
|
||||
|
||||
@ -689,3 +689,4 @@ actions
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
|
||||
@ -27,9 +27,7 @@ disk1
|
||||
sink true;
|
||||
Cp 0.386;
|
||||
Ct 0.58;
|
||||
|
||||
monitorMethod points;
|
||||
|
||||
monitorMethod points;
|
||||
monitorCoeffs
|
||||
{
|
||||
points
|
||||
@ -43,25 +41,13 @@ disk1
|
||||
disk2
|
||||
{
|
||||
type actuationDiskSource;
|
||||
variant Froude; // variableScaling;
|
||||
selectionMode cellSet;
|
||||
cellSet actuationDisk2;
|
||||
writeToFile true;
|
||||
sink true;
|
||||
Cp 0.53;
|
||||
Ct 0.58;
|
||||
diskArea 40;
|
||||
diskDir (1 0 0);
|
||||
|
||||
monitorMethod points;
|
||||
|
||||
monitorCoeffs
|
||||
{
|
||||
points
|
||||
(
|
||||
(581753 4785663 1070)
|
||||
);
|
||||
}
|
||||
upstreamPoint (581753 4785663 1070);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -30,7 +30,7 @@ boundaryField
|
||||
|
||||
ground
|
||||
{
|
||||
type nutkAtmRoughWallFunction;
|
||||
type atmNutkWallFunction;
|
||||
kappa $kappa;
|
||||
Cmu $Cmu;
|
||||
z0 $z0;
|
||||
|
||||
@ -38,11 +38,11 @@ plotUxUpstream() {
|
||||
inp1="$timeDir/x_0mPatch_U.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp0 u 2:((\$1-$zMin)/zRef) t "OF, x=0m (Patch)" w l lw 2 lc rgb "#009E73", \
|
||||
inp1 u 2:((\$1-$zMin)/zRef) t "OF, x=0m (Cell)" w l lw 2 lc rgb "#F0E440"
|
||||
@ -72,11 +72,11 @@ plotUxMid() {
|
||||
inp3="$timeDir/x_4000m_U.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp2 u 2:((\$1-$zMin)/zRef) t "OF, x=2500m" w l lw 2 lc rgb "#0072B2", \
|
||||
inp3 u 2:((\$1-$zMin)/zRef) t "OF, x=4000m" w l lw 2 lc rgb "#D55E00"
|
||||
@ -106,11 +106,11 @@ plotUxDownstream() {
|
||||
inp5="$timeDir/x_5000mPatch_U.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/Ux-HW-RH-Fig6a" \
|
||||
"system/atm-HargreavesWright-2007/Ux-HW-RH-Fig6a" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp4 u 2:((\$1-$zMin)/zRef) t "OF, x=5000m (Cell)" w l lw 2 lc rgb "#CC79A7", \
|
||||
inp5 u 2:((\$1-$zMin)/zRef) t "OF, x=5000m (Patch)" w l lw 2 lc rgb "#440154"
|
||||
@ -146,11 +146,11 @@ plotK() {
|
||||
inp5="$timeDir/x_5000mPatch_$items.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/k-RH-Fig6b" \
|
||||
"system/atm-HargreavesWright-2007/k-RH-Fig6b" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/k-HW-Fig6b-2500" \
|
||||
"system/atm-HargreavesWright-2007/k-HW-Fig6b-2500" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/k-HW-Fig6b-4000" \
|
||||
"system/atm-HargreavesWright-2007/k-HW-Fig6b-4000" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp0 u $seq:((\$1-$zMin)/zRef) t "OF, x=0m (Patch)" w l lw 2 lc rgb "#009E73", \
|
||||
inp1 u $seq:((\$1-$zMin)/zRef) t "OF, x=0m (Cell)" w l lw 2 lc rgb "#F0E440", \
|
||||
@ -191,11 +191,11 @@ plotEpsilon() {
|
||||
inp5="$timeDir/x_5000mPatch_$items.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/epsilon-HW-RH-Fig6c" \
|
||||
"system/atm-HargreavesWright-2007/epsilon-HW-RH-Fig6c" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/epsilon-HW-RH-Fig6c" \
|
||||
"system/atm-HargreavesWright-2007/epsilon-HW-RH-Fig6c" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/epsilon-HW-RH-Fig6c" \
|
||||
"system/atm-HargreavesWright-2007/epsilon-HW-RH-Fig6c" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp0 u 2:((\$1-$zMin)/zRef) t "OF, x=0m (Patch)" w l lw 2 lc rgb "#009E73", \
|
||||
inp1 u 2:((\$1-$zMin)/zRef) t "OF, x=0m (Cell)" w l lw 2 lc rgb "#F0E440", \
|
||||
@ -273,11 +273,11 @@ plotMut() {
|
||||
inp5="$timeDir/x_5000mPatch_$items.xy"
|
||||
|
||||
plot \
|
||||
"system/benchmark-data-HargreavesWright2007/mut-RH-Fig6d" \
|
||||
"system/atm-HargreavesWright-2007/mut-RH-Fig6d" \
|
||||
u 1:2 t "RH" w p ps 2 pt 6 lc rgb "#000000", \
|
||||
"system/benchmark-data-HargreavesWright2007/mut-HW-Fig6d-2500" \
|
||||
"system/atm-HargreavesWright-2007/mut-HW-Fig6d-2500" \
|
||||
u 1:2 t "HW, x=2500m" w p ps 1 pt 5 lc rgb "#E69F00", \
|
||||
"system/benchmark-data-HargreavesWright2007/mut-HW-Fig6d-4000" \
|
||||
"system/atm-HargreavesWright-2007/mut-HW-Fig6d-4000" \
|
||||
u 1:2 t "HW, x=4000m" w p ps 0.5 pt 4 lc rgb "#56B4E9", \
|
||||
inp0 u $seq:((\$1-$zMin)/zRef) t "OF, x=0m (Patch)" w l lw 2 lc rgb "#009E73", \
|
||||
inp1 u $seq:((\$1-$zMin)/zRef) t "OF, x=0m (Cell)" w l lw 2 lc rgb "#F0E440", \
|
||||
|
||||
@ -22,7 +22,8 @@ sed -e "s|RAS_MODEL|$RASmodel|g" \
|
||||
constant/turbulenceProperties.template \
|
||||
> constant/turbulenceProperties
|
||||
sed -e "s|L_MAX|$Lmax|g" constant/fvOptions.template > constant/fvOptions
|
||||
sed -e "s|Q_PLANT|$qPlant|g" 0.orig/qPlant.template > 0/qPlant
|
||||
sed -e "s|Q_PLANT|$qPlant|g" 0/qPlant.template > 0/qPlant
|
||||
rm -f 0/qPlant.template
|
||||
|
||||
runApplication renumberMesh -overwrite
|
||||
|
||||
|
||||
@ -58,7 +58,6 @@ atmBuoyancyTurbSource1
|
||||
selectionMode all;
|
||||
rho rho;
|
||||
Lmax L_MAX;
|
||||
n 3.0;
|
||||
beta 3.3e-03;
|
||||
}
|
||||
}
|
||||
|
||||
@ -55,7 +55,6 @@ atmBuoyancyTurbSource1
|
||||
selectionMode all;
|
||||
rho rho;
|
||||
Lmax 41.0;
|
||||
n 3.0;
|
||||
beta 3.3e-03;
|
||||
}
|
||||
}
|
||||
|
||||
@ -55,7 +55,6 @@ atmBuoyancyTurbSource1
|
||||
selectionMode all;
|
||||
rho rho;
|
||||
Lmax L_MAX;
|
||||
n 3.0;
|
||||
beta 3.3e-03;
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,3 +12,4 @@ rm -f *.png
|
||||
rm -f constant/{R*,points*,UMean*}
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -3,10 +3,10 @@ cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
endTime=85
|
||||
endTime=10
|
||||
if notTest "$@"
|
||||
then
|
||||
endTime=10
|
||||
endTime=85
|
||||
fi
|
||||
|
||||
sed "s|END_TIME|$endTime|g" system/controlDict.template > system/controlDict
|
||||
@ -18,3 +18,4 @@ runApplication blockMesh
|
||||
rm -rf results
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@ -30,3 +30,4 @@ the 'results' directory.
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
Reference in New Issue
Block a user