DOC-STYLE: various release changes

This commit is contained in:
Kutalmis Bercin
2020-06-15 11:16:47 +01:00
parent 39c2f16eca
commit 4d295c84a0
56 changed files with 385 additions and 474 deletions

View File

@ -48,6 +48,7 @@ Foam::epsilonWallFunctionFvPatchScalarField::blendingTypeNames
Foam::scalar Foam::epsilonWallFunctionFvPatchScalarField::tolerance_ = 1e-5; Foam::scalar Foam::epsilonWallFunctionFvPatchScalarField::tolerance_ = 1e-5;
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * // // * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
void Foam::epsilonWallFunctionFvPatchScalarField::setMaster() void Foam::epsilonWallFunctionFvPatchScalarField::setMaster()

View File

@ -74,9 +74,9 @@ Usage
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: epsilonWallFunction | word | yes | - 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 <!-- blending | Viscous/inertial sublayer blending method <!--
--> | word | no | stepwise --> | word | no | stepwise
n | Binomial blending exponent | scalar | no | 2.0 n | Binomial blending exponent | scalar | no | 2.0
\endtable \endtable
@ -189,8 +189,6 @@ class epsilonWallFunctionFvPatchScalarField
: :
public fixedValueFvPatchField<scalar> public fixedValueFvPatchField<scalar>
{ {
private:
// Private Enumerations // Private Enumerations
//- Options for the blending treatment of viscous and inertial sublayers //- Options for the blending treatment of viscous and inertial sublayers

View File

@ -56,7 +56,7 @@ Usage
where the entries mean: where the entries mean:
\table \table
Property | Description | Type | Req'd | Dflt 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 Ceps2 | Model coefficient | scalar | no | 1.9
Ck | Model coefficient | scalar | no | -0.416 Ck | Model coefficient | scalar | no | -0.416
Bk | Model coefficient | scalar | no | 8.366 Bk | Model coefficient | scalar | no | 8.366

View File

@ -32,8 +32,10 @@ Group
Description Description
This boundary condition provides a simple wrapper around the zero-gradient 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 condition, which can be used for the turbulent kinetic energy, i.e. \c k,
the case of high Reynolds number flow using wall functions. 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 Usage
Example of the boundary condition specification: Example of the boundary condition specification:

View File

@ -31,8 +31,8 @@ Group
grpWallFunctions grpWallFunctions
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the
viscosity, i.e. \c nut for low Reynolds number models. 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+. It sets \c nut to zero, and provides an access function to calculate \c y+.
Usage Usage

View File

@ -31,8 +31,10 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions based on viscosity, i.e. \c nut, based on velocity, i.e. \c U, using a
a blending of viscous and inertial sublayer contributions. 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[ \f[
u_\tau = (u_{\tau,v}^n + u_{\tau,l}^n)^{1/n} u_\tau = (u_{\tau,v}^n + u_{\tau,l}^n)^{1/n}
@ -46,12 +48,13 @@ Description
\endvartable \endvartable
Reference: Reference:
See the section that describes 'automatic wall treatment'
\verbatim \verbatim
Menter, F., Ferreira, J. C., Esch, T., Konno, B. (2003). See the section that describes 'automatic wall treatment':
The SST Turbulence Model with Improved Wall Treatment Menter, F., Ferreira, J. C., Esch, T., Konno, B. (2003).
for Heat Transfer Predictions in Gas Turbines. The SST turbulence model with improved wall treatment
Proceedings of the International Gas Turbine Congress 2003 Tokyo for heat transfer predictions in gas turbines.
In Proceedings of the International Gas Turbine Congress.
November, 2003. Tokyo, Japan. pp. 2-7.
\endverbatim \endverbatim
Usage Usage
@ -62,7 +65,7 @@ Usage
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type nutUBlendedWallFunction; type nutUBlendedWallFunction;
// Optional entries // Optional entries (unmodifiable)
n 4.0; n 4.0;
// Optional (inherited) entries // Optional (inherited) entries
@ -72,9 +75,9 @@ Usage
where the entries mean: where the entries mean:
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: nutUBlendedWallFunction | word | yes | - type | Type name: nutUBlendedWallFunction | word | yes | -
n | Blending factor | scalar | no | 4.0 n | Blending factor | scalar | no | 4.0
\endtable \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -32,8 +32,8 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions for rough walls, viscosity, i.e. \c nut, based on velocity i.e. \c U, for low- and
based on velocity, \c U. high-Reynolds number turbulence models for rough walls.
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:
@ -74,9 +74,6 @@ Note
\c turbulence->validate) returns a slightly different value every time \c turbulence->validate) returns a slightly different value every time
it is called. it is called.
See \link nutUSpaldingWallFunctionFvPatchScalarField.C \endlink. 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 SourceFiles
nutURoughWallFunctionFvPatchScalarField.C nutURoughWallFunctionFvPatchScalarField.C

View File

@ -32,9 +32,8 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions for rough walls, viscosity, i.e. \c nut, based on velocity, i.e. \c U. Using Spalding's
based on velocity, \c U, using Spalding's law to give a continuous \c nut law gives a continuous \c nut profile to the wall.
profile to the wall (y+ = 0)
\f[ \f[
y^+ = u^+ + \frac{1}{E} \left[exp(\kappa u^+) - 1 - \kappa u^+\, 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 \c turbulence->validate) returns a slightly different value every time
it is called. This is since the seed for the Newton-Raphson iteration it is called. This is since the seed for the Newton-Raphson iteration
uses the current value of \c *this (\c =nut ). uses the current value of \c *this (\c =nut ).
- This can be avoided by overriding the tolerance. This also switches on - This can be avoided by overriding the tolerance. This also switches on
a pre-detection whether the current nut already satisfies the turbulence 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 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 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. a tight tolerance, to make sure to kick every iteration, e.g.
maxIter 100; maxIter 100;
tolerance 1e-7; tolerance 1e-7;

View File

@ -32,10 +32,10 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions, based on viscosity, i.e. \c nut, based on velocity, i.e. \c U, for low- and
velocity, i.e. \c U. 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. near-wall Reynolds number.
The table should be located in the \c $FOAM_CASE/constant directory. The table should be located in the \c $FOAM_CASE/constant directory.
@ -58,7 +58,7 @@ Usage
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: nutUTabulatedWallFunction | word | yes | - 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 \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -32,8 +32,8 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions, based on viscosity, i.e. \c nut, based on velocity, i.e. \c U, for low- and
velocity, \c U. high-Reynolds number turbulence models.
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:

View File

@ -35,6 +35,8 @@ Description
boundary conditions which provide a wall constraint on various fields, such boundary conditions which provide a wall constraint on various fields, such
as turbulent viscosity, i.e. \c nut, or turbulent kinetic energy dissipation 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. 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: Reference:
\verbatim \verbatim
@ -72,6 +74,7 @@ Usage
E 9.8; E 9.8;
blending stepwise; blending stepwise;
n 4.0; n 4.0;
U U;
// Optional (inherited) entries // Optional (inherited) entries
... ...
@ -86,6 +89,7 @@ Usage
E | Wall roughness parameter | scalar | no | 9.8 E | Wall roughness parameter | scalar | no | 9.8
blending | Viscous/inertial sublayer blending | word | no | stepwise blending | Viscous/inertial sublayer blending | word | no | stepwise
n | Binomial blending exponent | scalar | no | 2.0 n | Binomial blending exponent | scalar | no | 2.0
U | Name of the velocity field | word | no | U
\endtable \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:
@ -151,11 +155,8 @@ Usage
\Gamma | \f$0.01 (y^+)^4 / (1.0 + 5.0 y^+)\f$ \Gamma | \f$0.01 (y^+)^4 / (1.0 + 5.0 y^+)\f$
\endvartable \endvartable
Note
- \c nutWallFunction is not directly usable.
See also See also
Foam::fixedValueFvPatchField - Foam::fixedValueFvPatchField
SourceFiles SourceFiles
nutWallFunctionFvPatchScalarField.C nutWallFunctionFvPatchScalarField.C

View File

@ -32,9 +32,10 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
kinematic viscosity, i.e. \c nut, when using wall functions for rough walls, viscosity, i.e. \c nut, when using wall functions for rough walls,
based on the turbulent kinetic energy, \c k. The condition manipulates the based on the turbulent kinetic energy, i.e. \c k. The condition
wall roughness parameter, i.e. \c E, to account for roughness effects. manipulates the wall roughness parameter, i.e. \c E, to account
for roughness effects.
Parameter ranges: Parameter ranges:
- roughness height = sand-grain roughness (0 for smooth walls) - roughness height = sand-grain roughness (0 for smooth walls)
@ -105,7 +106,7 @@ protected:
//- Compute the roughness function //- Compute the roughness function
virtual scalar fnRough(const scalar KsPlus, const scalar Cs) const; virtual scalar fnRough(const scalar KsPlus, const scalar Cs) const;
//- Calculate the turbulence viscosity //- Calculate the turbulent viscosity
virtual tmp<scalarField> calcNut() const; virtual tmp<scalarField> calcNut() const;

View File

@ -32,8 +32,8 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, when using wall functions, viscosity, i.e. \c nut, based on the turbulent kinetic energy,
based on the turbulent kinetic energy, \c k. i.e. \c k, for for low- and high-Reynolds number turbulence models.
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:

View File

@ -78,13 +78,12 @@ Usage
\endverbatim \endverbatim
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: omegaWallFunction | word | yes | - type | Type name: omegaWallFunction | word | yes | -
blended | Blending switch (Deprecated) | bool | no | true beta1 | Model coefficient | scalar | no | 0.075
beta1 | Model coefficient | scalar | no | 0.075
blending | Viscous/inertial sublayer blending method <!-- blending | Viscous/inertial sublayer blending method <!--
--> | word | no | binomial2 --> | word | no | binomial2
n | Binomial blending exponent | sclar | no | 2.0 n | Binomial blending exponent | scalar | no | 2.0
\endtable \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:
@ -185,10 +184,10 @@ Note
the specified \c nutWallFunction in order to ensure that each patch the specified \c nutWallFunction in order to ensure that each patch
possesses the same set of values for these coefficients. possesses the same set of values for these coefficients.
- The reason why \c binomial2 and \c binomial blending methods exist at - The reason why \c binomial2 and \c binomial blending methods exist at
the same time is to ensure the elementwise backward compatibility with the same time is to ensure the bitwise regression with the previous
the previous versions since \c binomial2 and \c binomial with n=2 will versions since \c binomial2 and \c binomial with \c n=2 will yield
yield slightly different output due to the miniscule differences in the slightly different output due to the miniscule differences in the
implementation of the basic functions (i.e. pow, sqrt, sqr). implementation of the basic functions (i.e. \c pow, \c sqrt, \c sqr).
See also See also
- Foam::epsilonWallFunctionFvPatchScalarField - Foam::epsilonWallFunctionFvPatchScalarField
@ -218,8 +217,6 @@ class omegaWallFunctionFvPatchScalarField
: :
public fixedValueFvPatchField<scalar> public fixedValueFvPatchField<scalar>
{ {
private:
// Private Enumerations // Private Enumerations
//- Options for the blending treatment of viscous and inertial sublayers //- Options for the blending treatment of viscous and inertial sublayers

View File

@ -31,7 +31,7 @@ Group
grpRASBoundaryConditions grpInletBoundaryConditions grpRASBoundaryConditions grpInletBoundaryConditions
Description 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, wind velocity and turbulence quantities for homogeneous, two-dimensional,
dry-air, equilibrium and neutral atmospheric boundary layer (ABL) modelling. dry-air, equilibrium and neutral atmospheric boundary layer (ABL) modelling.
@ -85,15 +85,6 @@ Description
C_2 | Curve-fitting coefficient for \c YGCJ profiles [-] C_2 | Curve-fitting coefficient for \c YGCJ profiles [-]
\endvartable \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: Reference:
\verbatim \verbatim
The ground-normal profile expressions (tag:RH): The ground-normal profile expressions (tag:RH):
@ -135,6 +126,35 @@ Note
\endverbatim \endverbatim
Usage 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 \table
Property | Description | Type | Req'd | Deflt Property | Description | Type | Req'd | Deflt
flowDir | Flow direction | TimeFunction1<vector> | yes | - flowDir | Flow direction | TimeFunction1<vector> | yes | -
@ -160,6 +180,13 @@ Usage
\endtable \endtable
Note 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 - The derived ABL expressions automatically satisfy the simplified transport
equation for \c k. Yet the same expressions only satisfy the simplified equation for \c k. Yet the same expressions only satisfy the simplified
transport equation for \c epsilon when the model constants \c sigmaEpsilon 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). with obstacles such as trees or buildings" (E:p. 28).
See also See also
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField - Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField - Foam::atmBoundaryLayerInletKFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField - Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField - Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
- ExtendedCodeGuide::atmBoundaryLayer
SourceFiles SourceFiles
atmBoundaryLayer.C atmBoundaryLayer.C

View File

@ -31,10 +31,10 @@ Group
grpRASBoundaryConditions grpInletBoundaryConditions grpRASBoundaryConditions grpInletBoundaryConditions
Description Description
This boundary condition provides a log-law type ground-normal inflow This boundary condition provides a log-law type ground-normal inlet
boundary condition for turbulent kinetic energy dissipation rate, i.e. boundary condition for the turbulent kinetic energy dissipation rate,
\c epsilon, for homogeneous, two-dimensional, dry-air, equilibrium and i.e. \c epsilon, for homogeneous, two-dimensional, dry-air, equilibrium
neutral atmospheric boundary layer modelling. and neutral atmospheric boundary layer modelling.
The ground-normal \c epsilon profile expression: The ground-normal \c epsilon profile expression:
@ -53,14 +53,14 @@ Description
d | Ground-normal displacement height [m] d | Ground-normal displacement height [m]
C_1 | Curve-fitting coefficient for \c YGCJ profiles [-] C_1 | Curve-fitting coefficient for \c YGCJ profiles [-]
C_2 | 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 Usage
\heading Required fields
\plaintable
epsilon | Turbulent kinetic energy dissipation rate [m^2/s^3]
\endplaintable
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
inlet inlet
@ -68,37 +68,26 @@ Usage
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type atmBoundaryLayerInletEpsilon; type atmBoundaryLayerInletEpsilon;
// Mandatory (inherited) entries (unmodifiable) // Mandatory/Optional (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
} }
\endverbatim \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: The inherited entries are elaborated in:
- \link atmBoundaryLayer.H \endlink - \link atmBoundaryLayer.H \endlink
- \link inletOutletFvPatchField.H \endlink - \link inletOutletFvPatchField.H \endlink
See also See also
- Foam::atmBoundaryLayer - Foam::atmBoundaryLayer
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField - Foam::atmBoundaryLayerInletKFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField - Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField - Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletEpsilon
SourceFiles SourceFiles
atmBoundaryLayerInletEpsilonFvPatchScalarField.C atmBoundaryLayerInletEpsilonFvPatchScalarField.C

View File

@ -31,8 +31,8 @@ Group
grpRASBoundaryConditions grpInletBoundaryConditions grpRASBoundaryConditions grpInletBoundaryConditions
Description Description
This boundary condition provides a log-law type ground-normal inflow This boundary condition provides a log-law type ground-normal inlet
boundary condition for turbulent kinetic energy, i.e. \c k, boundary condition for the turbulent kinetic energy, i.e. \c k,
for homogeneous, two-dimensional, dry-air, equilibrium and neutral for homogeneous, two-dimensional, dry-air, equilibrium and neutral
atmospheric boundary layer modelling. atmospheric boundary layer modelling.
@ -52,12 +52,12 @@ Description
C_2 | Curve-fitting coefficient for \c YGCJ profiles [-] C_2 | Curve-fitting coefficient for \c YGCJ profiles [-]
\endvartable \endvartable
Usage Required fields:
\heading Required fields \verbatim
\plaintable k | Turbulent kinetic energy [m2/s2]
k | Turbulent kinetic energy [m^2/s^2] \endverbatim
\endplaintable
Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
inlet inlet
@ -65,37 +65,28 @@ Usage
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type atmBoundaryLayerInletK; type atmBoundaryLayerInletK;
// Mandatory (inherited) entries (unmodifiable) // Mandatory/Optional (inherited) entries (unmodifiable)
Uref 10.0; ...
Zref 0.0;
z0 uniform 0.1;
d uniform 0.0;
flowDir (1 0 0); // not used flowDir (1 0 0); // not used
z (0 0 1); // not used zDir (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
} }
\endverbatim \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: The inherited entries are elaborated in:
- \link atmBoundaryLayer.H \endlink - \link atmBoundaryLayer.H \endlink
- \link inletOutletFvPatchField.H \endlink - \link inletOutletFvPatchField.H \endlink
See also See also
- Foam::atmBoundaryLayer - Foam::atmBoundaryLayer
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVectorField - Foam::atmBoundaryLayerInletVelocityFvPatchVectorField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField - Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField - Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletK
SourceFiles SourceFiles
atmBoundaryLayerInletKFvPatchScalarField.C atmBoundaryLayerInletKFvPatchScalarField.C

View File

@ -29,8 +29,8 @@ Group
grpRASBoundaryConditions grpInletBoundaryConditions grpRASBoundaryConditions grpInletBoundaryConditions
Description Description
This boundary condition provides a log-law type ground-normal inflow This boundary condition provides a log-law type ground-normal inlet
boundary condition for specific dissipation rate, i.e. \c omega, boundary condition for the specific dissipation rate, i.e. \c omega,
for homogeneous, two-dimensional, dry-air, equilibrium and neutral for homogeneous, two-dimensional, dry-air, equilibrium and neutral
atmospheric boundary layer modelling. atmospheric boundary layer modelling.
@ -51,12 +51,12 @@ Description
z_0 | Aerodynamic roughness length [m] z_0 | Aerodynamic roughness length [m]
\endvartable \endvartable
Usage Required fields:
\heading Required fields \verbatim
\plaintable
omega | Specific dissipation rate [1/s] omega | Specific dissipation rate [1/s]
\endplaintable \endverbatim
Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
inlet inlet
@ -64,37 +64,26 @@ Usage
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type atmBoundaryLayerInletOmega; type atmBoundaryLayerInletOmega;
// Mandatory (inherited) entries (unmodifiable) // Mandatory/Optional (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
} }
\endverbatim \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: The inherited entries are elaborated in:
- \link atmBoundaryLayer.H \endlink - \link atmBoundaryLayer.H \endlink
- \link inletOutletFvPatchField.H \endlink - \link inletOutletFvPatchField.H \endlink
See also See also
- Foam::atmBoundaryLayer - Foam::atmBoundaryLayer
- Foam::atmBoundaryLayer::atmBoundaryLayerInletVelocityFvPatchVelocityField - Foam::atmBoundaryLayerInletVelocityFvPatchVelocityField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField - Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField - Foam::atmBoundaryLayerInletKFvPatchScalarField
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletOmega
SourceFiles SourceFiles
atmBoundaryLayerInletOmegaFvPatchScalarField.C atmBoundaryLayerInletOmegaFvPatchScalarField.C

