phaseHydrostaticPressureFvPatchScalarField Class Reference

This boundary condition provides a phase-based hydrostatic pressure condition, calculated as: More...

Inheritance diagram for phaseHydrostaticPressureFvPatchScalarField:
Collaboration diagram for phaseHydrostaticPressureFvPatchScalarField:

Public Member Functions

 TypeName ("phaseHydrostaticPressure")
 Runtime type information. More...
 
 phaseHydrostaticPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 phaseHydrostaticPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 phaseHydrostaticPressureFvPatchScalarField (const phaseHydrostaticPressureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 phaseHydrostaticPressureFvPatchScalarField (const phaseHydrostaticPressureFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 phaseHydrostaticPressureFvPatchScalarField (const phaseHydrostaticPressureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual tmp< fvPatchScalarField > clone (const DimensionedField< scalar, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual bool assignable () const
 Return true: this patch field is altered by assignment. More...
 
const word & phaseFraction () const
 Return the phaseFraction. More...
 
word & phaseFraction ()
 Return reference to the phaseFraction to allow adjustment. More...
 
scalar rho () const
 Return the constant density in the far-field. More...
 
scalar & rho ()
 Return reference to the constant density in the far-field. More...
 
scalar pRefValue () const
 Return the reference pressure. More...
 
scalar & pRefValue ()
 Return reference to the reference pressure to allow adjustment. More...
 
const vector & pRefPoint () const
 Return the pressure reference location. More...
 
vector & pRefPoint ()
 Return reference to the pressure reference location. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 
virtual void operator= (const fvPatchScalarField &pvf)
 

Protected Attributes

word phaseFraction_
 Name of phase-fraction field. More...
 
scalar rho_
 Constant density in the far-field. More...
 
scalar pRefValue_
 Reference pressure. More...
 
vector pRefPoint_
 Reference pressure location. More...
 

Detailed Description

This boundary condition provides a phase-based hydrostatic pressure condition, calculated as:

\[ p_{hyd} = p_{ref} + \rho g (x - x_{ref}) \]

where

$ 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/s^2]

The values are assigned according to the phase-fraction field:

  • 1: apply $fp_{hyd}$f
  • 0: apply a zero-gradient condition
Usage
Property Description Required Default value
phaseFraction phase-fraction field name no alpha
rho density field name no rho
pRefValue reference pressure [Pa] yes
pRefPoint reference pressure location yes

Example of the boundary condition specification:

    <patchName>
    {
        type            phaseHydrostaticPressure;
        phaseFraction   alpha1;
        rho             rho;
        pRefValue       1e5;
        pRefPoint       (0 0 0);
        value           uniform 0; // optional initial value
    }
See also
Foam::mixedFvPatchScalarField
Source files

Definition at line 136 of file phaseHydrostaticPressureFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ phaseHydrostaticPressureFvPatchScalarField() [1/5]

phaseHydrostaticPressureFvPatchScalarField ( const fvPatch &  p,
const DimensionedField< scalar, volMesh > &  iF 
)

Construct from patch and internal field.

Definition at line 37 of file phaseHydrostaticPressureFvPatchScalarField.C.

Referenced by phaseHydrostaticPressureFvPatchScalarField::clone(), and phaseHydrostaticPressureFvPatchScalarField::phaseHydrostaticPressureFvPatchScalarField().

Here is the caller graph for this function:

◆ phaseHydrostaticPressureFvPatchScalarField() [2/5]

phaseHydrostaticPressureFvPatchScalarField ( const fvPatch &  p,
const DimensionedField< scalar, volMesh > &  iF,
const dictionary &  dict 
)

Construct from patch, internal field and dictionary.

Definition at line 56 of file phaseHydrostaticPressureFvPatchScalarField.C.

References dictionary::found(), phaseHydrostaticPressureFvPatchScalarField::phaseHydrostaticPressureFvPatchScalarField(), scalarField(), and fvPatch::size().

Here is the call graph for this function:

◆ phaseHydrostaticPressureFvPatchScalarField() [3/5]

Construct by mapping given.

phaseHydrostaticPressureFvPatchScalarField onto a new patch

Definition at line 89 of file phaseHydrostaticPressureFvPatchScalarField.C.

References phaseHydrostaticPressureFvPatchScalarField::phaseHydrostaticPressureFvPatchScalarField().

Here is the call graph for this function:

◆ phaseHydrostaticPressureFvPatchScalarField() [4/5]

Disallow copy without setting internal field reference.

◆ phaseHydrostaticPressureFvPatchScalarField() [5/5]

Copy constructor setting internal field reference.

Definition at line 106 of file phaseHydrostaticPressureFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "phaseHydrostaticPressure"  )

Runtime type information.

◆ clone()

virtual tmp<fvPatchScalarField> clone ( const DimensionedField< scalar, volMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 206 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::phaseHydrostaticPressureFvPatchScalarField().

Here is the call graph for this function:

◆ assignable()

virtual bool assignable ( ) const
inlinevirtual

Return true: this patch field is altered by assignment.

Definition at line 222 of file phaseHydrostaticPressureFvPatchScalarField.H.

◆ phaseFraction() [1/2]

const word& phaseFraction ( ) const
inline

Return the phaseFraction.

Definition at line 231 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::phaseFraction_.

◆ phaseFraction() [2/2]

word& phaseFraction ( )
inline

Return reference to the phaseFraction to allow adjustment.

Definition at line 237 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::phaseFraction_.

◆ rho() [1/2]

scalar rho ( ) const
inline

Return the constant density in the far-field.

Definition at line 243 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::rho_.

◆ rho() [2/2]

scalar& rho ( )
inline

Return reference to the constant density in the far-field.

to allow adjustment

Definition at line 250 of file phaseHydrostaticPressureFvPatchScalarField.H.

◆ pRefValue() [1/2]

scalar pRefValue ( ) const
inline

Return the reference pressure.

Definition at line 256 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::pRefValue_.

◆ pRefValue() [2/2]

scalar& pRefValue ( )
inline

Return reference to the reference pressure to allow adjustment.

Definition at line 262 of file phaseHydrostaticPressureFvPatchScalarField.H.

References phaseHydrostaticPressureFvPatchScalarField::pRefValue_.

◆ pRefPoint() [1/2]

◆ pRefPoint() [2/2]

vector& pRefPoint ( )
inline

Return reference to the pressure reference location.

to allow adjustment

Definition at line 275 of file phaseHydrostaticPressureFvPatchScalarField.H.

◆ updateCoeffs()

void updateCoeffs ( )
virtual

◆ write()

◆ operator=()

void operator= ( const fvPatchScalarField &  pvf)
virtual

Definition at line 167 of file phaseHydrostaticPressureFvPatchScalarField.C.

References Foam::makePatchTypeField(), and fvPatchField< Type >::operator.

Referenced by phaseHydrostaticPressureFvPatchScalarField::pRefPoint().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ phaseFraction_

◆ rho_

◆ pRefValue_

◆ pRefPoint_


The documentation for this class was generated from the following files: