DOC: elaborate the usage of function objects

ENH: update libs of etc/caseDicts/postProcess items
  ENH: ensure destructor=default
  ENH: ensure constness
  ENH: ensure no 'copy construct' and 'no copy assignment' exist
  TUT: add examples of function objects with full set
       of settings into a TUT if unavailable
  TUT: update pisoFoam/RAS/cavity tutorial in terms of usage
This commit is contained in:
Kutalmis Bercin
2020-03-13 18:49:58 +00:00
committed by Andrew Heather
parent b549116588
commit a5c6516e23
264 changed files with 7120 additions and 2830 deletions

View File

@ -230,11 +230,11 @@ Foam::functionObjects::interfaceHeight::interfaceHeight
:
fvMeshFunctionObject(name, runTime, dict),
logFiles(obr_, name),
alphaName_("alpha"),
liquid_(true),
locations_(),
alphaName_("alpha"),
interpolationScheme_("cellPoint"),
direction_(vector::zero)
direction_(vector::zero),
locations_()
{
read(dict);
resetNames({"height", "position"});
@ -244,12 +244,6 @@ Foam::functionObjects::interfaceHeight::interfaceHeight
}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
Foam::functionObjects::interfaceHeight::~interfaceHeight()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
bool Foam::functionObjects::interfaceHeight::read(const dictionary& dict)

View File

@ -29,33 +29,71 @@ Class
Description
This function object reports the height of the interface above a set of
locations. For each location, it writes the vertical distance of the
locations.
For each location, it writes the vertical distance of the
interface above both the location and the lowest boundary. It also writes
the point on the interface from which these heights are computed. It uses
an integral approach, so if there are multiple interfaces above or below a
location then this method will generate average values.
Example of function object specification:
Operands:
\table
Operand | Type | Location
input | - | -
output file 1 | dat | $FOAM_CASE/postProcessing/\<FO\>/\<time\>/height
output file 2 | dat | $FOAM_CASE/postProcessing/\<FO\>/\<time\>/position
output field | - | -
\endtable
Usage
Minimal example by using \c system/controlDict.functions:
\verbatim
interfaceHeight1
{
type interfaceHeight;
libs (fieldFunctionObjects);
alpha alpha.water;
locations ((0 0 0) (10 0 0) (20 0 0));
// Mandatory entries (unmodifiable)
type interfaceHeight;
libs (fieldFunctionObjects);
// Mandatory entries (runtime modifiable)
locations ((0 0 0) (10 0 0) (20 0 0));
// Optional entries (runtime modifiable)
alpha alpha.water;
liquid true;
direction (1 0 0);
interpolationScheme cellPoint;
// Optional (inherited) entries
...
}
\endverbatim
Usage
where the entries mean:
\table
Property | Description | Required | Default value
type | type name | yes |
alpha | name of the alpha field | no | alpha
locations | list of locations to report the height at | yes |
liquid | is the alpha field that of the liquid | no | true
direction | direction of interface | no | g
Property | Description | Type | Req'd | Dflt
type | Type name: interfaceHeight | word | yes | -
libs | Library name: fieldFunctionObjects | word | yes | -
locations | Locations to report the height at | vectorList | yes | -
alpha | Name of alpha field | word | no | alpha
liquid | Flag if the alpha field that of the liquid | bool | no | true
direction | Direction of interface | vector | no | g
interpolationScheme | Interpolation scheme | word | no | cellPoint
\endtable
The inherited entries are elaborated in:
- \link functionObject.H \endlink
- \link writeFile.H \endlink
Usage by the \c postProcess utility is not available.
See also
- Foam::functionObject
- Foam::functionObjects::fvMeshFunctionObject
- Foam::functionObjects::writeFile
- Foam::functionObjects::logFile
- ExtendedCodeGuide::functionObjects::field::interfaceHeight
SourceFiles
interfaceHeight.C
@ -86,14 +124,11 @@ class interfaceHeight
{
// Private Data
//- Name of the alpha field
word alphaName_;
//- Is the alpha field that of the liquid under the wave?
bool liquid_;
//- List of locations to report the height at
List<point> locations_;
//- Name of the alpha field
word alphaName_;
//- Interpolation scheme
word interpolationScheme_;
@ -101,6 +136,9 @@ class interfaceHeight
//- Direction of interface motion
vector direction_;
//- List of locations to report the height at
List<point> locations_;
// Private Member Functions
@ -148,9 +186,15 @@ public:
const dictionary& dict
);
//- No copy construct
interfaceHeight(const interfaceHeight&) = delete;
//- No copy assignment
void operator=(const interfaceHeight&) = delete;
//- Destructor
virtual ~interfaceHeight();
virtual ~interfaceHeight() = default;
// Member Functions