View File

@ -31,10 +31,10 @@ Group
grpRASBoundaryConditions grpInletBoundaryConditions grpRASBoundaryConditions grpInletBoundaryConditions
Description Description
This boundary condition provides a log-law type ground-normal inflow This boundary condition provides a log-law type ground-normal inlet
boundary condition for streamwise component of wind velocity, i.e. \c u, boundary condition for the streamwise component of wind velocity,
for homogeneous, two-dimensional, dry-air, equilibrium and neutral i.e. \c u, for homogeneous, two-dimensional, dry-air, equilibrium
atmospheric boundary layer modelling. and neutral atmospheric boundary layer modelling.
The ground-normal streamwise flow speed profile expression: The ground-normal streamwise flow speed profile expression:
@ -58,12 +58,12 @@ Description
z_0 | Aerodynamic roughness length [m] z_0 | Aerodynamic roughness length [m]
\endvartable \endvartable
Usage Required fields:
\heading Required fields \verbatim
\plaintable
U | Velocity [m/s] U | Velocity [m/s]
\endplaintable \endverbatim
Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
inlet inlet
@ -71,37 +71,26 @@ Usage
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type atmBoundaryLayerInletVelocity; type atmBoundaryLayerInletVelocity;
// Mandatory (inherited) entries (unmodifiable) // Mandatory/Optional (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
} }
\endverbatim \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: The inherited entries are elaborated in:
- \link atmBoundaryLayer.H \endlink - \link atmBoundaryLayer.H \endlink
- \link inletOutletFvPatchField.H \endlink - \link inletOutletFvPatchField.H \endlink
See also See also
- Foam::atmBoundaryLayer - Foam::atmBoundaryLayer
- Foam::atmBoundaryLayer::atmBoundaryLayerInletKFvPatchScalarField - Foam::atmBoundaryLayerInletKFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletEpsilonFvPatchScalarField - Foam::atmBoundaryLayerInletEpsilonFvPatchScalarField
- Foam::atmBoundaryLayer::atmBoundaryLayerInletOmegaFvPatchScalarField - Foam::atmBoundaryLayerInletOmegaFvPatchScalarField
- ExtendedCodeGuide::atmBoundaryLayer::atmBoundaryLayerInletVelocity
SourceFiles SourceFiles
atmBoundaryLayerInletVelocityFvPatchVectorField.C atmBoundaryLayerInletVelocityFvPatchVectorField.C

