diff --git a/src/functionObjects/field/pressure/pressure.C b/src/functionObjects/field/pressure/pressure.C index 29dd985f1eb714393879ffc6b34a7c0803660c3d..a9cddd414991635554d7210448bc45a3541b475d 100644 --- a/src/functionObjects/field/pressure/pressure.C +++ b/src/functionObjects/field/pressure/pressure.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2020 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -175,7 +175,8 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::rhoScale void Foam::functionObjects::pressure::addHydrostaticContribution ( - volScalarField& p + const volScalarField& p, + volScalarField& prgh ) const { // Add/subtract hydrostatic contribution @@ -206,12 +207,12 @@ void Foam::functionObjects::pressure::addHydrostaticContribution { case ADD: { - p += rgh; + prgh += rgh; break; } case SUBTRACT: { - p -= rgh; + prgh -= rgh; break; } default: @@ -243,7 +244,7 @@ Foam::tmp<Foam::volScalarField> Foam::functionObjects::pressure::calcPressure volScalarField& result = tresult.ref(); - addHydrostaticContribution(result); + addHydrostaticContribution(p, result); if (mode_ & STATIC) { diff --git a/src/functionObjects/field/pressure/pressure.H b/src/functionObjects/field/pressure/pressure.H index d9a3cf9ec9e5a0ffc4a1d869fbf1eeeffbcb697c..86a26bf2ce73e0200628b0ebd9cad2157af14ff1 100644 --- a/src/functionObjects/field/pressure/pressure.H +++ b/src/functionObjects/field/pressure/pressure.H @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2012-2016 OpenFOAM Foundation - Copyright (C) 2016-2019 OpenCFD Ltd. + Copyright (C) 2016-2020 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -101,6 +101,8 @@ Usage UInf | Freestream velocity for coefficient calculation | no | rhoInf | Freestream density for coefficient calculation | no | hydrostaticMode | Hydrostatic contributions (see below) | no | none + g | Gravity vector (see below) | no | + hRef | Reference height (see below) | no | \endtable The \c mode entry is used to select the type of pressure that is calculated. @@ -117,6 +119,15 @@ Usage - \c add : add the term, e.g. to convert from p_rgh to p - \c subtract : subtract the term, e.g. to convert from p to p_rgh + If the \c hydrostaticMode is active, values are also required for + gravity, \c g, and reference height, \c hRef. By default these will be + retrieved from the database. When these values are not available + the user must provide them, e.g. + \verbatim + g (0 -9.81 0); + hRef 0; + \endverbatim + See also Foam::functionObjects::fieldExpression @@ -247,7 +258,11 @@ private: ) const; //- Add the hydrostatic contribution - void addHydrostaticContribution(volScalarField& p) const; + void addHydrostaticContribution + ( + const volScalarField& p, + volScalarField& prgh + ) const; //- Calculate and return the pressure tmp<volScalarField> calcPressure