The open source CFD toolbox
plenumPressureFvPatchScalarField Class Reference

This boundary condition provides a plenum pressure inlet condition. This condition creates a zero-dimensional model of an enclosed volume of gas upstream of the inlet. The pressure that the boundary condition exerts on the inlet boundary is dependent on the thermodynamic state of the upstream volume. The upstream plenum density and temperature are time-stepped along with the rest of the simulation, and momentum is neglected. The plenum is supplied with a user specified mass flow and temperature. More...

Inheritance diagram for plenumPressureFvPatchScalarField:
[legend]
Collaboration diagram for plenumPressureFvPatchScalarField:
[legend]

## Public Member Functions

TypeName ("plenumPressure")
Runtime type information. More...

plenumPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field. More...

plenumPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary. More...

plenumPressureFvPatchScalarField (const plenumPressureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
Construct by mapping given plenumPressureFvPatchScalarField. More...

plenumPressureFvPatchScalarField (const plenumPressureFvPatchScalarField &)
Construct as copy. More...

virtual tmp< fvPatchScalarFieldclone () const
Construct and return a clone. More...

plenumPressureFvPatchScalarField (const plenumPressureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
Construct as copy setting internal field reference. More...

virtual tmp< fvPatchScalarFieldclone (const DimensionedField< scalar, volMesh > &iF) const
Construct and return a clone setting internal field reference. More...

virtual void updateCoeffs ()
Update the coefficients associated with the patch field. More...

virtual void write (Ostream &) const
Write. More...

## Detailed Description

This boundary condition provides a plenum pressure inlet condition. This condition creates a zero-dimensional model of an enclosed volume of gas upstream of the inlet. The pressure that the boundary condition exerts on the inlet boundary is dependent on the thermodynamic state of the upstream volume. The upstream plenum density and temperature are time-stepped along with the rest of the simulation, and momentum is neglected. The plenum is supplied with a user specified mass flow and temperature.

The result is a boundary condition which blends between a pressure inlet condition condition and a fixed mass flow. The smaller the plenum volume, the quicker the pressure responds to a deviation from the supply mass flow, and the closer the model approximates a fixed mass flow. As the plenum size increases, the model becomes more similar to a specified pressure.

The expansion from the plenum to the inlet boundary is controlled by an area ratio and a discharge coefficient. The area ratio can be used to represent further acceleration between a sub-grid blockage such as fins. The discharge coefficient represents a fractional deviation from an ideal expansion process.

This condition is useful for simulating unsteady internal flow problems for which both a mass flow boundary is unrealistic, and a pressure boundary is susceptible to flow reversal. It was developed for use in simulating confined combustion.

Reference:

    Bainbridge, W. (2013).
The Numerical Simulation of Oscillations in Gas Turbine Combustion
Chambers,
PhD Thesis,
Chapter 4, Section 4.3.1.2, 77-80.

Usage
Property Description Required Default value
gamma ratio of specific heats yes none
R specific gas constant yes none
supplyMassFlowRate flow rate into the plenum yes none
supplyTotalTemperature temperature into the plenum yes none
plenumVolume plenum volume yes none
plenumDensity plenum density yes none
plenumTemperature plenum temperature yes none
U velocity field name no U
phi flux field name no phi
rho inlet density no none
inletAreaRatio inlet open fraction yes none
inletDischargeCoefficient inlet loss coefficient yes none
timeScale relaxation time scale yes none

Example of the boundary condition specification:

    <patchName>
{
type            plenumPressure;
gamma           1.4;
R               287.04;
supplyMassFlowRate 0.0001;
supplyTotalTemperature 300;
plenumVolume    0.000125;
plenumDensity   1.1613;
plenumTemperature 300;
inletAreaRatio  1.0;
inletDischargeCoefficient 0.8;
timeScale       1e-4;
value           uniform 1e5;
}
Source files

Definition at line 193 of file plenumPressureFvPatchScalarField.H.

## ◆ plenumPressureFvPatchScalarField() [1/5]

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

Construct from patch and internal field.

Definition at line 37 of file plenumPressureFvPatchScalarField.C.

## ◆ plenumPressureFvPatchScalarField() [2/5]

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

Construct from patch, internal field and dictionary.

Definition at line 64 of file plenumPressureFvPatchScalarField.C.

Here is the call graph for this function:

## ◆ plenumPressureFvPatchScalarField() [3/5]

 plenumPressureFvPatchScalarField ( const plenumPressureFvPatchScalarField & ptf, const fvPatch & p, const DimensionedField< scalar, volMesh > & iF, const fvPatchFieldMapper & mapper )

Construct by mapping given plenumPressureFvPatchScalarField.

onto a new patch

Definition at line 91 of file plenumPressureFvPatchScalarField.C.

## ◆ plenumPressureFvPatchScalarField() [4/5]

 plenumPressureFvPatchScalarField ( const plenumPressureFvPatchScalarField & tppsf )

Construct as copy.

Definition at line 117 of file plenumPressureFvPatchScalarField.C.

## ◆ plenumPressureFvPatchScalarField() [5/5]

 plenumPressureFvPatchScalarField ( const plenumPressureFvPatchScalarField & tppsf, const DimensionedField< scalar, volMesh > & iF )

Construct as copy setting internal field reference.

Definition at line 140 of file plenumPressureFvPatchScalarField.C.

## ◆ TypeName()

 TypeName ( "plenumPressure" )

Runtime type information.

## ◆ clone() [1/2]

 virtual tmp< fvPatchScalarField > clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 292 of file plenumPressureFvPatchScalarField.H.

## ◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Definition at line 308 of file plenumPressureFvPatchScalarField.H.

## ◆ updateCoeffs()

 void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 166 of file plenumPressureFvPatchScalarField.C.

Here is the call graph for this function:

## ◆ write()

 void write ( Ostream & os ) const
virtual

Write.

Definition at line 293 of file plenumPressureFvPatchScalarField.C.

Here is the call graph for this function:

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