View File

@ -32,13 +32,13 @@ Group
Description Description
This boundary condition provides a fixed heat constraint on temperature, This boundary condition provides a fixed heat constraint on temperature,
i.e. \c T, to specify temperature gradient. Input heat source either i.e. \c T, to specify temperature gradient through an input heat source
specified in terms of an absolute power [W], or as a flux [W/m2]. which can either be specified as absolute power [W], or as flux [W/m2].
Required fields: Required fields:
\verbatim \verbatim
nut | Turbulent viscosity [m2/s] nut | Turbulent viscosity [m2/s]
k | Turbulent kinetic energy [m2/s2] k | Turbulent kinetic energy [m2/s2]
\endverbatim \endverbatim
Usage Usage
@ -64,23 +64,25 @@ Usage
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
heatSource | Heat source type | word | yes | - heatSource | Heat source type | word | yes | -
alphaEff | Name of turbulent thermal diff. field [kg/m/s] <!-- alphaEff | Name of turbulent thermal diff. field [kg/m/s] <!--
--> | word | yes | - --> | word | yes | -
Cp0 | Specific heat capacity | TimeFunction1<scalar> | yes | - Cp0 | Specific heat capacity [m2/s2/K] <!--
q | Heat source value | PatchFunction1<scalar> | yes | - --> | TimeFunction1<scalar> | yes | -
q | Heat source value [W (power) or W/m2 (flux)] <!--
--> | PatchFunction1<scalar> | yes | -
\endtable \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: The inherited entries are elaborated in:
- \link fixedGradientFvPatchScalarField.H \endlink - \link fixedGradientFvPatchScalarField.H \endlink
- \link TimeFunction1.H \endlink - \link TimeFunction1.H \endlink
- \link PatchFunction1.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 SourceFiles
atmTurbulentHeatFluxTemperatureFvPatchScalarField.C atmTurbulentHeatFluxTemperatureFvPatchScalarField.C
@ -128,7 +130,7 @@ class atmTurbulentHeatFluxTemperatureFvPatchScalarField
//- Name of effective thermal diffusivity field [kg/m/s] //- Name of effective thermal diffusivity field [kg/m/s]
word alphaEffName_; word alphaEffName_;
//- Specific heat capacity [-] //- Specific heat capacity [m2/s2/K]
TimeFunction1<scalar> Cp0_; TimeFunction1<scalar> Cp0_;
//- Heat power [W] or flux [W/m2] //- Heat power [W] or flux [W/m2]

