diff --git a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H index 70cffc74e0..3d2991be2f 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::basicSymmetryFvPatchField @@ -30,6 +33,8 @@ Description SourceFiles basicSymmetryFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef basicSymmetryFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H index c3f249287b..f4d455f75e 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/calculated/calculatedFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::calculatedFvPatchField @@ -29,18 +32,22 @@ Description that the value is assigned via field assignment, and not via a call to e.g. \c updateCoeffs or \c evaluate. + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type calculated; - value uniform (0 0 0); // optional value entry - } + myPatch + { + type calculated; + value uniform (0 0 0); // optional value entry + } \endverbatim SourceFiles calculatedFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef calculatedFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H index eaf7bc51ea..fcc1bfddee 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/coupled/coupledFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::coupledFvPatchField @@ -30,6 +33,8 @@ Description SourceFiles coupledFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef coupledFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H index b7298b5a18..ae396fa84f 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/directionMixed/directionMixedFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::directionMixedFvPatchField @@ -30,6 +33,8 @@ Description SourceFiles directionMixedFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef directionMixedFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H index 4eeda602a2..7ee9750685 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/fixedGradient/fixedGradientFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedGradientFvPatchField @@ -33,23 +36,34 @@ Description \f] where - \var values = patch values - \var int = internal field values - \var gradient = gradient (user-specified) - \var delta = inverse distance from patch face centre to cell centre + /vartable + values | patch values + int | internal field values + gradient | gradient (user-specified) + delta | inverse distance from patch face centre to cell centre + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + gradient | gradient | yes | + /endtable Example of the boundary condition specification: \verbatim - myPatch - { - type fixedGradient; - gradient uniform 0; - } + myPatch + { + type fixedGradient; + gradient uniform 0; + } \endverbatim SourceFiles fixedGradientFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedGradientFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H index 9b787760d2..d89bed8f40 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/fixedValue/fixedValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedValueFvPatchField @@ -28,18 +31,27 @@ Description This boundary condition supplies a fixed value constraint, and is the base class for a number of other boundary conditions. + /heading Patch usage + + /table + Property | Description | Required | Default value + value | values | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type fixedValue; - value uniform 0; // example for scalar field usage - } + myPatch + { + type fixedValue; + value uniform 0; // example for scalar field usage + } \endverbatim SourceFiles fixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H index a02393d3b8..f285baf775 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/mixed/mixedFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mixedFvPatchField @@ -36,12 +39,14 @@ Description \f] where - \var x_p = patch values - \var x_c = patch internal cell values - \var w = weight field, \c valueFraction_ - \var A = fixed value, \c refValue_ - \var B = patch normal gradient, \c refGrad_ - \var delta = inverse distance from face centre to internal cell centre + /vartable + x_p | patch values + x_c | patch internal cell values + w | weight field, \c valueFraction_ + A | fixed value, \c refValue_ + B | patch normal gradient, \c refGrad_ + delta | inverse distance from face centre to internal cell centre + /endvartable \note This condition is not usually applied directly; instead, use a derived @@ -53,6 +58,8 @@ SeeAlso SourceFiles mixedFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mixedFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H index a40d212cd7..36b4b0e43f 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/sliced/slicedFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::slicedFvPatchField @@ -33,9 +36,14 @@ Description Should only used as a template argument for SlicedGeometricField. +SeeAlso + Foam::fvPatchField + SourceFiles slicedFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef slicedFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H index 2c9a2c15c6..1a37a3cbb0 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/transform/transformFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::transformFvPatchField @@ -30,6 +33,8 @@ Description SourceFiles transformFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef transformFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H index 5726c739a9..12927f5457 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/zeroGradient/zeroGradientFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,14 +21,29 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::zeroGradientFvPatchField Description - Foam::zeroGradientFvPatchField + This boundary condition appies a zero-gradient condition from the patch + internal field onto the patch faces. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type zeroGradient; + } + \endverbatim SourceFiles zeroGradientFvPatchField.C +@} \*---------------------------------------------------------------------------*/ @@ -43,7 +58,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class zeroGradientFvPatch Declaration + Class zeroGradientFvPatch Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H index 4ccafd8593..e78e0e5a7d 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclic/cyclicFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::cyclicFvPatchField @@ -33,17 +36,21 @@ Description transformed to the neighbour patch, the patches should be identical (or very similar). + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type cyclic; - } + myPatch + { + type cyclic; + } \endverbatim SourceFiles cyclicFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef cyclicFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H index b80ac1fd54..fd8ff67e7f 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicAMI/cyclicAMIFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::cyclicAMIFvPatchField @@ -34,17 +37,24 @@ Description patch is transformed to the neighbour patch, the outer perimiter of each patch should be identical (or very similar). + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type cyclicAMI; - } + myPatch + { + type cyclicAMI; + } \endverbatim +SeeAlso + Foam::AMIInterpolation + SourceFiles cyclicAMIFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef cyclicAMIFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H index 350e71a618..13ac6f93fa 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/cyclicSlip/cyclicSlipFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::cyclicSlipFvPatchField @@ -28,12 +31,14 @@ Description This boundary condition is a light wrapper around the cyclicFvPatchField condition, providing no new functionality. + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type cyclicSlip; - } + myPatch + { + type cyclicSlip; + } \endverbatim SeeAlso @@ -42,6 +47,8 @@ SeeAlso SourceFiles cyclicSlipFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef cyclicSlipFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H index f3a52d9fcf..97ed05d85e 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/empty/emptyFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::emptyFvPatchField @@ -30,17 +33,21 @@ Description patches whose normal is aligned to geometric directions that do not constitue solution directions. + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type empty; - } + myPatch + { + type empty; + } \endverbatim SourceFiles emptyFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef emptyFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H index bf7c62408d..bcb2a16f4c 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/jumpCyclic/jumpCyclicFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::jumpCyclicFvPatchField @@ -34,6 +37,8 @@ SeeAlso SourceFiles jumpCyclicFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef jumpCyclicFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H index 5d4468045d..efbd5e0fdc 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/nonuniformTransformCyclic/nonuniformTransformCyclicFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,14 +21,23 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::nonuniformTransformCyclicFvPatchField Description - Foam::nonuniformTransformCyclicFvPatchField + This boundary condition enforces a cyclic condition between a pair of + boundaries, incorporating a non-uniform transformation. SourceFiles nonuniformTransformCyclicFvPatchField.C + nonuniformTransformCyclicFvPatchFields.H + nonuniformTransformCyclicFvPatchFields.C + nonuniformTransformCyclicFvPatchFieldsFwd.H + +@} \*---------------------------------------------------------------------------*/ diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H index 690a9dbe4f..49f736ba28 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processor/processorFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,30 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::processorFvPatchField Description - Foam::processorFvPatchField + This boundary condition enables processor communication across patches. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type processor; + } + \endverbatim SourceFiles processorFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef processorFvPatchField_H @@ -45,7 +60,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class processorFvPatch Declaration + Class processorFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H index 8de27ade32..0d5c552877 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/processorCyclic/processorCyclicFvPatchField.H @@ -21,14 +21,36 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::processorCyclicFvPatchField Description - Foam::processorCyclicFvPatchField + This boundary condition enables processor communication across cyclic + patches. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type processor; + } + \endverbatim + +SeeAlso + Foam::processorFvPatchField SourceFiles processorCyclicFvPatchField.C + processorCyclicFvPatchFields.H + processorCyclicFvPatchFields.C + processorCyclicFvPatchFieldsFwd.H + +@} \*---------------------------------------------------------------------------*/ @@ -44,7 +66,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class processorCyclicFvPatch Declaration + Class processorCyclicFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H index c95ffb95d6..e44c750f35 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/symmetry/symmetryFvPatchField.H @@ -21,14 +21,31 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::symmetryFvPatchField Description - Foam::symmetryFvPatchField + This boundary condition enforces a symmetry constraint + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type symmetryPlane; + } + \endverbatim SourceFiles symmetryFvPatchField.C + symmetryFvPatchFields.C + symmetryFvPatchFields.H + symmetryFvPatchFieldsFwd.H +@} \*---------------------------------------------------------------------------*/ @@ -44,7 +61,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class symmetryFvPatch Declaration + Class symmetryFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H index ec49aaf74f..dd66e00a9d 100644 --- a/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/constraint/wedge/wedgeFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,34 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::wedgeFvPatchField Description - Foam::wedgeFvPatchField + This boundary condition is similar to the cyclic condition, except that + it is applied to 2-D geometries. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type wedge; + } + \endverbatim + +SeeAlso + Foam::cyclicFvPatchField SourceFiles wedgeFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef wedgeFvPatchField_H @@ -44,7 +63,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class wedgeFvPatch Declaration + Class wedgeFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H index aa5f5f077b..94ac3b93b7 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.H @@ -21,52 +21,74 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::activeBaffleVelocityFvPatchVectorField Description - This boundary condition is applied to the flow velocity, to simulate the - opening of a baffle due to local flow conditions, by merging the behaviours - of wall and cyclic conditions. - - The baffle joins two mesh regions, where the open fraction determines - the interpolation weights applied to each cyclic- and neighbour-patch - contribution. + This velocity boundary condition simulates the opening of a baffle due + to local flow conditions, by merging the behaviours of wall and cyclic + conditions. The baffle joins two mesh regions, where the open fraction + determines the interpolation weights applied to each cyclic- and + neighbour-patch contribution. We determine whether the baffle is opening or closing from the sign of the net force across the baffle, from which the baffle open fraction is updated using: \f[ - x = x_old + dt/DT*sign(F_net) + x = x_{old} + sign(F_{net})\frac{dt}{DT} \f] where - \var x = baffle open fraction [0-1] - \var x_old = baffle open fraction on previous evaluation - \var dt = simulation time step - \var DT = time taken to open the baffle - \var F_net = net force across the baffle + + /vartable + x | baffle open fraction [0-1] + x_{old} | baffle open fraction on previous evaluation + dt | simulation time step + DT | time taken to open the baffle + F_{net} | net force across the baffle + /endvartable The open fraction is then applied to scale the patch areas. + /heading Patch usage + + /table + Property | Description | Required | Default value + p | pressure field name | no | p + cyclicPatch | cylclic patch name | yes | + orientation | 1 or -1 used to switch flow direction | yes| + openFraction | current opatch open fraction [0-1]| yes | + openingTime | time taken to open the baffle | yes | + maxOpenFractionDelta | max open fraction change per timestep | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type activeBaffleVelocity; - p p; // name of pressure field (default = p) - cyclicPatch cyclic1; // name of cyclic patch - orientation 1; // 1 or -1 used to switch flow direction - openFraction 0.2; // current opatch open fraction [0-1] - openingTime 5.0; // time taken to open the baffle - maxOpenFractionDelta 0.1; // max open fraction change/timestep - } + myPatch + { + type activeBaffleVelocity; + p p; + cyclicPatch cyclic1; + orientation 1; + openFraction 0.2; + openingTime 5.0; + maxOpenFractionDelta 0.1; + } \endverbatim +SeeAlso + Foam::fixedValueFvPatchField + Foam::cyclicFvPatchField + SourceFiles activeBaffleVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef activeBaffleVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H index 05bac8a277..570c14e5a6 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::activePressureForceBaffleVelocityFvPatchVectorField @@ -36,36 +39,55 @@ Description Once opened the baffle continues to open at a fixed rate using \f[ - x = x_old + dt/DT + x = x_{old} + \frac{dt}{DT} \f] where - \var x = baffle open fraction [0-1] - \var x_old = baffle open fraction on previous evaluation - \var dt = simulation time step - \var DT = time taken to open the baffle + + /vartable + x | baffle open fraction [0-1] + x_{old} | baffle open fraction on previous evaluation + dt | simulation time step + DT | time taken to open the baffle + /endvartable The open fraction is then applied to scale the patch areas. + /heading Patch usage + + /table + Property | Description | Required | Default value + p | pressure field name | no | p + cyclicPatch | cylclic patch name | yes | + orientation | 1 or -1 used to switch flow direction | yes| + openFraction | current opatch open fraction [0-1]| yes | + openingTime | time taken to open the baffle | yes | + maxOpenFractionDelta | max open fraction change per timestep | yes | + minThresholdValue | minimum open fraction for activation | yes | + forceBased | force (true) or pressure-based (false) activation | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type activePressureForceBaffleVelocity; - p p; // name of pressure field (default = p) - cyclicPatch cyclic1; // name of cyclic patch - orientation 1; // 1 or -1 used to switch flow direction - openFraction 0.2; // current opatch open fraction [0-1] - openingTime 5.0; // time taken to open the baffle - maxOpenFractionDelta 0.1; // max open fraction change/timestep - minThresholdValue 0.01; // minimum open fraction for activation - forceBased false; // force (true) or pressue (false) - } + myPatch + { + type activePressureForceBaffleVelocity; + p p; + cyclicPatch cyclic1; + orientation 1; + openFraction 0.2; + openingTime 5.0; + maxOpenFractionDelta 0.1; + minThresholdValue 0.01; + forceBased false; + } \endverbatim SourceFiles activePressureForceBaffleVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef activePressureForceBaffleVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H index b9e46ea66f..e86979b00e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/advective/advectiveFvPatchField.H @@ -21,12 +21,15 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::advectiveFvPatchField Description - Advective outflow boundary condition based on solving DDt(psi, U) = 0 - at the boundary. + This boundary condition provides an advective outflow condition, based on + solving DDt(psi, U) = 0 at the boundary. The standard (Euler, backward, CrankNicholson) time schemes are supported. Additionally an optional mechanism to relax the value at @@ -38,16 +41,6 @@ Description advectionSpeed() the default implementation of which requires the name of the flux field \c (phi) and optionally the density \c (rho) if the mass-flux rather than the volumetric-flux is given. - \verbatim - myPatch - { - type advective; - phi phi; - // rho rho; // Not needed, phi volumetric - // fieldInf 1e5; // Optional - // lInf 0.1; // Optional - } - \endverbatim The flow/wave speed at the outlet can be changed by deriving a specialised BC from this class and over-riding advectionSpeed() e.g. in @@ -55,9 +48,37 @@ Description the flow-speed plus the acoustic wave speed creating an acoustic wave transmissive boundary condition. + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + fieldInf | value of field beyond patch | no | + lInf | distance beyond patch for \c fieldInf | no | + /endtable + + \note + If \c lInf is specified, \c fieldInf will be required; \c rho is only + required in the case of a mass-based flux. + + Example of the boundary condition specification: + \verbatim + myPatch + { + type advective; + phi phi; + // rho rho; // Not needed for volumetric-based flux + // fieldInf 1e5; // Optional + // lInf 0.1; // Optional + } + \endverbatim + SourceFiles advectiveFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef advectiveFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/buoyantPressure/buoyantPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/buoyantPressure/buoyantPressureFvPatchScalarField.H index e239f77976..751aa8c622 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/buoyantPressure/buoyantPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/buoyantPressure/buoyantPressureFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::buoyantPressureFvPatchScalarField @@ -29,41 +32,57 @@ Description buoyant flow. If the variable name is one of: - \li pd - \li p_rgh - \li ph_rgh - we assume that the pressure variable is \f$ p - rho*g.h\f$ and the gradient + - \c pd + - \c p_rgh + - \c ph_rgh + we assume that the pressure variable is \f$p - rho*g.h\f$ and the gradient set using: \f[ grad(pressure) = -snGrad(rho)*(g.h) \f] + where - \var snGrad = surface-normal gradient operator - \var rho = density [kg/m3] - \var g = acceleration due to gravity [m/s2] - \var h = patch face centres [m] + + /vartable + snGrad | surface-normal gradient operator + rho | density [kg/m3] + g | acceleration due to gravity [m/s2] + h | patch face centres [m] + /endtable Otherwise we assume that it is the static pressure, and the gradient calculated using: \f[ grad(pressure) = rho*(g.n) \f] + where - \var n = patch face normal vectors + /vartable + n | patch face normal vectors + /endtable + + /heading Patch usage + + /table + Property | Description | Required | Default value + rho | density field name | no | rho + /endtable Example of the boundary condition specification: \verbatim - myPatch - { - type buoyantPressure; - rho rho; // optional density field name (default = rho) - value uniform 0; - } + myPatch + { + type buoyantPressure; + rho rho; + value uniform 0; + } \endverbatim SourceFiles buoyantPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef buoyantPressureFvPatchScalarFields_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H index 6bf3cb06ee..e57c855112 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedFixedValue/codedFixedValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::codedFixedValueFvPatchField @@ -28,29 +31,31 @@ Description Constructs on-the-fly a new boundary condition (derived from fixedValueFvPatchField) which is then used to evaluate. + /heading Patch usage + Example: \verbatim - movingWall - { - type codedFixedValue; - value uniform 0; - redirectType rampedFixedValue; // name of generated BC + myPatch + { + type codedFixedValue; + value uniform 0; + redirectType rampedFixedValue; // name of generated BC - code - #{ - operator==(min(10, 0.1*this->db().time().value())); - #}; + code + #{ + operator==(min(10, 0.1*this->db().time().value())); + #}; - //codeInclude - //#{ - // #include "fvCFD.H" - //#}; + //codeInclude + //#{ + // #include "fvCFD.H" + //#}; - //codeOptions - //#{ - // -I$(LIB_SRC)/finiteVolume/lnInclude - //#}; - } + //codeOptions + //#{ + // -I$(LIB_SRC)/finiteVolume/lnInclude + //#}; + } \endverbatim A special form is if the 'code' section is not supplied. In this case @@ -58,21 +63,24 @@ Description which would have a corresponding entry: \verbatim - rampedFixedValue - { - code - #{ - operator==(min(10, 0.1*this->db().time().value())); - #}; - } + myPatch + { + code + #{ + operator==(min(10, 0.1*this->db().time().value())); + #}; + } \endverbatim SeeAlso - Foam::dynamicCode and Foam::functionEntries::codeStream + Foam::dynamicCode + Foam::functionEntries::codeStream SourceFiles codedFixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef codedFixedValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H index c2841cd239..8c2ff8a59f 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/codedMixed/codedMixedFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::codedMixedFvPatchField @@ -28,31 +31,33 @@ Description Constructs on-the-fly a new boundary condition (derived from mixedFvPatchField) which is then used to evaluate. + /heading Patch usage + Example: \verbatim - movingWall - { - type codedMixed; - value uniform 0; - redirectType rampedMixed; // name of generated BC + myPatch + { + type codedMixed; + value uniform 0; + redirectType rampedMixed; // name of generated BC - code - #{ - this->refValue() = min(10, 0.1*this->db().time().value()); - this->refGrad() = vector::zero; - this->valueFraction() = 1.0; - #}; + code + #{ + this->refValue() = min(10, 0.1*this->db().time().value()); + this->refGrad() = vector::zero; + this->valueFraction() = 1.0; + #}; - //codeInclude - //#{ - // #include "fvCFD.H" - //#}; + //codeInclude + //#{ + // #include "fvCFD.H" + //#}; - //codeOptions - //#{ - // -I$(LIB_SRC)/finiteVolume/lnInclude - //#}; - } + //codeOptions + //#{ + // -I$(LIB_SRC)/finiteVolume/lnInclude + //#}; + } \endverbatim A special form is if the 'code' section is not supplied. In this case @@ -60,23 +65,26 @@ Description which would have a corresponding entry \verbatim - rampedMixed - { - code - #{ - this->refValue() = min(10, 0.1*this->db().time().value()); - this->refGrad() = vector::zero; - this->valueFraction() = 1.0; - #}; - } + myPatch + { + code + #{ + this->refValue() = min(10, 0.1*this->db().time().value()); + this->refGrad() = vector::zero; + this->valueFraction() = 1.0; + #}; + } \endverbatim SeeAlso - Foam::dynamicCode and Foam::functionEntries::codeStream + Foam::dynamicCode + Foam::functionEntries::codeStream SourceFiles codedMixedFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef codedMixedFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H index d5c6f8e489..f4a837a881 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/cylindricalInletVelocity/cylindricalInletVelocityFvPatchVectorField.H @@ -22,6 +22,9 @@ License along with OpenFOAM; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +\addtogroup boundaryConditions +@{ + Class Foam::cylindricalInletVelocityFvPatchVectorField @@ -30,9 +33,20 @@ Description cylindrical co-ordinates given a central axis, central point, rpm, axial and radial velocity. + /heading Patch usage + + /table + Property | Description | Required | Default value + axis | axis of rotation | yes | + centre | centre of rotation | yes | + axialVelocity| axial velocity profile | yes | + radialVelocity| radial velocity profile | yes | + rpm | rotational speed (revolutions per minute) | yes| + /endtable + Example of the boundary condition specification: \verbatim - inlet + myPatch { type cylindricalInletVelocity; axis (0 0 1); @@ -43,13 +57,20 @@ Description } \endverbatim + \note The \c axialVelocity, \c radialVelocity and \c rpm entries are DataEntry types, able to describe time varying functions. The example above gives the usage for supplying constant values. +SeeAlso + Foam::fixedValueFvPatchField + Foam::DataEntry + SourceFiles cylindricalInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef cylindricalInletVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H index bad95b3a7f..fa975e230b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fan/fanFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fanFvPatchField @@ -31,27 +34,37 @@ Description The jump is specified as a \c DataEntry type, to enable the use of, e.g. contant, polynomial, table values. + /heading Patch usage + + /table + Property | Description | Required | Default value + patchType | underlying patch type should be \c cyclic| yes | + jump | current jump value | yes | + jumpTable | jump data, e.g. \c csvFile | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch + myPatch + { + type fan; + patchType cyclic; + jump uniform 0; + jumpTable csvFile; + csvFileCoeffs { - type fan; - patchType cyclic; // specify \c cyclic - jump uniform 0; // current jump value - jumpTable csvFile; // jump specification - csvFileCoeffs - { - hasHeaderLine 1; - refColumn 0; - componentColumns 1(1); - separator ","; - fileName "$FOAM_CASE/constant/pressureVsU"; - } - value uniform 0; + hasHeaderLine 1; + refColumn 0; + componentColumns 1(1); + separator ","; + fileName "$FOAM_CASE/constant/pressureVsU"; } + value uniform 0; + } \endverbatim - The above example shows the use of a CSV file to specify the jump. + The above example shows the use of a comma separated (CSV) file to specify + the jump condition. \note The underlying \c patchType should be set to \c cyclic @@ -61,6 +74,10 @@ SeeAlso SourceFiles fanFvPatchField.C + fanFvPatchFields.H + fanFvPatchFields.C + fanFvPatchFieldsFwd.H +@} \*---------------------------------------------------------------------------*/ diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H index 8fbe5091b9..c17f99249a 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedFluxPressure/fixedFluxPressureFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedFluxPressureFvPatchScalarField @@ -37,23 +40,41 @@ Description \f] where - \var Sf = patch face areas + + /vartable + Sf | patch face areas [m2] + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + phiHbyA | name of predicted flux field | no | phiHbyA + phi | name of flux field | no | phi + rho | name of density field | no | rho + Dp | name of pressure diffusivity field | no | Dp + /endtable Example of the boundary condition specification: \verbatim - myPatch - { - type externalWallHeatFluxTemperature; - phiHbyA phiHbyA; // predicted flux field (default = phiHbyA) - phi phi; // flux field (default = phi) - rho rho; // density field (default = rho) - Dp Dp; // pressure diffusivity field (default = Dp) - } + myPatch + { + type externalWallHeatFluxTemperature; + phiHbyA phiHbyA; + phi phi; + rho rho; + Dp Dp; + } \endverbatim +SeeAlso + Foam::fixedGradientFvPatchField + SourceFiles fixedFluxPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedFluxPressureFvPatchScalarFields_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H index 10fac6b767..2198962105 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedInternalValueFvPatchField/fixedInternalValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedInternalValueFvPatchField @@ -29,15 +32,18 @@ Description directly into a matrix, i.e. to set a constraint condition. Default behaviour is to act as a zero gradient condition. + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type fixedInternalValue; - vakue uniform 0; // place holder - } + myPatch + { + type fixedInternalValue; + value uniform 0; // place holder + } \endverbatim + \note This is used as a base for conditions such as the turbulence \c epsilon wall function, which applies a near-wall constraint for high Reynolds number flows. @@ -48,6 +54,8 @@ SeeAlso SourceFiles fixedInternalValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedInternalValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H index 2bca8d534b..f250473ce5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedJump/fixedJumpFvPatchField.H @@ -21,11 +21,17 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedJumpFvPatchField Description - Base class for "jump" of a field - not used directly + Base class for "jump" of a field + + \note + not used directly SeeAlso Foam::fanFvPatchScalarField @@ -34,6 +40,8 @@ SeeAlso SourceFiles fixedJumpFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedJumpFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H index b59969a967..99a9c4e053 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedMean/fixedMeanFvPatchField.H @@ -21,16 +21,40 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedMeanFvPatchField Description - Extrapolates field to the patch using the near-cell values and adjusts - the distribution to match the specified meanValue. + This boundary condition extrapolates field to the patch using the near-cell + values and adjusts the distribution to match the specified mean value. + + /heading Patch usage + + /table + Property | Description | Required | Default value + meanValue | mean value | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type fixedMean; + meanValue 1.0; + } + \endverbatim + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles fixedMeanFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedMeanFvPatchField_H @@ -44,7 +68,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class fixedMeanFvPatch Declaration + Class fixedMeanFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H index 94cc081b4e..9224eea582 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedNormalSlip/fixedNormalSlipFvPatchField.H @@ -21,24 +21,39 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedNormalSlipFvPatchField Description This boundary condition sets the patch-normal component to a fixed value. + /heading Patch usage + + /table + Property | Description | Required | Default value + fixedValue | fixed value | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type fixedNormalSlip; - fixedValue uniform 0; // example entry for a scalar field - } + myPatch + { + type fixedNormalSlip; + fixedValue uniform 0; // example entry for a scalar field + } \endverbatim +SeeAlso + Foam::transformFvPatchField + SourceFiles fixedNormalSlipFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedNormalSlipFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H index 67b4184da0..bf219a6087 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fixedPressureCompressibleDensity/fixedPressureCompressibleDensityFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fixedPressureCompressibleDensityFvPatchScalarField @@ -29,31 +32,47 @@ Description function of pressure and fluid properties: \f[ - rho = rholSat + psil*(p - pSat) + rho = rho_{l,sat} + psi_l*(p - p_{sat}) \f] where - \var rho = density [kg/m3] - \var rholSat = saturation liquid density - \var p = pressure [Pa] - \var pSat = saturation pressure [Pa] + + /vartable + rho | density [kg/m3] + rho_{l,sat} | saturation liquid density [kg/m3] + psi_l | liquid compressibility + p | pressure [Pa] + p_{sat} | saturation pressure [Pa] + /endvartable The variables \c rholSat, \c pSat and \c psil are retrieved from the \c thermodynamicProperties dictionary. + /heading Patch usage + + /table + Property | Description | Required | Default value + p | pressure field name | no | p + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type fixedPressureCompressibleDensity; - p p; // Name of static pressure field - value uniform 1; // Initial value - } + myPatch + { + type fixedPressureCompressibleDensity; + p p; + value uniform 1; + } \endverbatim +SeeAlso + Foam::fixedValueFvPatchField + SourceFiles fixedPressureCompressibleDensityFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fixedPressureCompressibleDensityFvPatchScalarField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H index e0564e3a5a..a90692905c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/flowRateInletVelocity/flowRateInletVelocityFvPatchVectorField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::flowRateInletVelocityFvPatchVectorField @@ -34,37 +37,47 @@ Description \c rhoName entry. For a mass-based flux: - \li if \c rhoName is a valid density field name, the flow rate is in kg/s - \li if \c rhoName is "none" the flow rate is in m3/s + - if \c rhoName is a valid density field name, the flow rate is in kg/s + - if \c rhoName is "none" the flow rate is in m3/s For a volumetric-based flux: - \li the flow rate is in m3/s + - the flow rate is in m3/s + + /heading Patch usage + + /table + Property | Description | Required | Default value + flowRate | volumetric [m3/s] OR mass flow rate [kg/s] | yes | + /endtable Example of the boundary condition specification: \verbatim - myPatch - { - type flowRateInletVelocity; - flowRate 0.2; // Volumetric/mass flow rate [m3/s or kg/s] - rho rho; // none | rho [m3/s or kg/s] - value uniform (0 0 0); // placeholder - } + myPatch + { + type flowRateInletVelocity; + flowRate 0.2; + rho rho; + value uniform (0 0 0); // placeholder + } \endverbatim The \c flowRate entry is a \c DataEntry type, meaning that it can be specified as constant, a polynomial fuction of time, and ... \note - \li the value is positive into the domain (as an inlet) - \li may not work correctly for transonic inlets - \li strange behaviour with potentialFoam since the U equation is not solved + - the value is positive into the domain (as an inlet) + - may not work correctly for transonic inlets + - strange behaviour with potentialFoam since the U equation is not solved SeeAlso Foam::DataEntry + Foam::fixedValueFvPatchField SourceFiles flowRateInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef flowRateInletVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H index 00ea99bc37..149f971982 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/fluxCorrectedVelocity/fluxCorrectedVelocityFvPatchVectorField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::fluxCorrectedVelocityFvPatchVectorField @@ -30,24 +33,35 @@ Description by "zeroGradient" and then corrected from the flux: \f[ - Up = Uc - n*(n.Uc) + n*phi/mag(Sf) + U_p = U_c - n*(n.U_c) + n*phi/mag(Sf) \f] where - \var Up = velocity at the patch [m/s] - \var Uc = velocity in cells adjacent to the patch [m/s] - \var n = patch normal vectors - \var phi = flux at the patch [m3/s or kg/s] - \var Sf = patch face area vectors [m2] + + /vartable + U_p | velocity at the patch [m/s] + U_c | velocity in cells adjacent to the patch [m/s] + n | patch normal vectors + phi | flux at the patch [m3/s or kg/s] + Sf | patch face area vectors [m2] + /endvartable + + where + + /table + Property | Description | Required | Default value + phi | name of flux field | no | phi + rho | name of density field | no | rho + /endtable Example of the boundary condition specification: \verbatim - myPatch - { - type fluxCorrectedVelocity; - phi phi; // name of flux field (default = phi) - rho rho; // name of density field (default = rho) - } + myPatch + { + type fluxCorrectedVelocity; + phi phi; + rho rho; + } \endverbatim \note @@ -61,6 +75,8 @@ SeeAlso SourceFiles fluxCorrectedVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef fluxCorrectedVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H index d6936c01c9..3083cbe630 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/freestream/freestreamFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::freestreamFvPatchField @@ -30,13 +33,20 @@ Description operation switches between fixed (free stream) value and zero gradient based on the sign of the flux. + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type freestream; - phi phi; // name of the flux field (default = phi) - } + myPatch + { + type freestream; + phi phi; + } \endverbatim SeeAlso @@ -46,6 +56,8 @@ SeeAlso SourceFiles freestreamFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef freestreamFvPatchField_H @@ -59,7 +71,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class freestreamFvPatchField Declaration + Class freestreamFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H index 6107208e19..3b5fb4632f 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/freestreamPressure/freestreamPressureFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::freestreamPressureFvPatchScalarField @@ -29,12 +32,14 @@ Description It is a zero-gradient condition that constrains the flux across the patch based on the free-stream velocity. + /heading Patch usage + Example of the boundary condition specification: \verbatim - myPatch - { - type freestreamPressure; - } + myPatch + { + type freestreamPressure; + } \endverbatim \note @@ -47,6 +52,8 @@ SeeAlso SourceFiles freestreamPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef freestreamPressureFvPatchScalarFields_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H index 425c0e6fd4..3518536ffe 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/inletOutlet/inletOutletFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::inletOutletFvPatchField @@ -28,22 +31,32 @@ Description This boundary condition provides a generic outflow condition, with specified inflow for the case of return flow. + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + inletValue | inlet value | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type inletOutlet; - phi phi; // name of flux field (default = phi) - inletValue uniform 0; // reverse flow (inlet) value - value uniform 0; // initial value - } + myPatch + { + type inletOutlet; + phi phi; // name of flux field (default = phi) + inletValue uniform 0; // reverse flow (inlet) value + value uniform 0; // initial value + } \endverbatim The mode of operation is determined by the sign of the flux across the patch faces. - \li positive flux (out of domain): apply zero-gradient condition - \li negative flux (into of domain): apply the user-specified fixed value + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): apply the user-specified fixed value SeeAlso Foam::mixedFvPatchField @@ -52,6 +65,8 @@ SeeAlso SourceFiles inletOutletFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef inletOutletFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H index 0e6e596fbc..6ccd06a7b3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/inletOutletTotalTemperature/inletOutletTotalTemperatureFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::inletOutletTotalTemperatureFvPatchScalarField @@ -29,19 +32,31 @@ Description temperature for use with supersonic cases, where a user-specified value is applied in the case of reverse flow. + /heading Patch usage + + /table + Property | Description | Required | Default value + U | velocity field name | no | U + phi | flux field name | no | phi + psi | compressibility field name | no | psi + gamma | heat capacity ration (Cp/Cv) | yes | + inletValue | reverse flow (inlet) value | yes | + T0 | static temperature [K] | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type inletOutletTotalTemperature; - U U; // velocity field (default = U) - phi phi; // flux field (default = phi) - psi psi; // compressiblility field (default = psi) - gamma gamma; // heat capacity ratio - inletValue uniform 0; // reverse flow (inlet) value - T0 uniform 0; // static temperature [K] - value uniform 0; // initial value - } + myPatch + { + type inletOutletTotalTemperature; + U U; + phi phi; + psi psi; + gamma gamma; + inletValue uniform 0; + T0 uniform 0; + value uniform 0; + } \endverbatim SeeAlso @@ -50,6 +65,8 @@ SeeAlso SourceFiles inletOutletTotalTemperatureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef inletOutletTotalTemperatureFvPatchScalarField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H index 549053c4c0..7d1a1d54d0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedFieldFvPatchField @@ -29,19 +32,27 @@ Description condition. It does not use information on the patch; instead it holds thr data locally. + /heading Patch usage + + /table + Property | Description | Required | Default value + fieldName | name of field to be mapped | no | this field name + setAverage | flag to activate setting of average value | yes | + average | average value to apply if \c setAverage = yes | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type mappedField; - fieldName T; // optional field name - setAverage no; // apply an average value - average 0; // average to apply if setAverage - value uniform 0; // place holder - } + myPatch + { + type mappedField; + fieldName T; // optional field name + setAverage no; // apply an average value + average 0; // average to apply if setAverage + value uniform 0; // place holder + } \endverbatim - \note Since this condition can be applied on a per-field and per-patch basis, it is possible to duplicate the mapping information. If possible, employ @@ -58,6 +69,8 @@ SeeAlso SourceFiles mappedFieldFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedFieldFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H index 79eeba6f48..ede2346d25 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedInternalValue/mappedFixedInternalValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedFixedInternalValueFvPatchField @@ -28,15 +31,24 @@ Description This boundary condition maps the boundary and internal values of a neighbour patch field to the boundary and internal values of *this. + /heading Patch usage + + /table + Property | Description | Required | Default value + fieldName | name of field to be mapped | no | this field name + setAverage | flag to activate setting of average value | yes | + average | average value to apply if \c setAverage = yes | yes | + /endtable + \verbatim - myPatch - { - type mappedFixedInternalValue; - fieldName T; // optional field name - setAverage no; // apply an average value - average 0; // average to apply if setAverage - value uniform 0; // place holder - } + myPatch + { + type mappedFixedInternalValue; + fieldName T; + setAverage no; + average 0; + value uniform 0; + } \endverbatim \note @@ -52,6 +64,8 @@ SeeAlso SourceFiles mappedFixedInternalValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedFixedInternalValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H index 6b14e38fcd..bdf88c3cd5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedPushedInternalValue/mappedFixedPushedInternalValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedFixedPushedInternalValueFvPatchField @@ -28,16 +31,25 @@ Description This boundary condition maps the boundary values of a neighbour patch field to the boundary and internal cell values of *this. + /heading Patch usage + + /table + Property | Description | Required | Default value + fieldName | name of field to be mapped | no | this field name + setAverage | flag to activate setting of average value | yes | + average | average value to apply if \c setAverage = yes | yes | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type mappedFixedInternalValue; - fieldName T; // optional field name - setAverage no; // apply an average value - average 0; // average to apply if setAverage - value uniform 0; // place holder - } + myPatch + { + type mappedFixedInternalValue; + fieldName T; + setAverage no; + average 0; + value uniform 0; + } \endverbatim \note @@ -53,6 +65,8 @@ SeeAlso SourceFiles mappedFixedPushedInternalValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedFixedPushedInternalValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H index 481c86c87d..aad29789ff 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedFixedValueFvPatchField @@ -31,17 +34,27 @@ Description The sample mode is set by the underlying mapping engine, provided by the mappedPatchBase class. + /heading Patch usage + + /table + Property | Description | Required | Default value + fieldName | name of field to be mapped | no | this field name + setAverage | flag to activate setting of average value | yes | + average | average value to apply if \c setAverage = yes | yes | + interpolationScheme | type of interpolation scheme | no | + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type mapped; - fieldName T; // optional (alternative) field name - setAverage no; // apply an average value - average 0; // average to apply if setAverage - interpolationScheme cell; // optional interpolation scheme - value uniform 0; // place holder - } + myPatch + { + type mapped; + fieldName T; + setAverage no; + average 0; + interpolationScheme cell; + value uniform 0; + } \endverbatim When employing the \c nearestCell sample mode, the user must also specify @@ -64,6 +77,8 @@ SeeAlso SourceFiles mappedFixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedFixedValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H index 45c42233b6..39a1d90dc0 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFlowRate/mappedFlowRateFvPatchVectorField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedFlowRateFvPatchVectorField @@ -28,14 +31,20 @@ Description Describes a volumetric/mass flow normal vector boundary condition by its magnitude as an integral over its area. - The inlet mass flux is taken from the neighbor region. - - phi is used to determine if the flow is compressible or incompressible. + The inlet mass flux is taken from the neighbour region. The basis of the patch (volumetric or mass) is determined by the - dimensions of the flux, phi. - The current density is used to correct the velocity when applying the - mass basis. + dimensions of the flux, phi. The current density is used to correct the + velocity when applying the mass basis. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + neigPhi | name of flux field on neighbour mesh | yes | + /endtable Example of the boundary condition specification: @verbatim @@ -44,8 +53,7 @@ Description type mappedFlowRate; phi phi; rho rho; - neigPhi neigPhiName_; // Volumetric/mass flow rate - // [m3/s or kg/s] + neigPhi phi; value uniform (0 0 0); // placeholder } @endverbatim @@ -53,6 +61,8 @@ Description SourceFiles mappedFlowRateFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedFlowRateFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H index cf60c26a55..1e4f29810c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedVelocityFluxFixedValue/mappedVelocityFluxFixedValueFvPatchField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::mappedVelocityFluxFixedValueFvPatchField @@ -28,17 +31,25 @@ Description This boundary condition maps the velocity and flux from a neighbour patch to this patch + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type mappedFixedInternalValue; - phi phi; // name of flux field (default = phi) - value uniform 0; // place holder - } + myPatch + { + type mappedFixedInternalValue; + phi phi; + value uniform 0; // place holder + } \endverbatim - The underlying sample mode should be set to nearestPatchFace or nearestFace + The underlying sample mode should be set to \c nearestPatchFace or + \c nearestFace \note This boundary condition can only be applied to patches that are of @@ -53,6 +64,8 @@ SeeAlso SourceFiles mappedVelocityFluxFixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef mappedVelocityFluxFixedValueFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H index 0d45bbc424..86aed0448c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::movingWallVelocityFvPatchVectorField @@ -29,14 +32,22 @@ Description moving walls. In addition, it should also be applied to 'moving' walls for moving reference frame (MRF) calculations. + + /heading Patch usage + + /table + Property | Description | Required | Default value + U | velociy field name | no | U + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type movingWallVelocity; - U U; // name of velocity field (default = U) - value uniform 0; // initial value - } + myPatch + { + type movingWallVelocity; + U U; + value uniform 0; // initial value + } \endverbatim SeeAlso @@ -46,6 +57,8 @@ SeeAlso SourceFiles movingWallVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef movingWallVelocityFvPatchVectorField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.C index 644c8b161c..89cf73e8ad 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.C @@ -41,7 +41,8 @@ multiphaseFixedFluxPressureFvPatchScalarField fixedGradientFvPatchScalarField(p, iF), phiHbyAName_("phiHbyA"), phiName_("phi"), - rhoName_("rho") + rhoName_("rho"), + DpName_("Dp") {} @@ -57,7 +58,8 @@ multiphaseFixedFluxPressureFvPatchScalarField fixedGradientFvPatchScalarField(ptf, p, iF, mapper), phiHbyAName_(ptf.phiHbyAName_), phiName_(ptf.phiName_), - rhoName_(ptf.rhoName_) + rhoName_(ptf.rhoName_), + DpName_(ptf.DpName_) {} @@ -72,7 +74,8 @@ multiphaseFixedFluxPressureFvPatchScalarField fixedGradientFvPatchScalarField(p, iF), phiHbyAName_(dict.lookupOrDefault("phiHbyA", "phiHbyA")), phiName_(dict.lookupOrDefault("phi", "phi")), - rhoName_(dict.lookupOrDefault("rho", "rho")) + rhoName_(dict.lookupOrDefault("rho", "rho")), + DpName_(dict.lookupOrDefault("Dp", "Dp")) { if (dict.found("gradient")) { @@ -91,27 +94,29 @@ multiphaseFixedFluxPressureFvPatchScalarField Foam::multiphaseFixedFluxPressureFvPatchScalarField:: multiphaseFixedFluxPressureFvPatchScalarField ( - const multiphaseFixedFluxPressureFvPatchScalarField& wbppsf + const multiphaseFixedFluxPressureFvPatchScalarField& mfppsf ) : - fixedGradientFvPatchScalarField(wbppsf), - phiHbyAName_(wbppsf.phiHbyAName_), - phiName_(wbppsf.phiName_), - rhoName_(wbppsf.rhoName_) + fixedGradientFvPatchScalarField(mfppsf), + phiHbyAName_(mfppsf.phiHbyAName_), + phiName_(mfppsf.phiName_), + rhoName_(mfppsf.rhoName_), + DpName_(mfppsf.DpName_) {} Foam::multiphaseFixedFluxPressureFvPatchScalarField:: multiphaseFixedFluxPressureFvPatchScalarField ( - const multiphaseFixedFluxPressureFvPatchScalarField& wbppsf, + const multiphaseFixedFluxPressureFvPatchScalarField& mfppsf, const DimensionedField& iF ) : - fixedGradientFvPatchScalarField(wbppsf, iF), - phiHbyAName_(wbppsf.phiHbyAName_), - phiName_(wbppsf.phiName_), - rhoName_(wbppsf.rhoName_) + fixedGradientFvPatchScalarField(mfppsf, iF), + phiHbyAName_(mfppsf.phiHbyAName_), + phiName_(mfppsf.phiName_), + rhoName_(mfppsf.rhoName_), + DpName_(mfppsf.DpName_) {} @@ -155,7 +160,7 @@ void Foam::multiphaseFixedFluxPressureFvPatchScalarField::updateCoeffs() */ const fvsPatchField& Dpp = - patch().lookupPatchField("Dp"); + patch().lookupPatchField(DpName_); gradient() = (phiHbyAp - phip)/patch().magSf()/Dpp; @@ -172,6 +177,7 @@ void Foam::multiphaseFixedFluxPressureFvPatchScalarField::write writeEntryIfDifferent(os, "phiHbyA", "phiHbyA", phiHbyAName_); writeEntryIfDifferent(os, "phi", "phi", phiName_); writeEntryIfDifferent(os, "rho", "rho", rhoName_); + writeEntryIfDifferent(os, "Dp", "Dp", DpName_); gradient().writeEntry("gradient", os); writeEntry("value", os); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.H index 57f01d78e6..f998f0407f 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/multiphaseFixedFluxPressure/multiphaseFixedFluxPressureFvPatchScalarField.H @@ -21,22 +21,57 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::multiphaseFixedFluxPressureFvPatchScalarField Description - Adjusts the pressure gradient such that the flux on the boundary is that - specified by the velocity boundary condition. + This boundary condition adjusts the pressure gradient such that the flux + on the boundary is that specified by the velocity boundary condition. The predicted flux to be compensated by the pressure gradient is evaluated - as (phi - phiHbyA), both of which are looked-up from the database as is - the pressure diffusivity Dp used to calculate the gradient. + as \f$(phi - phiHbyA)\f$, both of which are looked-up from the database, as + is the pressure diffusivity Dp used to calculate the gradient using: - The names of the phi, phiHbyA and Dp fields may be optionally specified. + \f[ + grad(pressure) = \frac{phiHbyA - phi}{mag(Sf)*Dp} + \f] + + where + + /vartable + Sf | patch face areas [m2] + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + phiHbyA | name of predicted flux field | no | phiHbyA + phi | name of flux field | no | phi + rho | name of density field | no | rho + Dp | name of pressure diffusivity field | no | Dp + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type externalWallHeatFluxTemperature; + phiHbyA phiHbyA; + phi phi; + rho rho; + Dp Dp; + } + \endverbatim SourceFiles multiphaseFixedFluxPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef multiphaseFixedFluxPressureFvPatchScalarFields_H @@ -71,6 +106,9 @@ class multiphaseFixedFluxPressureFvPatchScalarField // if neccessary word rhoName_; + //- Name of the pressure diffusivity field + word DpName_; + public: diff --git a/src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/oscillatingFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/oscillatingFixedValueFvPatchField.H index ba84bc1c26..0b1351cdee 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/oscillatingFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/oscillatingFixedValueFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,12 +21,40 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::oscillatingFixedValueFvPatchField Description - Describes an oscillating boundary condition in terms of amplitude and - frequency. + This boundary condition provides an oscillating condition in terms of + amplitude and frequency. + + /f[ + x_p = (1 + a.sin(\pi f t))x_{ref} + x_o + /f] + + where + + /vartable + x_p | patch values + x_{ref} | patch reference values + x_o | patch offset values + a | amplitude + f | frequency [1/s] + t | time [s] + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + refValue | reference value | yes | + offset | offset value | no | 0.0; // optional + amplitude | oscillation amplitude | yes | + frequency | oscillation frequency | yes | + /endtable Example of the boundary condition specification: \verbatim @@ -34,19 +62,25 @@ Description { type oscillatingFixedValue; refValue uniform 5.0; - offset 0.0; // optional + offset 0.0; amplitude constant 0.5; frequency constant 10; } \endverbatim + \note The amplitude and frequency entries are DataEntry types, able to describe time varying functions. The example above gives the usage for supplying constant values. +SeeAlso + Foam::DataEntry + SourceFiles oscillatingFixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef oscillatingFixedValueFvPatchField_H @@ -62,7 +96,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class oscillatingFixedValueFvPatch Declaration + Class oscillatingFixedValueFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H index 1002143fd1..70bdf6ec34 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/outletInlet/outletInletFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,48 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::outletInletFvPatchField Description - Foam::outletInletFvPatchField + This boundary condition provides a generic inflow condition, with + specified outflow for the case of return flow. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + inletValue | inlet value | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type outletInlet; + phi phi; // name of flux field (default = phi) + outletValue uniform 0; // reverse flow (inlet) value + value uniform 0; // initial value + } + \endverbatim + + The mode of operation is determined by the sign of the flux across the + patch faces. + + \note + Sign conventions: + - positive flux (out of domain): apply the user-specified fixed value + - negative flux (into of domain): apply zero-gradient condition SourceFiles outletInletFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef outletInletFvPatchField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H index c04b7e2f17..603daaa37f 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/outletMappedUniformInlet/outletMappedUniformInletFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,17 +21,44 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::outletMappedUniformInletFvPatchField Description - Averages the field over the "outlet" patch specified by name - "outletPatchName" and applies this as the uniform value of the field - over this patch. + This boundary conditon averages the field over the "outlet" patch specified + by name "outletPatchName" and applies this as the uniform value of the + field over this patch. + + /heading Patch usage + + /table + Property | Description | Required | Default value + outletPatchName | name of outlet patch | yes | + phi | flux field name | no | phi + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type outletMappedUniformInlet; + outletPatchName aPatch; + phi phi; + value uniform 0; + } + \endverbatim + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles outletMappedUniformInletFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef outletMappedUniformInletFvPatchField_H @@ -45,7 +72,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class outletMappedUniformInletFvPatch Declaration + Class outletMappedUniformInletFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H index c369143439..8fad8bed65 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/partialSlip/partialSlipFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,41 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::partialSlipFvPatchField Description - Foam::partialSlipFvPatchField + This boundary condition provides a partial slip condition. The amount of + slip is controlled by a user-supplied field. + + /heading Patch usage + + /table + Property | Description | Required | Default value + valueFraction | fraction od value used for boundary [0-1] | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type partialSlip; + valueFraction uniform 0.1; + value uniform 0; + } + \endverbatim + +SeeAlso + Foam::transformFvPatchField SourceFiles partialSlipFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef partialSlipFvPatchField_H @@ -43,7 +69,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class partialSlipFvPatch Declaration + Class partialSlipFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H index 4c14094f49..b67f610920 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,23 +21,64 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::phaseHydrostaticPressureFvPatchScalarField Description - Phase hydrostatic pressure boundary condition calculated as + This boundary condition provides a phase-based hydrostatic pressure + condition, calculated as: - pRefValue + rho*g.(x - pRefPoint) + \f[ + p_{hyd} = p_{ref} + \rho*g.(x - x_{ref}) + \f] - where rho is provided and assumed uniform + where + /vartable + p_{hyd} | hyrostatic pressure [Pa] + p_{ref} | reference pressure [Pa] + x_{ref} | reference point in Cartesian co-ordinates + \rho | density (assumed uniform) + g | acceleration due to gravity [m/s2] + /endtable - applied according to the phase-fraction field provided: - 1 -> fix value to that provided - 0 -> zero-gradient + The values are assigned according to the phase-fraction field: + - 1: apply \$fp_{hyd}\$f + - 0: apply a zero-gradient condition + + /heading Patch usage + + /table + Property | Description | Required | Default value + phaseName | phase field name | no | alpha + rho | density field name | no | rho + pRefValue | reference pressure [Pa] | yes | + pRefPoint | reference pressure location | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type phaseHydrostaticPressure; + phaseName alpha1; + rho rho; + pRefValue 1e5; + pRefPoint (0 0 0); + value uniform 0; // optional initial value + } + \endverbatim + +SeeAlso + Foam::mixedFvPatchScalarField SourceFiles phaseHydrostaticPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef phaseHydrostaticPressureFvPatchScalarField_H @@ -51,7 +92,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class phaseHydrostaticPressureFvPatch Declaration + Class phaseHydrostaticPressureFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class phaseHydrostaticPressureFvPatchScalarField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H index d9f1a3e2a8..85eaf73c9e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletOutletVelocity/pressureDirectedInletOutletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,18 +21,53 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureDirectedInletOutletVelocityFvPatchVectorField Description - Velocity inlet/outlet boundary condition for pressure boundary where the - pressure is specified. zero-gradient is applied for outflow (as defined - by the flux) and for inflow the velocity is obtained from the flux with - the specified `inletDirection'. + This velocity inlet/outlet boundary condition is applied to pressure + boundaries where the pressure is specified. A zero-gradient condtion is + applied for outflow (as defined by the flux); for inflow, the velocity + is obtained from the flux with the specified inlet direction. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + inletDirection | inlet direction per patch face | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureDirectedInletOutletVelocity; + phi phi; + rho rho; + inletDirection uniform (1 0 0); + value uniform 0; + } + \endverbatim + + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): derive from the flux with specified + direction + +SeeAlso + Foam::mixedFvPatchVectorField SourceFiles pressureDirectedInletOutletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureDirectedInletOutletVelocityFvPatchVectorField_H @@ -47,7 +82,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureDirectedInletOutletVelocityFvPatch Declaration + Class pressureDirectedInletOutletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureDirectedInletOutletVelocityFvPatchVectorField @@ -56,8 +91,13 @@ class pressureDirectedInletOutletVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; + + //- Density field name word rhoName_; + + //- Inlet direction vectorField inletDir_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H index b12dda34fb..892a7e09ed 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureDirectedInletVelocity/pressureDirectedInletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,19 +21,52 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureDirectedInletVelocityFvPatchVectorField Description - Velocity inlet boundary condition for patches where the pressure is - specified. The inflow velocity is obtained from the flux with the - specified "inletDirection" direction. If reverse flow is possible or - expected use the "pressureDirectedInletOutletVelocityFvPatchVectorField" - BC instead. + This velocity inlet boundary condition is applied to patches where the + pressure is specified. The inflow velocity is obtained from the flux with + the specified inlet direction" direction. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + inletDirection | inlet direction per patch face | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureDirectedInletVelocity; + phi phi; + rho rho; + inletDirection uniform (1 0 0); + value uniform 0; + } + \endverbatim + + \note + If reverse flow is possible or expected use the + pressureDirectedInletOutletVelocityFvPatchVectorField condition instead. + + +SeeAlso + Foam::fixedValueFvPatchField + Foam::pressureDirectedInletOutletVelocityFvPatchVectorField SourceFiles pressureDirectedInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureDirectedInletVelocityFvPatchVectorField_H @@ -48,7 +81,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureDirectedInletVelocityFvPatch Declaration + Class pressureDirectedInletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureDirectedInletVelocityFvPatchVectorField @@ -57,8 +90,13 @@ class pressureDirectedInletVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; + + //- Density field name word rhoName_; + + //- Inlet direction vectorField inletDir_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H index afab477fbc..9a7d657c73 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletParSlipVelocity/pressureInletOutletParSlipVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,20 +21,54 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureInletOutletParSlipVelocityFvPatchVectorField Description - Velocity inlet/outlet boundary condition for pressure boundary where the - pressure is specified. zero-gradient is applied for outflow (as defined - by the flux) and for inflow the velocity is obtained from the flux with - the specified `inletDirection'. + This velocity inlet/outlet boundary condition for pressure boundary where + the pressure is specified. A zero-gradient is applied for outflow (as + defined by the flux); for inflow, the velocity is obtained from the flux + with the specified inlet direction. - Slip condition applied tangential to the patch. + A slip condition is applied tangential to the patch. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureInletOutletParSlipVelocity; + phi phi; + rho rho; + value uniform 0; + } + \endverbatim + + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): derive from the flux with specified + direction + +SeeAlso + Foam::mixedFvPatchVectorField + Foam::pressureDirectedInletOutletVelocityFvPatchVectorField SourceFiles pressureInletOutletParSlipVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureInletOutletParSlipVelocityFvPatchVectorField_H @@ -58,7 +92,10 @@ class pressureInletOutletParSlipVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; + + //- Density field name word rhoName_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H index 174142e5ec..3cb219c35e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletOutletVelocity/pressureInletOutletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,18 +21,50 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureInletOutletVelocityFvPatchVectorField Description - Velocity inlet/outlet boundary condition patches for where the pressure is - specified. zero-gradient is applied for outflow (as defined by the flux) - and for inflow the velocity is obtained from the patch-face normal - component of the internal-cell value. + This velocity inlet/outlet boundary condition is applied to pressure + boundaries where the pressure is specified. A zero-gradient condtion is + applied for outflow (as defined by the flux); for inflow, the velocity is + obtained from the patch-face normal component of the internal-cell value. + + The tangential patch velocity can be optionally specified. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + tangentialVelocity | tangential velocity field | no | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureInletOutletVelocity; + phi phi; + tangentialVelocity uniform (0 0 0); + value uniform 0; + } + \endverbatim + + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): derive from the flux in the patch-normal + direction SourceFiles pressureInletOutletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureInletOutletVelocityFvPatchVectorField_H @@ -47,7 +79,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureInletOutletVelocityFvPatch Declaration + Class pressureInletOutletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureInletOutletVelocityFvPatchVectorField @@ -56,6 +88,7 @@ class pressureInletOutletVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; //- Optional tangential velocity component diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H index 69c1d54c56..255eadc07b 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletUniformVelocity/pressureInletUniformVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,17 +21,34 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureInletUniformVelocityFvPatchVectorField Description - Velocity inlet boundary condition for patches where the pressure is - specified. The uniform inflow velocity is obtained by averaging the flux - over the patch and apply it in the direction normal to the patch faces. + This velocity inlet boundary condition is applied to patches where the + pressure is specified. The uniform inflow velocity is obtained by + averaging the flux over the patch, and then applying it in the direction + normal to the patch faces. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureInletUniformVelocity; + value uniform 0; + } + \endverbatim SourceFiles pressureInletUniformVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureInletUniformVelocityFvPatchVectorField_H @@ -45,7 +62,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureInletUniformVelocityFvPatch Declaration + Class pressureInletUniformVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureInletUniformVelocityFvPatchVectorField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H index c50d53d590..1afb6a95c5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureInletVelocity/pressureInletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,18 +21,43 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureInletVelocityFvPatchVectorField Description - Velocity inlet boundary condition for patches where the pressure is - specified. The inflow velocity is obtained from the flux with a direction - normal to the patch faces. If reverse flow is possible or expected use - the "pressureInletOutletVelocityFvPatchVectorField" BC instead. + This velocity inlet boundary condition is applied to patches where the + pressure is specified. The inflow velocity is obtained from the flux with + a direction normal to the patch faces. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureInletVelocity; + phi phi; + rho rho; + value uniform 0; + } + \endverbatim + + \note + If reverse flow is possible or expected use + the pressureInletOutletVelocityFvPatchVectorField condition instead. + +SeeAlso + Foam::fixedValueFvPatchField + Foam::pressureInletOutletVelocityFvPatchVectorField SourceFiles pressureInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureInletVelocityFvPatchVectorField_H @@ -47,7 +72,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureInletVelocityFvPatch Declaration + Class pressureInletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureInletVelocityFvPatchVectorField @@ -56,7 +81,10 @@ class pressureInletVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; + + //- Density field name word rhoName_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H index 04351a477a..7e9c0c63b8 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/pressureNormalInletOutletVelocity/pressureNormalInletOutletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,18 +21,51 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::pressureNormalInletOutletVelocityFvPatchVectorField Description - Velocity inlet/outlet boundary condition for patches where the pressure is - specified. zero-gradient is applied for outflow (as defined by the flux) - and for inflow the velocity is obtained from the flux with a direction - normal to the patch faces. + This velocity inlet/outlet boundary condition is applied to patches where + the pressure is specified. A zero-gradient condition is applied for + outflow (as defined by the flux); for inflow, the velocity is obtained from + the flux with a direction normal to the patch faces. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type pressureNormalInletOutletVelocity; + phi phi; + rho rho; + value uniform 0; + } + \endverbatim + + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): derive from the flux and patch-normal + direction + +SeeAlso + Foam::mixedFvPatchVectorField SourceFiles pressureNormalInletOutletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef pressureNormalInletOutletVelocityFvPatchVectorField_H @@ -47,7 +80,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class pressureNormalInletOutletVelocityFvPatch Declaration + Class pressureNormalInletOutletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class pressureNormalInletOutletVelocityFvPatchVectorField @@ -56,7 +89,10 @@ class pressureNormalInletOutletVelocityFvPatchVectorField { // Private data + //- Flux field name word phiName_; + + //- Density field name word rhoName_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H index 0635857518..39288045ea 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingPressureInletOutletVelocity/rotatingPressureInletOutletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,18 +21,55 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::rotatingPressureInletOutletVelocityFvPatchVectorField Description - Velocity inlet/outlet boundary condition in a rotating frame - for patches where the pressure is specified. zero-gradient is applied for - outflow (as defined by the flux) and for inflow the velocity is obtained + This velocity inlet/outlet boundary condition is applied to patches in a + rotating frame where the pressure is specified. A zero-gradient is applied + for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces. + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + tangentialVelocity | tangential velocity field | no | + omega | angular velocty of the frame [rad/s] | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type rotatingPressureInletOutletVelocity; + phi phi; + tangentialVelocity uniform (0 0 0); + omega 100; + } + \endverbatim + + The \c omega entry is a DataEntry type, able to describe time varying + functions. + + \note + Sign conventions: + - positive flux (out of domain): apply zero-gradient condition + - negative flux (into of domain): derive from the flux in the patch-normal + direction + +SeeAlso + Foam::pressureInletOutletVelocityFvPatchVectorField + SourceFiles rotatingPressureInletOutletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef rotatingPressureInletOutletVelocityFvPatchVectorField_H @@ -48,7 +85,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class rotatingPressureInletOutletVelocityFvPatch Declaration + Class rotatingPressureInletOutletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class rotatingPressureInletOutletVelocityFvPatchVectorField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H index 68e1d19c8f..eb1dbbfa8c 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingTotalPressure/rotatingTotalPressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,55 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::rotatingTotalPressureFvPatchScalarField Description - Foam::rotatingTotalPressureFvPatchScalarField + This boundary condition provides a total pressure condition for patches + in a rotating frame. + + /heading Patch usage + + /table + Property | Description | Required | Default value + U | velocity field name | no | U + phi | flux field name | no | phi + rho | density field name | no | rho + psi | compressibility field name | no | psi + gamma | ratio of specific heats (Cp/Cv) | yes | + p0 | static pressure reference | yes | + omega | angular velocty of the frame [rad/s] | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type rotatingTotalPressure; + U U; + phi phi; + rho rho; + psi psi; + gamma 1.4; + p0 uniform 1e5; + omega 100; + } + \endverbatim + + The \c omega entry is a DataEntry type, able to describe time varying + functions. + +SeeAlso + Foam::totalPressureFvPatchScalarField SourceFiles rotatingTotalPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef rotatingTotalPressureFvPatchScalarField_H @@ -44,7 +84,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class rotatingTotalPressureFvPatch Declaration + Class rotatingTotalPressureFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class rotatingTotalPressureFvPatchScalarField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H index 41f821c6d8..957089b6e3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/rotatingWallVelocity/rotatingWallVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,47 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::rotatingWallVelocityFvPatchVectorField Description - Foam::rotatingWallVelocityFvPatchVectorField + This boundary condition provides a rotational velocity condition. + + /heading Patch usage + + /table + Property | Description | Required | Default value + origin | origin of rotation in Cartesian co-ordinates | yes| + axis | axis of rotation | yes | + omega | angular velocty of the frame [rad/s] | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type rotatingWallVelocity; + origin (0 0 0); + axis (0 0 1); + omega 100; + } + \endverbatim + + The \c omega entry is a DataEntry type, able to describe time varying + functions. + +SeeAlso + Foam::DataEntry + Foam::fixedValueFvPatchField SourceFiles rotatingWallVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef rotatingWallVelocityFvPatchVectorField_H @@ -44,7 +76,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class rotatingWallVelocityFvPatch Declaration + Class rotatingWallVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class rotatingWallVelocityFvPatchVectorField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H index 19e740ad8d..5c4ac4e0b8 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/slip/slipFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,30 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::slipFvPatchField Description - Foam::slipFvPatchField + This boundary condition provides a slip constraint. + + /heading Patch usage + + Example of the boundary condition specification: + \verbatim + myPatch + { + type slip; + } + \endverbatim SourceFiles slipFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef slipFvPatchField_H @@ -43,7 +58,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class slipFvPatch Declaration + Class slipFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H index 2115ac392d..f47b3a4978 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/supersonicFreestream/supersonicFreestreamFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,25 +21,52 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::supersonicFreestreamFvPatchVectorField Description - Supersonic free stream condition. + This boundary condition provides a supersonic free-stream condition. - Supersonic outflow is vented according to ??? + - supersonic outflow is vented according to ??? + - supersonic inflow is assumed to occur according to the Prandtl-Meyer + expansion process. + - subsonic outflow is applied via a zero-gradient condition from inside + the domain. - Supersonic inflow is assumed to occur according to the Prandtl-Meyer - expansion process. + /heading Patch usage - Subsonic outflow is zero-gradiented from inside the domain. + /table + Property | Description | Required | Default value + UInf | free-stream velocity | yes | + pInf | free-stream pressure | yes | + TInf | free-stream temperature | yes | + gamma | heat capacity ratio (cp/Cv) | yes | + /endtable - N.B. This boundary condition is ill-posed if the free-stream flow is - normal to the boundary. + Example of the boundary condition specification: + \verbatim + myPatch + { + type supersonicFreestream; + UInf 500; + pInf 1e4; + TInf 265; + gamma 1.4; + } + \endverbatim + + \note + This boundary condition is ill-posed if the free-stream flow is normal + to the boundary. SourceFiles supersonicFreestreamFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef supersonicFreestreamFvPatchVectorFields_H @@ -54,7 +81,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class supersonicFreestreamFvPatch Declaration + Class supersonicFreestreamFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class supersonicFreestreamFvPatchVectorField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H index 465d875c68..4926c0627a 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/surfaceNormalFixedValue/surfaceNormalFixedValueFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,16 +21,44 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::surfaceNormalFixedValueFvPatchVectorField Description - Describes a surface normal vector boundary condition by its magnitude. - Note: The value is positive for outward-pointing vectors + This boundary condition provides a surface-normal vector boundary condition + by its magnitude. + + /heading Patch usage + + /table + Property | Description | Required | Default value + refValue | reference value | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type inletOutlet; + refValue -10; // 10 INTO the domain + } + \endverbatim + + \note + Sign conventions: + - the value is positive for outward-pointing vectors + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles surfaceNormalFixedValueFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef surfaceNormalFixedValueFvPatchVectorField_H @@ -45,7 +73,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class surfaceNormalFixedValueFvPatch Declaration + Class surfaceNormalFixedValueFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class surfaceNormalFixedValueFvPatchVectorField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H index ef2ea8b9c9..faa11fa621 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/swirlFlowRateInletVelocity/swirlFlowRateInletVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,39 +21,56 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::swirlFlowRateInletVelocityFvPatchVectorField Description - Describes a volumetric/mass flow normal vector boundary condition by its - magnitude as an integral over its area with a swirl component determined - by the RPM + This boundary condition provides a volumetric- OR mass-flow normal vector + boundary condition by its magnitude as an integral over its area with a + swirl component determined by the angular speed, given in revolutions per + minute (RPM) The basis of the patch (volumetric or mass) is determined by the - dimensions of the flux, phi. - The current density is used to correct the velocity when applying the - mass basis. + dimensions of the flux, phi. The current density is used to correct the + velocity when applying the mass basis. + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + flowRate | flow rate profile | yes | + rpm | rotational speed profile | yes | + /endtable Example of the boundary condition specification: \verbatim - inlet + myPatch { type swirlFlowRateInletVelocity; - flowRate constant 0.2; // Vol/mass flow rate [m3/s or kg/s] + flowRate constant 0.2; rpm constant 100; } \endverbatim - The flowRate and rpm entries are DataEntry types, able to describe time - varying functions. The example above gives the usage for supplying - constant values. + \note + - the \c flowRate and \c rpm entries are DataEntry types, able to describe + time varying functions. The example above gives the usage for supplying + constant values. + - the value is positive into the domain -Note - - The value is positive inwards +SeeAlso + Foam::fixedValueFvPatchField SourceFiles swirlFlowRateInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef swirlFlowRateInletVelocityFvPatchVectorField_H @@ -67,7 +84,7 @@ SourceFiles namespace Foam { /*---------------------------------------------------------------------------*\ - Class swirlFlowRateInletVelocityFvPatchVectorField Declaration + Class swirlFlowRateInletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class swirlFlowRateInletVelocityFvPatchVectorField @@ -85,7 +102,7 @@ class swirlFlowRateInletVelocityFvPatchVectorField //- Inlet integral flow rate autoPtr > flowRate_; - //- RPM + //- Angular speed in revolutions per minute (RPM) autoPtr > rpm_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H index aa2bec48af..8399a0cf69 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/syringePressure/syringePressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,12 +21,15 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::syringePressureFvPatchScalarField Description - Pressure boundary condition obtained from a 0-D model of the cylinder - of a syringe. + This boundary condition provides a pressure condition, obtained from a + zero-D model of the cylinder of a syringe. The syringe cylinder is defined by its initial volume, piston area and velocity profile specified by regions of constant acceleration, speed @@ -34,28 +37,49 @@ Description pressure and compressibility which is assumed constant, i.e. isothermal expansion/compression. + /heading Patch usage + + /table + Property | Description | Required | Default value + Ap | syringe piston area | yes | + Sp | syringe piston speed | yes | + VsI | initial syringe volume | yes | + tas | start of piston acceleration | yes | + tae | end of piston acceleration | yes | + tds | start of piston deceleration | yes | + tde | end of piston deceleration | yes | + psI | initial syringe pressure | yes | + psi | gas compressibility | yes | + ams | added (or removed) gas mass | yes | + /endtable + Example of the BC specification: \verbatim - outlet - { - type syringePressure; - Ap 1.388e-6; // syringe piston area - Sp 0.01; // syringe piston speed - VsI 1.388e-8; // Initial syringe volume - tas 0.001; // Start of piston acceleration - tae 0.002; // End of piston acceleration - tds 0.005; // Start of piston deceleration - tde 0.006; // end of piston deceleration - psI 1e5; // Initial syringe pressure - psi 1e-5; // Gas compressibility - ams 0; // Added (or removed) gas mass - // Initially 0 but used for restarting. - } + myPatch + { + type syringePressure; + Ap 1.388e-6; // syringe piston area + Sp 0.01; // syringe piston speed + VsI 1.388e-8; // Initial syringe volume + tas 0.001; // Start of piston acceleration + tae 0.002; // End of piston acceleration + tds 0.005; // Start of piston deceleration + tde 0.006; // end of piston deceleration + psI 1e5; // Initial syringe pressure + psi 1e-5; // Gas compressibility + ams 0; // Added (or removed) gas mass + value uniform 0 // Initially 0 but used for restarting + } \endverbatim +SeeAlso + Foam::fixedValueFvPatchField + SourceFiles syringePressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef syringePressureFvPatchScalarField_H @@ -69,7 +93,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class syringePressureFvPatch Declaration + Class syringePressureFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class syringePressureFvPatchScalarField @@ -115,7 +139,9 @@ class syringePressureFvPatchScalarField label curTimeIndex_; - //- return the volume of the syringe at time t + // Private Functions + + //- Return the volume of the syringe at time t scalar Vs(const scalar t) const; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H index 55364eac5d..f4c97575d3 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H @@ -21,22 +21,52 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::temperatureJumpFvPatchScalarField Description - Introduce a jump in temperature on a cycle patch - front + This boundary condition provides a temperature jump condition across a + coupled pair of cyclic patches. + + The jump is specified as a \c DataEntry type, to enable the use of, e.g. + contant, polynomial, table values. + + /heading Patch usage + + /table + Property | Description | Required | Default value + patchType | underlying patch type should be \c cyclic| yes | + jump | current jump value | yes | + jumpTable | jump data, e.g. \c csvFile | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch { type temperatureJump; patchType cyclic; jumpTable constant 100; value uniform 300; } + \endverbatim + + The above example shows the use of a constant jump condition. + + \note + The underlying \c patchType should be set to \c cyclic + +SeeAlso + Foam::fixedJumpFvPatchField SourceFiles temperatureJumpFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef temperatureJumpFvPatchScalarField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H index 82525ec49a..0d675c0fe5 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.H @@ -21,44 +21,56 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::timeVaryingMappedFixedValueFvPatchField Description - Foam::timeVaryingMappedFixedValueFvPatchField + This boundary conditions interpolates the values from a set of supplied + points in space and time. Supplied data should be specified in + constant/boundaryData/ where: + - points : pointField with locations + - ddd : supplied values at time ddd + The points should be more or less on a plane since they get triangulated + in 2-D. - Interpolates from a set of supplied points in space and time. Supplied - data in constant/boundaryData/: - - points : pointField with locations - - ddd : supplied values at time ddd - Points need to be more or less on a plane since get triangulated in 2D. + At startup, this condition generates the triangulation and performs a + linear interpolation (triangle it is in and weights to the 3 vertices) + for every face centre. - At startup this bc does the triangulation and determines linear - interpolation (triangle it is in and weights to the 3 vertices) - for every face centre. Interpolates linearly inbetween times. + Values are interpolated linearly between times. - @verbatim - inlet - { - type timeVaryingMappedFixedValue; + /heading Patch usage - // Maintain average to that of the supplied values - setAverage false; + /table + Property | Description | Required | Default value + setAverage | flag to activate setting of average value | yes | + perturb | perturb points for regular geometries | no | 1e-5 + fieldTableName | alternative field name to sample | no| this field name + /endtable - // Optional: change perturbation (default 1e-5) to avoid any ties - // in triangulating regular geometries. - //perturb 0.0; - - // Optional: use name instead of patchname for location of data - //fieldTableName samples; - } - @endverbatim + /verbatim + myPatch + { + type timeVaryingMappedFixedValue; + setAverage false; + //perturb 0.0; + //fieldTableName samples; + } + /endverbatim + \note Switch on debug flag to have it dump the triangulation (in transformed space) and transform face centres. +SeeAlso + Foam::fixedValueFvPatchField + SourceFiles timeVaryingMappedFixedValueFvPatchField.C +@} \*---------------------------------------------------------------------------*/ @@ -76,7 +88,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class timeVaryingMappedFixedValueFvPatch Declaration + Class timeVaryingMappedFixedValueFvPatchField Declaration \*---------------------------------------------------------------------------*/ template @@ -119,6 +131,7 @@ class timeVaryingMappedFixedValueFvPatchField //- If setAverage: end average value Type endAverage_; + public: //- Runtime type information diff --git a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H index c95f15771c..715cf3dc75 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/totalPressure/totalPressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,14 +21,108 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::totalPressureFvPatchScalarField Description - Foam::totalPressureFvPatchScalarField + This boundary condition provides a total pressure condition. Four + variants are possible: + + - incompressible subsonic: + \f[ + p_T = p_0 + 0.5*|U|^2 + \f] + where + /vartable + p_T | incompressible total pressure [m2/s2] + p_0 | incompressible reference pressure [m2/s2] + U | velocity + /endvartable + + - compressible subsonic: + \f[ + p_T = p_0 + 0.5*\rho*|U|^2 + \f] + where + /vartable + p_T | total pressure [Pa] + p_0 | reference pressure [Pa] + \rho | density [kg/m3] + U | velocity + /endvartable + + - compressible supersonic (\gamma > 1): + \f[ + p_T = \frac{p_0}{(1 + 0.5*\psi*G)^{\frac{1}{G}}} + \f] + where + /vartable + p_T | total pressure [Pa] + p_0 | reference pressure [Pa] + \psi | compressibility [m2/s2] + G | coefficient given by \f$\frac{\gamma}{1-\gamma}\f$ + /endvartable + + - compressible transonic (\gamma <= 1): + \f[ + p_T = \frac{p_0}{1 + 0.5*\psi*|U|^2} + \f] + where + /vartable + p_T | total pressure [Pa] + p_0 | reference pressure [Pa] + G | coefficient given by \f$\frac{\gamma}{1-\gamma}\f$ + /endvartable + + The modes of operation are set via the combination of \c phi, \c rho, and + \c psi entries: + /table + Mode | phi | rho | psi + incompressible subsonic | phi | none | none + compressible subsonic | phi | rho | none + compressible transonic | phi | none | psi + compressible supersonic | phi | none | psi + /endtable + + + /heading Patch usage + + /table + Property | Description | Required | Default value + U | velocity field name | no | U + phi | flux field name | no | phi + rho | density field name | no | none + psi | compressibility field name | no | none + gamma | ratio of specific heats (Cp/Cv) | yes | + p0 | static pressure reference | yes | + /endtable + + \note + The default boundary behaviour is for subsonic, incompressible flow. + + Example of the boundary condition specification: + \verbatim + myPatch + { + type totalPressure; + U U; + phi phi; + rho none; + psi none; + gamma 1.4; + p0 uniform 1e5; + } + \endverbatim + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles totalPressureFvPatchScalarField.C +@} \*---------------------------------------------------------------------------*/ @@ -43,7 +137,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class totalPressureFvPatch Declaration + Class totalPressureFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class totalPressureFvPatchScalarField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H index e19d1265e7..d63ca5e606 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/translatingWallVelocity/translatingWallVelocityFvPatchVectorField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,41 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::translatingWallVelocityFvPatchVectorField Description - Foam::translatingWallVelocityFvPatchVectorField + This boundary condition provides a velocity condition for translational + motion on walls. + + /heading Patch usage + + /table + Property | Description | Required | Default value + U | translational velocity | yes| + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type rotatingWallVelocity; + U (100 0 0); + } + \endverbatim + + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles translatingWallVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef translatingWallVelocityFvPatchVectorField_H @@ -43,7 +69,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class translatingWallVelocityFvPatchField Declaration + Class translatingWallVelocityFvPatchField Declaration \*---------------------------------------------------------------------------*/ class translatingWallVelocityFvPatchVectorField @@ -52,7 +78,7 @@ class translatingWallVelocityFvPatchVectorField { // Private data - //- Origin of the rotation + //- Translational velocity vector U_; @@ -124,7 +150,6 @@ public: } - // Member functions // Access functions diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H index a7b3272c13..5ab4c643b1 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentInlet/turbulentInletFvPatchField.H @@ -21,25 +21,59 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::turbulentInletFvPatchField Description - Generate a fluctuating inlet condition by adding a random component - to a reference (mean) field. - Input: - referenceField - Mean field. - fluctuationScale - RMS fluctuation, provided as the fraction of the mean field. - alpha - temporal correlation factor; - the fraction of the new random component added to the previous - time-step (defaults to 0.1). + This boundary condition generates a fluctuating inlet condition by adding + a random component to a reference (mean) field. + + \f[ + x_p = (1 - \alpha)*x_p^{n-1} + \alpha*(x_{ref}+C_{RMS}*s*x_{ref}) + \f] + + where + + /vartable + x_p | patch values + x_{ref} | refernce patch values + n | time level + \alpha | fraction of new random component added to previous time value + C_{RMS} | RMS coefficient + s | fluctuation scale + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + fluctuationScale | RMS fluctuation scale (fraction of mean) | yes | + referenceField | reference (mean) field | yes | + alpha | fraction of new random component added to previous| no| 0.1 + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type turbulentInlet; + fluctuationScale 0.1; + referenceField uniform 10; + alpha 0.1; + } + \endverbatim + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles turbulentInletFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef turbulentInletFvPatchField_H @@ -54,7 +88,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class turbulentInletFvPatch Declaration + Class turbulentInletFvPatchField Declaration \*---------------------------------------------------------------------------*/ template @@ -64,10 +98,19 @@ class turbulentInletFvPatchField { // Private data + //- Random number generator Random ranGen_; + + //- Fluctuation scake Type fluctuationScale_; + + //- Reference field Field referenceField_; + + //- Fraction of RMS component to apply to last time step values scalar alpha_; + + //- Current time index (used for updating) label curTimeIndex_; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.C index 7d650f6eb7..cb3395f0a6 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -40,8 +40,8 @@ turbulentIntensityKineticEnergyInletFvPatchScalarField : inletOutletFvPatchScalarField(p, iF), intensity_(0.0), - UName_("undefined-U"), - phiName_("undefined-phi") + UName_("U"), + phiName_("phi") { this->refValue() = 0.0; this->refGrad() = 0.0; @@ -82,12 +82,15 @@ turbulentIntensityKineticEnergyInletFvPatchScalarField ( "turbulentIntensityKineticEnergyInletFvPatchScalarField::" "turbulentIntensityKineticEnergyInletFvPatchScalarField" - "(const fvPatch& p, const DimensionedField& iF, " - "const dictionary& dict)" + "(" + "const fvPatch&, " + "const DimensionedField&, " + "const dictionary& + ")" ) << "Turbulence intensity should be specified as a fraction 0-1 " "of the mean velocity\n" - " value given is " << intensity_ - << "\n on patch " << this->patch().name() + " value given is " << intensity_ << nl + << " on patch " << this->patch().name() << " of field " << this->dimensionedInternalField().name() << " in file " << this->dimensionedInternalField().objectPath() << exit(FatalError); @@ -157,8 +160,8 @@ void Foam::turbulentIntensityKineticEnergyInletFvPatchScalarField::write { fvPatchScalarField::write(os); os.writeKeyword("intensity") << intensity_ << token::END_STATEMENT << nl; - os.writeKeyword("U") << UName_ << token::END_STATEMENT << nl; - os.writeKeyword("phi") << phiName_ << token::END_STATEMENT << nl; + writeEntryIfDifferent(os, "U", "U", UName_); + writeEntryIfDifferent(os, "phi", "phi", phiName_); writeEntry("value", os); } diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H index 1663364d10..ce41bf5972 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentIntensityKineticEnergyInlet/turbulentIntensityKineticEnergyInletFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,26 +21,58 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::turbulentIntensityKineticEnergyInletFvPatchScalarField Description - Calculate turbulent kinetic energy from the intensity provided as a - fraction of the mean velocity + This boundary condition provides a turbulent kinetic energy condition, + based on user-supplied turbulence intensity, defined as a fraction of the + mean velocity: + + \f[ + k_p = 1.5*(I)*|U|^2 + \f] + + where + + /vartable + k_p | kinetic energy at the patch + I | turbulence intensity + U | velocity field + /endvartable + + In the event of reverse flow, a zero-gradient condition is applied. + + /heading Patch usage + + /table + Property | Description | Required | Default value + intensity | fraction of mean field [0-1] | yes | + U | velocity field name | no | U + phi | flux field name | no | phi + /endtable Example of the boundary condition specification: \verbatim - inlet - { - type turbulentIntensityKineticEnergyInlet; - intensity 0.05; // 5% turbulence - value uniform 1; // placeholder - } + myPatch + { + type turbulentIntensityKineticEnergyInlet; + intensity 0.05; // 5% turbulence + value uniform 1; // placeholder + } \endverbatim +SeeAlso + Foam::inletOutletFvPatchField + SourceFiles turbulentIntensityKineticEnergyInletFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef turbulentIntensityKineticEnergyInletFvPatchScalarField_H @@ -54,7 +86,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class turbulentIntensityKineticEnergyInletFvPatch Declaration + Class turbulentIntensityKineticEnergyInletFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class turbulentIntensityKineticEnergyInletFvPatchScalarField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H index b199d3e8eb..6fb33ef149 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformDensityHydrostaticPressure/uniformDensityHydrostaticPressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,19 +21,55 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::uniformDensityHydrostaticPressureFvPatchScalarField Description - Hydrostatic pressure boundary condition calculated as + This boundary condition provides a hydrostatic pressure condition, + calculated as: - pRefValue + rho*g.(x - pRefPoint) + \f[ + p_{hyd} = p_{ref} + \rho*g.(x - x_{ref}) + \f] - where rho is provided and assumed uniform. + where + /vartable + p_{hyd} | hyrostatic pressure [Pa] + p_{ref} | reference pressure [Pa] + x_{ref} | reference point in Cartesian co-ordinates + \rho | density (assumed uniform) + g | acceleration due to gravity [m/s2] + /endtable + + /heading Patch usage + + /table + Property | Description | Required | Default value + rho | uniform density [kg/m3] | yes | + pRefValue | reference pressure [Pa] | yes | + pRefPoint | reference pressure location | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type uniformDensityHydrostaticPressure; + rho rho; + pRefValue 1e5; + pRefPoint (0 0 0); + value uniform 0; // optional initial value + } + \endverbatim SourceFiles uniformDensityHydrostaticPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef uniformDensityHydrostaticPressureFvPatchScalarField_H @@ -47,7 +83,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class uniformDensityHydrostaticPressureFvPatch Declaration + Class uniformDensityHydrostaticPressureFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class uniformDensityHydrostaticPressureFvPatchScalarField diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H index cd6445babf..593d007dda 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformFixedValue/uniformFixedValueFvPatchField.H @@ -21,29 +21,45 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::uniformFixedValueFvPatchField Description - Enables the specification of a uniform fixed value boundary condition. + This boundary condition provides a uniform fixed value condition. + + /heading Patch usage + + /table + Property | Description | Required | Default value + uniformValue | uniform value | yes | + /endtable Example of the boundary condition specification: \verbatim - inlet + myPatch { type uniformFixedValue; uniformValue constant 0.2; } \endverbatim + \note The uniformValue entry is a DataEntry type, able to describe time varying functions. The example above gives the usage for supplying a constant value. +SeeAlso + Foam::DataEntry + Foam::fixedValueFvPatchField SourceFiles uniformFixedValueFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef uniformFixedValueFvPatchField_H @@ -58,7 +74,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class uniformFixedValueFvPatch Declaration + Class uniformFixedValueFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H index aa77ffe2ca..7a42d5d42f 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/uniformTotalPressure/uniformTotalPressureFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,20 +21,61 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::uniformTotalPressureFvPatchScalarField Description - A time-varying form of a uniform total pressure boundary condition. The - variation is specified as an DataEntry (see Foam::DataEntry). + This boundary condition provides a time-varying form of the uniform total + pressure boundary condition. -See Also - Foam::uniformFixedValueFvPatchField.H - and Foam::totalPressureFvPatchScalarField.H + /heading Patch usage + + /table + Property | Description | Required | Default value + U | velocity field name | no | U + phi | flux field name | no | phi + rho | density field name | no | none + psi | compressibility field name | no | none + gamma | ratio of specific heats (Cp/Cv) | yes | + p0 | static pressure reference | yes | + pressure | total pressure as a function of time | yes | + /endtable + + \note + The default boundary behaviour is for subsonic, incompressible flow. + + Example of the boundary condition specification: + \verbatim + myPatch + { + type uniformTotalPressure; + U U; + phi phi; + rho rho; + psi psi; + gamma 1.4; + p0 uniform 1e5; + pressure uniform 0.0; + } + \endverbatim + + + The \c pressure entry is specified as a DataEntry type, able to describe + time varying functions. + +SeeAlso + Foam::DataEntry + Foam::uniformFixedValueFvPatchField + Foam::totalPressureFvPatchField SourceFiles uniformTotalPressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef uniformTotalPressureFvPatchScalarField_H @@ -75,7 +116,7 @@ class uniformTotalPressureFvPatchScalarField //- Heat capacity ratio scalar gamma_; - //- Total pressure + //- Static pressure reference scalar p0_; //- Table of time vs total pressure, including the bounding treatment diff --git a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H index 51e8c87899..dbbe27dec8 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRate/variableHeightFlowRateFvPatchField.H @@ -21,32 +21,51 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::variableHeightFlowRateFvPatchScalarField Description - This boundary condition uses zeroGradient within a specified range of - values for phase fraction alpha. The range is defined within the - boundary condition by the lowerBound and upperBound. + This boundary condition provides a phase fraction condition based on the + local flow conditions, whereby the values are constrained to lay between + user-specified upper and lower bounds. The behaviour is described by: - alpha > upperBound: fixedValue with uniform value of upperBound - lowerBound <= alpha <= upperBound: zeroGradient - alpha < lowerBound: fixedValue with uniform value of lowerBound + if alpha > upperBound: + - apply a fixed value condition, with a uniform level of the upper bound - Example: + if lower bound <= alpha <= upper bound: + - apply a zero-gradient condition + + if alpha < lowerBound: + - apply a fixed value condition, with a uniform level of the lower bound + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + lowerBound | lower bound for clipping | yes | + upperBound | upper bound for clipping | yes | + /endtable + + Example of the boundary condition specification: \verbatim - inlet - { - type clippedZeroGradient; - lowerBound 0.0; - upperBound 0.9; - value uniform 0; - } + myPatch + { + type variableHeightFlowRate; + lowerBound 0.0; + upperBound 0.9; + value uniform 0; + } \verbatim SourceFiles variableHeightFlowRateFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef variableHeightFlowRateFvPatchScalarField_H @@ -60,7 +79,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class variableHeightFlowRateFvPatchScalar Declaration + Class variableHeightFlowRateFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ class variableHeightFlowRateFvPatchScalarField @@ -81,6 +100,7 @@ protected: //- Upper bound for alpha1 scalar upperBound_; + public: //- Runtime scalar information @@ -156,10 +176,6 @@ public: //- Write virtual void write(Ostream&) const; - - - // Member operators - }; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.C index b33bbc65f1..9b0a6694e7 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.C @@ -121,8 +121,10 @@ void Foam::variableHeightFlowRateInletVelocityFvPatchVectorField } -void Foam::variableHeightFlowRateInletVelocityFvPatchVectorField -::write(Ostream& os) const +void Foam::variableHeightFlowRateInletVelocityFvPatchVectorField::write +( + Ostream& os +) const { fvPatchField::write(os); diff --git a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H index d1bc1ac62f..ddac63287e 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.H @@ -22,39 +22,50 @@ License along with OpenFOAM; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +\addtogroup boundaryConditions +@{ + Class Foam::variableHeightFlowRateInletVelocityFvPatchVectorField Description - Describes a volumetric/mass flow normal vector boundary condition by its - magnitude as an integral over its area. + This boundary condition provides a velocity boundary condition for + multphase flow based on a user-specified volumetric flow rate. - The basis of the patch (volumetric or mass) is determined by the - dimensions of the flux, phi. - The current density is used to correct the velocity when applying the - mass basis. + The flow rate is made proportional to the phase fraction alpha at each + face of the patch and alpha is ensured to be bound between 0 and 1. - The flow rate is made proportional to the phase fraction alpha at each face - of the patch and alpha is ensured to be bound between 0 and 1. + /heading Patch usage + + /table + Property | Description | Required | Default value + flowRate | volumetric flow rate [m3/s] | yes | + /endtable Example of the boundary condition specification: \verbatim - inlet + myPatch { type variableHeightFlowRateInletVelocity; - flowRate 0.2; // Volumetric/mass flow rate [m3/s or kg/s] + flowRate 0.2; value uniform (0 0 0); // placeholder } \endverbatim -Note - - The value is positive inwards - - May not work correctly for transonic inlets - - Strange behaviour with potentialFoam since the U equation is not solved + \note + - the value is positive into the domain + - may not work correctly for transonic inlets + - strange behaviour with potentialFoam since the momentum equation is + not solved + +SeeAlso + Foam::fixedValueFvPatchField SourceFiles variableHeightFlowRateInletVelocityFvPatchVectorField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef variableHeightFlowRateInletVelocityFvPatchVectorField_H @@ -67,7 +78,7 @@ SourceFiles namespace Foam { /*---------------------------------------------------------------------------*\ - Class variableHeightFlowRateInletVelocityFvPatch Declaration + Class variableHeightFlowRateInletVelocityFvPatchVectorField Declaration \*---------------------------------------------------------------------------*/ class variableHeightFlowRateInletVelocityFvPatchVectorField @@ -79,6 +90,7 @@ class variableHeightFlowRateInletVelocityFvPatchVectorField //- Inlet integral flow rate scalar flowRate_; + public: //- Runtime type information @@ -174,7 +186,6 @@ public: //- Write virtual void write(Ostream&) const; - }; diff --git a/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H index 567b17dde7..eca1439431 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/waveSurfacePressure/waveSurfacePressureFvPatchScalarField.H @@ -21,6 +21,9 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::waveSurfacePressureFvPatchScalarField @@ -29,34 +32,50 @@ Description the hydrostatic pressure based on a given displacement: \f[ - p = -rho*g*zeta + p = -\rho*g*\zeta \f] - where - \var g = acceleration due to gravity [m/s2] - \var zeta = wave amplitude [m] + /vartable + \rho | density [kg/m3] + g | acceleration due to gravity [m/s2] + \zeta | wave amplitude [m] + /endvartable The wave amplitude is updated as part of the calculation, derived from the local volumetric flux. + + /heading Patch usage + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + zeta | wave amplitude field name | no | zeta + /endtable + Example of the boundary condition specification: \verbatim - myPatch - { - type waveSurfacePressure; - phi phi; // name of flux field (default = phi) - rho rho; // name of density field (default = rho) - zeta zeta; // name amplitude field (default = zeta) - value uniform 0; // place holder - } + myPatch + { + type waveSurfacePressure; + phi phi; + rho rho; + zeta zeta; + value uniform 0; // place holder + } \endverbatim The density field is only required if the flux is mass-based as opposed to volumetric-based. +SeeAlso + Foam::fixedValueFvPatchField + SourceFiles waveSurfacePressureFvPatchScalarField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef waveSurfacePressureFvPatchScalarField_H diff --git a/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H index 6cd00aac55..2325e383fd 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/waveTransmissive/waveTransmissiveFvPatchField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -21,15 +21,61 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\addtogroup boundaryConditions +@{ + Class Foam::waveTransmissiveFvPatchField Description - Foam::waveTransmissiveFvPatchField + This boundary condition provides a wave transmissive outflow condition, + based onsolving DDt(psi, U) = 0 at the boundary. + + The wave speed is calculated using: + + \f[ + x_p = \frac{\phi_p}{|Sf|} + \sqrt{\frac{\gamma}{\psi_p}} + \f] + + where + + /vartable + x_p | patch values + \phi_p | patch face flux + \psi_p | patch compressibility + Sf | patch face area vector + \gamma | ratio of specific heats + /endvartable + + /heading Patch usage + + /table + Property | Description | Required | Default value + phi | flux field name | no | phi + rho | density field name | no | rho + psi | compressibility field name | no | psi + gamma | ratio of specific heats (Cp/Cv) | yes | + /endtable + + Example of the boundary condition specification: + \verbatim + myPatch + { + type waveTransmissive; + phi phi; + psi psi; + gamma 1.4; + } + \endverbatim + +SeeAlso + Foam::advectiveFvPatchField SourceFiles waveTransmissiveFvPatchField.C +@} + \*---------------------------------------------------------------------------*/ #ifndef waveTransmissiveFvPatchField_H @@ -43,7 +89,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class waveTransmissiveFvPatch Declaration + Class waveTransmissiveFvPatchField Declaration \*---------------------------------------------------------------------------*/ template diff --git a/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H b/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H index 369246d3b0..ed9b605588 100644 --- a/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchField.H @@ -21,6 +21,11 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see . +\defgroup boundaryConditions Boundary Conditions +@{ + This group contains OpenFOAM boundary condition types +@} + Class Foam::fvPatchField