View File

@ -44,6 +44,7 @@ scalar atmAlphatkWallFunctionFvPatchScalarField::tolerance_ = 0.01;
label atmAlphatkWallFunctionFvPatchScalarField::maxIters_ = 10; label atmAlphatkWallFunctionFvPatchScalarField::maxIters_ = 10;
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
void atmAlphatkWallFunctionFvPatchScalarField::checkType() void atmAlphatkWallFunctionFvPatchScalarField::checkType()

View File

@ -31,10 +31,10 @@ Group
grpAtmWallFunctions grpAtmWallFunctions
Description Description
This boundary condition provides a wall constraint on kinematic turbulent This boundary condition provides a wall constraint on the kinematic
thermal conductivity, \c alphat, for atmospheric boundary layer modelling. turbulent thermal conductivity, i.e. \c alphat, for atmospheric boundary
It assumes a logarithmic distribution of the potential temperature within layer modelling. It assumes a logarithmic distribution of the potential
the first cell. temperature within the first cell.
Required fields: Required fields:
\verbatim \verbatim
@ -47,7 +47,7 @@ Usage
<patchName> <patchName>
{ {
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type alphatkAtmWallFunction; type atmAlphatkWallFunction;
// Mandatory entries (runtime modifiable) // Mandatory entries (runtime modifiable)
Pr 0.90; Pr 0.90;
@ -66,7 +66,7 @@ Usage
where the entries mean: where the entries mean:
\table \table
Property | Description | Type | Req'd | Dflt 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 | - Pr | Molecular Prandtl number | TimeFunction1<scalar> | yes | -
Prt | Turbulent Prandtl number | PatchFunction1<scalar> | yes | - Prt | Turbulent Prandtl number | PatchFunction1<scalar> | yes | -
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | - z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -

View File

@ -31,14 +31,10 @@ Group
grpAtmWallFunctions grpAtmWallFunctions
Description Description
This boundary condition provides a wall constraint on turbulent kinetic This boundary condition provides a wall constraint on the turbulent kinetic
energy dissipation rate, i.e. \c epsilon, for atmospheric boundary layer energy dissipation rate, i.e. \c epsilon, and the turbulent kinetic energy
flows in neutral stratification conditions. production contribution, i.e. \c G, for atmospheric boundary layer
modelling.
Required fields:
\verbatim
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
\endverbatim
References: References:
\verbatim \verbatim
@ -56,6 +52,11 @@ Description
DOI:10.1016/B978-0-444-81688-7.50018-8 DOI:10.1016/B978-0-444-81688-7.50018-8
\endverbatim \endverbatim
Required fields:
\verbatim
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
\endverbatim
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
@ -81,7 +82,6 @@ Usage
The inherited entries are elaborated in: The inherited entries are elaborated in:
- \link epsilonWallFunctionFvPatchScalarField.H \endlink - \link epsilonWallFunctionFvPatchScalarField.H \endlink
- \link nutWallFunctionFvPatchScalarField.H \endlink
- \link PatchFunction1 \endlink - \link PatchFunction1 \endlink
See also See also

View File

@ -32,9 +32,9 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, based on velocity, \c U, for atmospheric boundary viscosity, i.e. \c nut, based on velocity, i.e. \c U, for atmospheric
layer modelling. It is designed to be used in conjunction with the boundary layer modelling. It is designed to be used in conjunction
\c atmBoundaryLayerInletVelocity boundary condition. with the \c atmBoundaryLayerInletVelocity boundary condition.
The governing equation of the boundary condition: The governing equation of the boundary condition:
@ -80,7 +80,7 @@ Usage
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: atmNutUWallFunction | word | yes | - type | Type name: atmNutUWallFunction | word | yes | -
z0 | Surface roughness length [m] | PatchFunction1<scalar> | 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 \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -32,8 +32,8 @@ Group
Description Description
This boundary condition provides a wall constraint on the turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, based on turbulent kinetic energy, \c k, and viscosity, i.e. \c nut, based on the turbulent kinetic energy, \c k,
velocity, i.e. \c U, for atmospheric boundary layer modelling. and velocity, i.e. \c U, for atmospheric boundary layer modelling.
The governing equation of the boundary condition: The governing equation of the boundary condition:
@ -64,34 +64,37 @@ Description
k | turbulent kinetic energy k | turbulent kinetic energy
\endvartable \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: Required fields:
\verbatim \verbatim
nut | Turbulent viscosity [m2/s] nut | Turbulent viscosity [m2/s]
k | Turbulent kinetic energy [m2/s2] k | Turbulent kinetic energy [m2/s2]
\endverbatim \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 Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
@ -111,10 +114,10 @@ Usage
where the entries mean: where the entries mean:
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: nutAtmWallFunction | word | yes | - type | Type name: nutAtmWallFunction | word | yes | -
z0Min | Minimum surface roughness length [m] | scalar | yes | - z0Min | Minimum surface roughness length [m] | scalar | yes | -
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | - z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | -
\endtable \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -32,8 +32,8 @@ Group
grpAtmWallFunctions grpAtmWallFunctions
Description Description
This boundary condition provides a wall constraint on turbulent This boundary condition provides a wall constraint on the turbulent
viscosity, i.e. \c nut, based on turbulent kinetic energy, \c k 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 for atmospheric boundary layer modelling. It is designed to be used in
conjunction with the \c atmBoundaryLayerInletVelocity boundary condition. conjunction with the \c atmBoundaryLayerInletVelocity boundary condition.
@ -67,6 +67,12 @@ Description
DOI:10.1016/j.jweia.2006.08.002 DOI:10.1016/j.jweia.2006.08.002
\endverbatim \endverbatim
Required fields:
\verbatim
nut | Turbulent viscosity [m2/s]
k | Turbulent kinetic energy [m2/s2]
\endverbatim
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
@ -91,7 +97,7 @@ Usage
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: atmNutkWallFunction | word | yes | - type | Type name: atmNutkWallFunction | word | yes | -
z0 | Surface roughness length [m] | PatchFunction1<scalar> | 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 \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:
@ -100,6 +106,7 @@ Usage
Note Note
- \c boundNut entry is set \c false for backward compatibility reasons. - \c boundNut entry is set \c false for backward compatibility reasons.
- \c nutkAtmRoughWallFunction was renamed to \c atmNutkWallFunction.
See also See also
- Foam::nutkWallFunctionFvPatchField - Foam::nutkWallFunctionFvPatchField

View File

@ -31,13 +31,10 @@ Group
grpAtmWallFunctions grpAtmWallFunctions
Description Description
This boundary condition provides a wall constraint on specific dissipation This boundary condition provides a wall constraint on the specific
rate, i.e. \c omega, for atmospheric boundary layer modelling. dissipation rate, i.e. \c omega, and the turbulent kinetic energy
production contribution, i.e. \c G, for atmospheric boundary
Required fields: layer modelling.
\verbatim
omega | Specific dissipation rate [1/s]
\endverbatim
References: References:
\verbatim \verbatim
@ -54,6 +51,11 @@ Description
Internal Report 00/4. Sweden: Göteborg. Internal Report 00/4. Sweden: Göteborg.
\endverbatim \endverbatim
Required fields:
\verbatim
omega | Specific dissipation rate [1/s]
\endverbatim
Usage Usage
Example of the boundary condition specification: Example of the boundary condition specification:
\verbatim \verbatim
@ -79,7 +81,6 @@ Usage
The inherited entries are elaborated in: The inherited entries are elaborated in:
- \link omegaWallFunctionFvPatchScalarField.H \endlink - \link omegaWallFunctionFvPatchScalarField.H \endlink
- \link nutWallFunctionFvPatchScalarField.H \endlink
- \link PatchFunction1.H \endlink - \link PatchFunction1.H \endlink
See also See also

View File

@ -33,10 +33,10 @@ Group
Description Description
Computes the Obukhov length field and associated friction velocity field. Computes the Obukhov length field and associated friction velocity field.
When scaled by the ground-normal height, i.e. z, the Obukhov length becomes When scaled by the ground-normal height, i.e. \c z, the Obukhov length
a dimensionless stability parameter, i.e. z/L, for atmospheric boundary becomes a dimensionless stability parameter, i.e. \c z/L, for atmospheric
layer modelling, expressing the relative roles of buoyancy and shear in the boundary layer modelling, expressing the relative roles of buoyancy and
production and dissipation of turbulent kinetic energy. shear in the production and dissipation of turbulent kinetic energy.
\f[ \f[
u^* = \sqrt{\max (\nu_t \sqrt{2 |\symm{\grad{\u}}|^2}, VSMALL)} u^* = \sqrt{\max (\nu_t \sqrt{2 |\symm{\grad{\u}}|^2}, VSMALL)}
@ -85,11 +85,11 @@ Description
Required fields: Required fields:
\verbatim \verbatim
U | Velocity [m/s] U | Velocity [m/s]
T | Temperature [K] T | Temperature [K]
nut | Turbulent viscosity [m2/s] nut | Turbulent viscosity [m2/s]
alphat | Kinematic turbulent thermal conductivity [m2/s]/[kg/m/s] alphat | Kinematic turbulent thermal conductivity [m2/s]/[kg/m/s]
g | Gravitational acceleration [m/s2] g | Gravitational acceleration [m/s2]
\endverbatim \endverbatim
\table \table
@ -134,7 +134,7 @@ Usage
rhoRef | Reference density (to convert from kinematic to static <!-- rhoRef | Reference density (to convert from kinematic to static <!--
--> pressure) | scalar | no | 1.0 --> pressure) | scalar | no | 1.0
kappa | von Kármán constant | scalar | no | 0.40 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 \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -34,7 +34,7 @@ Description
Applies sources on \c k and either \c epsilon or \c omega to prevent them Applies sources on \c k and either \c epsilon or \c omega to prevent them
droping below a specified ambient value for atmospheric boundary droping below a specified ambient value for atmospheric boundary
layer modelling. Such adjustment reportedly increases numerical 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. nonphysical oscillations in regions of low shear at higher altitudes.
Corrections applied to: Corrections applied to:
@ -50,8 +50,8 @@ Description
Required fields: Required fields:
\verbatim \verbatim
k | Turbulent kinetic energy [m2/s2] k | Turbulent kinetic energy [m2/s2]
epsilon/omega | Dissipation rate OR Specific dissipation rate [m2/s3]/[1/s] epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
\endverbatim \endverbatim
References: References:
@ -95,10 +95,10 @@ Usage
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: atmAmbientTurbSource | word | yes | - 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 rho | Name of density field | word | no | rho
epsilonAmb | Ambient value for epsilon | scalar | no | 0.0 epsilonAmb | Ambient value for \c epsilon | scalar | no | 0.0
omegaAmb | Ambient value for omega | scalar | no | 0.0 omegaAmb | Ambient value for \c omega | scalar | no | 0.0
\endtable \endtable
The inherited entries are elaborated in: The inherited entries are elaborated in:

View File

@ -48,7 +48,7 @@ void Foam::fv::atmBuoyancyTurbSource::calcB()
//- Temperature field [K] //- Temperature field [K]
const volScalarField& T = mesh_.lookupObjectRef<volScalarField>("T"); const volScalarField& T = mesh_.lookupObjectRef<volScalarField>("T");
//- Turbulent heat transfer coefficient field [m2/s] //- Kinematic turbulent thermal conductivity field [m2/s]
const volScalarField& alphat = const volScalarField& alphat =
mesh_.lookupObjectRef<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_ beta_
( (
dimensionedScalar dimensionedScalar

View File

@ -47,10 +47,10 @@ Description
Required fields: Required fields:
\verbatim \verbatim
k | Turbulent kinetic energy [m2/s2] k | Turbulent kinetic energy [m2/s2]
epsilon/omega | Dissipation rate OR Specific dissipation rate [m2/s3]/[1/s] epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
T | Temperature [K] T | Temperature [K]
alphat | Turbulent heat tranfer coefficient [m2/s] alphat | Kinematic turbulent thermal conductivity [m2/s]
\endverbatim \endverbatim
References: References:
@ -60,7 +60,7 @@ Description
Consistent two-equation closure modelling for atmospheric Consistent two-equation closure modelling for atmospheric
research: buoyancy and vegetation implementations. research: buoyancy and vegetation implementations.
Boundary-layer meteorology, 145(2), 307-327. 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., Alletto, M., Radi, A., Adib, J., Langner, J.,
Peralta, C., Altmikus, A., & Letzel, M. (2018). Peralta, C., Altmikus, A., & Letzel, M. (2018).
@ -98,7 +98,6 @@ Usage
// Optional (unmodifiable) // Optional (unmodifiable)
rho rho; rho rho;
Lmax 41.575; Lmax 41.575;
n 3.0;
beta 3.3e-03; beta 3.3e-03;
} }
@ -113,7 +112,6 @@ Usage
type | Type name: atmBuoyancyTurbSource | word | yes | - type | Type name: atmBuoyancyTurbSource | word | yes | -
rho | Name of density field | word | no | rho rho | Name of density field | word | no | rho
Lmax | Maximum mixing-length scale | scalar | no | 41.575 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 beta | Thermal expansion coefficient | scalar | no | 3.3e-03
\endtable \endtable
@ -160,9 +158,6 @@ class atmBuoyancyTurbSource
//- Maximum mixing-length scale [m] //- Maximum mixing-length scale [m]
const dimensionedScalar Lmax_; const dimensionedScalar Lmax_;
//- Mixing-length scale exponent
const dimensionedScalar n_;
//- Thermal expansion coefficient [1/K] //- Thermal expansion coefficient [1/K]
const dimensionedScalar beta_; const dimensionedScalar beta_;

View File

@ -34,16 +34,6 @@ Description
Applies corrections to incorporate the horizontal and vertical components Applies corrections to incorporate the horizontal and vertical components
of the Coriolis force for which the rotating frame is Earth. 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 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 objects that are in motion within a frame of reference that rotates with
respect to an inertial frame. respect to an inertial frame.
@ -60,6 +50,16 @@ Description
surface of Earth, so only the horizontal component of the Coriolis surface of Earth, so only the horizontal component of the Coriolis
force is generally important. force is generally important.
Corrections applied on:
\verbatim
U | Velocity [m/s]
\endverbatim
Required fields:
\verbatim
U | Velocity [m/s]
\endverbatim
References: References:
\verbatim \verbatim
Coriolis force. (n.d.). Coriolis force. (n.d.).
@ -80,6 +80,8 @@ Usage
selectionMode all; selectionMode all;
// Conditional mandatory entries (unmodifiable) // Conditional mandatory entries (unmodifiable)
// Select either of the below
// Option-1: to directly input rotation vector // Option-1: to directly input rotation vector
Omega (0 0 5.65156e-5); Omega (0 0 5.65156e-5);

View File

@ -53,7 +53,7 @@ Description
A limited-length-scale k-ε model for the neutral and A limited-length-scale k-ε model for the neutral and
stably-stratified atmospheric boundary layer. stably-stratified atmospheric boundary layer.
Boundary-layer meteorology, 83(1), 75-98. 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): Mixing-length scale limiter for omega (tag:L):
Langner, J. (2016). Langner, J. (2016).

View File

@ -31,8 +31,8 @@ Group
grpFvOptionsSources grpFvOptionsSources
Description Description
Applies sources on temperature \c T to incorporate effects Applies sources on temperature, i.e. \c T, to incorporate
of plant canopy for atmospheric boundary layer modelling. effects of plant canopy for atmospheric boundary layer modelling.
Corrections applied to: Corrections applied to:
\verbatim \verbatim
@ -41,8 +41,8 @@ Description
Required fields: Required fields:
\verbatim \verbatim
T | Temperature [K] T | Temperature [K]
qPlant | Heat flux [m2/s3] qPlant | Tree-height based specific heat flux [m2/s3]
\endverbatim \endverbatim
Usage Usage

View File

@ -42,9 +42,9 @@ Description
Required fields: Required fields:
\verbatim \verbatim
epsilon/omega | Dissipation rate OR specific dissipation rate [m2/s3]/[1/s] epsilon/omega | Dissipation rate OR Spec. dissipation rate [m2/s3]/[1/s]
plantCd | Plant canopy drag coefficient [-] plantCd | Plant canopy drag coefficient [-]
leafAreaDensity | Leaf area density [1/m] leafAreaDensity | Leaf area density [1/m]
\endverbatim \endverbatim
References: References:

View File

@ -31,7 +31,7 @@ Group
grpFvOptionsSources grpFvOptionsSources
Description 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. of plant canopy for atmospheric boundary layer modelling.
Corrections applied to: Corrections applied to:

View File

@ -192,18 +192,6 @@ Foam::turbulentDFSEMInletFvPatchVectorField::patchMapper() const
// Initialise interpolation (2D planar interpolation by triangulation) // Initialise interpolation (2D planar interpolation by triangulation)
if (mapperPtr_.empty()) 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 const fileName samplePointsFile
( (
this->db().time().globalPath() this->db().time().globalPath()

View File

@ -6,7 +6,7 @@
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2015 OpenFOAM Foundation Copyright (C) 2015 OpenFOAM Foundation
Copyright (C) 2016 OpenCFD Ltd Copyright (C) 2016-2020 OpenCFD Ltd
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -73,32 +73,6 @@ Foam::turbulentDFSEMInletFvPatchVectorField::interpolateBoundaryData
{ {
const word& patchName = this->patch().name(); 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 const fileName valsFile
( (
fileName fileName

View File

@ -38,18 +38,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::patchMapper() const
// Initialise interpolation (2D planar interpolation by triangulation) // Initialise interpolation (2D planar interpolation by triangulation)
if (mapperPtr_.empty()) 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 // Reread values and interpolate
const fileName samplePointsFile const fileName samplePointsFile
( (
@ -73,7 +61,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::patchMapper() const
// Read data // Read data
const rawIOField<point> samplePoints(io, false); const rawIOField<point> samplePoints(io, false);
// tbd: run-time selection // tbd: run-time selection
bool nearestOnly = bool nearestOnly =
( (

View File

@ -72,32 +72,6 @@ Foam::turbulentDigitalFilterInletFvPatchVectorField::interpolateBoundaryData
{ {
const word& patchName = this->patch().name(); 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 // Reread values and interpolate
const fileName valsFile const fileName valsFile
( (

View File

@ -5,6 +5,7 @@
\\ / A nd | www.openfoam.com \\ / A nd | www.openfoam.com
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2020 ENERCON GmbH Copyright (C) 2020 ENERCON GmbH
Copyright (C) 2018-2020 OpenCFD Ltd Copyright (C) 2018-2020 OpenCFD Ltd
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
@ -94,7 +95,7 @@ void Foam::fv::actuationDiskSource::writeFileHeader(Ostream& os)
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& subDict) void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& dict)
{ {
switch (monitorMethod_) switch (monitorMethod_)
{ {
@ -105,7 +106,17 @@ void Foam::fv::actuationDiskSource::setMonitorCells(const dictionary& subDict)
labelHashSet selectedCells; labelHashSet selectedCells;
List<point> monitorPoints; 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) for (const auto& monitorPoint : monitorPoints)
{ {
@ -171,10 +182,11 @@ Foam::fv::actuationDiskSource::actuationDiskSource
), ),
monitorMethod_ monitorMethod_
( (
monitorMethodTypeNames.get monitorMethodTypeNames.getOrDefault
( (
"monitorMethod", "monitorMethod",
dict dict,
monitorMethodType::POINTS
) )
), ),
sink_ sink_
@ -205,7 +217,8 @@ Foam::fv::actuationDiskSource::actuationDiskSource
UvsCtPtr_(Function1<scalar>::New("Ct", dict)), UvsCtPtr_(Function1<scalar>::New("Ct", dict)),
monitorCells_() monitorCells_()
{ {
setMonitorCells((dict.subDict("monitorCoeffs"))); //setMonitorCells((dict.subDict("monitorCoeffs")));
setMonitorCells(dict);
fieldNames_.setSize(1, "U"); fieldNames_.setSize(1, "U");

View File

@ -5,6 +5,7 @@
\\ / A nd | www.openfoam.com \\ / A nd | www.openfoam.com
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2017 OpenFOAM Foundation
Copyright (C) 2020 ENERCON GmbH Copyright (C) 2020 ENERCON GmbH
Copyright (C) 2020 OpenCFD Ltd. Copyright (C) 2020 OpenCFD Ltd.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
@ -31,19 +32,9 @@ Group
grpFvOptionsSources grpFvOptionsSources
Description Description
Applies sources on \c U to enable actuator disk models for aero/hydro thrust Applies sources on velocity, i.e. \c U, to enable actuator disk models
loading of horizontal axis turbines on surrounding flow field in for aero/hydro thrust loading of horizontal axis turbines on surrounding
terms of energy conversion processes. 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
Available options for force computations: Available options for force computations:
\verbatim \verbatim
@ -119,6 +110,16 @@ Description
DOI:10.1002/we.1804 DOI:10.1002/we.1804
\endverbatim \endverbatim
Corrections applied to:
\verbatim
U | Velocity [m/s]
\endverbatim
Required fields:
\verbatim
U | Velocity [m/s]
\endverbatim
Usage Usage
Example by using \c constant/fvOptions: Example by using \c constant/fvOptions:
\verbatim \verbatim
@ -126,6 +127,18 @@ Usage
{ {
// Mandatory entries (unmodifiable) // Mandatory entries (unmodifiable)
type actuationDiskSource; 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>; monitorMethod <points|cellSet>;
monitorCoeffs monitorCoeffs
{ {
@ -141,16 +154,6 @@ Usage
cellSet <monitorCellSet>; 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) // Optional entries (unmodifiable)
variant <forceMethod>; variant <forceMethod>;
@ -168,15 +171,15 @@ Usage
\table \table
Property | Description | Type | Req'd | Dflt Property | Description | Type | Req'd | Dflt
type | Type name: actuationDiskSource | word | yes | - 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 <!-- diskDir | Surface-normal vector of the actuator disk <!--
--> pointing upstream | vector | yes | - --> pointing upstream | vector | yes | -
Cp | Power coefficient | Function1 | yes | - Cp | Power coefficient | Function1 | yes | -
Ct | Thrust coefficient | Function1 | yes | - Ct | Thrust coefficient | Function1 | yes | -
monitorMethod | Type of incoming velocity monitoring method <!-- 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 <!-- 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) <!-- sink | Flag for body forces to act as a source (true) <!--
--> or a sink (false) | bool | no | true --> or a sink (false) | bool | no | true
writeFileStart | Start time for file output | scalar | no | 0 writeFileStart | Start time for file output | scalar | no | 0
@ -230,7 +233,6 @@ class actuationDiskSource
public cellSetOption, public cellSetOption,
public functionObjects::writeFile public functionObjects::writeFile
{ {
protected: protected:
// Protected Enumerations // Protected Enumerations

View File

@ -5,6 +5,7 @@
\\ / A nd | www.openfoam.com \\ / A nd | www.openfoam.com
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2020 ENERCON GmbH Copyright (C) 2020 ENERCON GmbH
Copyright (C) 2018-2020 OpenCFD Ltd Copyright (C) 2018-2020 OpenCFD Ltd
------------------------------------------------------------------------------- -------------------------------------------------------------------------------

View File

@ -7,6 +7,9 @@ runApplication blockMesh
restore0Dir restore0Dir
runApplication topoSet
runApplication $(getApplication) runApplication $(getApplication)
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -65,6 +65,7 @@ functions
#include "FOLambda2" #include "FOLambda2"
#include "FOLambVector" #include "FOLambVector"
#include "FOlimitFields" #include "FOlimitFields"
#include "FOlog"
#include "FOmag" #include "FOmag"
#include "FOmagSqr" #include "FOmagSqr"
#include "FOmomentum" #include "FOmomentum"
@ -73,6 +74,7 @@ functions
#include "FOpressure" #include "FOpressure"
#include "FOprocessorField" #include "FOprocessorField"
#include "FOproudmanAcousticPower" #include "FOproudmanAcousticPower"
#include "FOpow"
#include "FOQ" #include "FOQ"
#include "FOrandomise" #include "FOrandomise"
#include "FOreadFields" #include "FOreadFields"

View File

@ -689,3 +689,4 @@ actions
// ************************************************************************* // // ************************************************************************* //

View File

@ -27,9 +27,7 @@ disk1
sink true; sink true;
Cp 0.386; Cp 0.386;
Ct 0.58; Ct 0.58;
monitorMethod points;
monitorMethod points;
monitorCoeffs monitorCoeffs
{ {
points points
@ -43,25 +41,13 @@ disk1
disk2 disk2
{ {
type actuationDiskSource; type actuationDiskSource;
variant Froude; // variableScaling;
selectionMode cellSet; selectionMode cellSet;
cellSet actuationDisk2; cellSet actuationDisk2;
writeToFile true;
sink true;
Cp 0.53; Cp 0.53;
Ct 0.58; Ct 0.58;
diskArea 40; diskArea 40;
diskDir (1 0 0); diskDir (1 0 0);
upstreamPoint (581753 4785663 1070);
monitorMethod points;
monitorCoeffs
{
points
(
(581753 4785663 1070)
);
}
} }

View File

@ -30,7 +30,7 @@ boundaryField
ground ground
{ {
type nutkAtmRoughWallFunction; type atmNutkWallFunction;
kappa $kappa; kappa $kappa;
Cmu $Cmu; Cmu $Cmu;
z0 $z0; z0 $z0;

View File

@ -38,11 +38,11 @@ plotUxUpstream() {
inp1="$timeDir/x_0mPatch_U.xy" inp1="$timeDir/x_0mPatch_U.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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" 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" inp3="$timeDir/x_4000m_U.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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" 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" inp5="$timeDir/x_5000mPatch_U.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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" 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" inp5="$timeDir/x_5000mPatch_$items.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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", \ 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" inp5="$timeDir/x_5000mPatch_$items.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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", \ 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" inp5="$timeDir/x_5000mPatch_$items.xy"
plot \ 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", \ 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", \ 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", \ 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", \ 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", \ inp1 u $seq:((\$1-$zMin)/zRef) t "OF, x=0m (Cell)" w l lw 2 lc rgb "#F0E440", \

View File

@ -22,7 +22,8 @@ sed -e "s|RAS_MODEL|$RASmodel|g" \
constant/turbulenceProperties.template \ constant/turbulenceProperties.template \
> constant/turbulenceProperties > constant/turbulenceProperties
sed -e "s|L_MAX|$Lmax|g" constant/fvOptions.template > constant/fvOptions 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 runApplication renumberMesh -overwrite

View File

@ -58,7 +58,6 @@ atmBuoyancyTurbSource1
selectionMode all; selectionMode all;
rho rho; rho rho;
Lmax L_MAX; Lmax L_MAX;
n 3.0;
beta 3.3e-03; beta 3.3e-03;
} }
} }

View File

@ -55,7 +55,6 @@ atmBuoyancyTurbSource1
selectionMode all; selectionMode all;
rho rho; rho rho;
Lmax 41.0; Lmax 41.0;
n 3.0;
beta 3.3e-03; beta 3.3e-03;
} }
} }

View File

@ -55,7 +55,6 @@ atmBuoyancyTurbSource1
selectionMode all; selectionMode all;
rho rho; rho rho;
Lmax L_MAX; Lmax L_MAX;
n 3.0;
beta 3.3e-03; beta 3.3e-03;
} }
} }

View File

@ -12,3 +12,4 @@ rm -f *.png
rm -f constant/{R*,points*,UMean*} rm -f constant/{R*,points*,UMean*}
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -3,10 +3,10 @@ cd "${0%/*}" || exit # Run from this directory
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions . ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
endTime=85 endTime=10
if notTest "$@" if notTest "$@"
then then
endTime=10 endTime=85
fi fi
sed "s|END_TIME|$endTime|g" system/controlDict.template > system/controlDict sed "s|END_TIME|$endTime|g" system/controlDict.template > system/controlDict
@ -18,3 +18,4 @@ runApplication blockMesh
rm -rf results rm -rf results
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------

View File

@ -30,3 +30,4 @@ the 'results' directory.
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------