fanPressureFvPatchScalarField Class Reference

This boundary condition can be applied to assign either a pressure inlet or outlet total pressure condition for a fan. More...

Inheritance diagram for fanPressureFvPatchScalarField:
Collaboration diagram for fanPressureFvPatchScalarField:

Public Types

enum  fanFlowDirection { ffdIn, ffdOut }
 Fan flow direction. More...
 

Public Member Functions

 TypeName ("fanPressure")
 Runtime type information. More...
 
 fanPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 fanPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 fanPressureFvPatchScalarField (const fanPressureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given fanPressureFvPatchScalarField. More...
 
 fanPressureFvPatchScalarField (const fanPressureFvPatchScalarField &)
 Copy constructor. More...
 
virtual tmp< fvPatchScalarFieldclone () const
 Construct and return a clone. More...
 
 fanPressureFvPatchScalarField (const fanPressureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor 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...
 
- Public Member Functions inherited from totalPressureFvPatchScalarField
 TypeName ("totalPressure")
 Runtime type information. More...
 
 totalPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 totalPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 totalPressureFvPatchScalarField (const totalPressureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given totalPressureFvPatchScalarField. More...
 
 totalPressureFvPatchScalarField (const totalPressureFvPatchScalarField &)
 Copy constructor. More...
 
 totalPressureFvPatchScalarField (const totalPressureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
void updateCoeffs (const scalarField &p0p, const vectorField &Up)
 Update the coefficients associated with the patch field. More...
 
- Public Member Functions inherited from dynamicPressureFvPatchScalarField
 TypeName ("dynamicPressure")
 Runtime type information. More...
 
 dynamicPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 dynamicPressureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 dynamicPressureFvPatchScalarField (const dynamicPressureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given dynamicPressureFvPatchScalarField. More...
 
 dynamicPressureFvPatchScalarField (const dynamicPressureFvPatchScalarField &)
 Copy constructor. More...
 
 dynamicPressureFvPatchScalarField (const dynamicPressureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual void autoMap (const fvPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const fvPatchScalarField &, const labelList &)
 Reverse map the given fvPatchField onto this fvPatchField. More...
 
void updateCoeffs (const scalarField &p0p, const scalarField &Kp)
 Update the coefficients associated with the patch field. More...
 

Static Public Attributes

static const NamedEnum< fanFlowDirection, 2 > fanFlowDirectionNames_
 Fan flow directions names. More...
 

Additional Inherited Members

- Protected Attributes inherited from totalPressureFvPatchScalarField
const word UName_
 Name of the velocity field. More...
 
const word phiName_
 Name of the flux field. More...
 
- Protected Attributes inherited from dynamicPressureFvPatchScalarField
const word rhoName_
 Name of the density field used to normalise the mass flux. More...
 
const word psiName_
 Name of the compressibility field used to calculate the wave speed. More...
 
const scalar gamma_
 Heat capacity ratio. More...
 
scalarField p0_
 Reference pressure. More...
 

Detailed Description

This boundary condition can be applied to assign either a pressure inlet or outlet total pressure condition for a fan.

Usage
Property Description Required Default value
fanCurve fan curve file name yes
p0 environmental total pressure yes

Example of the boundary condition specification:

    inlet
    {
        type            fanPressure;
        fanCurve        tableFile;
        tableFileCoeffs
        {
            file            "$FOAM_CASE/constant/pressureVsQ";
            format          csv;
            nHeaderLine     1;
            refColumn       0;
            componentColumns 1(1);
            separator       ",";
            mergeSeparators no;
            outOfBounds     clamp;
            interpolationScheme linear;
        }
        direction       in;
        p0              uniform 0;
        value           uniform 0;
    }

    outlet
    {
        type            fanPressure;
        fanCurve        tableFile;
        tableFileCoeffs
        {
            file            "$FOAM_CASE/constant/pressureVsQ";
            format          csv;
            nHeaderLine     1;
            refColumn       0;
            componentColumns 1(1);
            separator       ",";
            mergeSeparators no;
            outOfBounds     clamp;
            interpolationScheme linear;
        }
        direction       out;
        p0              uniform 0;
        value           uniform 0;
    }

The above example shows the use of a comma separated (CSV) file to specify the condition.

See also
Foam::totalPressureFvPatchScalarField Foam::Function1s
Source files

Definition at line 124 of file fanPressureFvPatchScalarField.H.

Member Enumeration Documentation

◆ fanFlowDirection

Fan flow direction.

Enumerator
ffdIn 
ffdOut 

Definition at line 133 of file fanPressureFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ fanPressureFvPatchScalarField() [1/5]

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

Construct from patch and internal field.

Definition at line 57 of file fanPressureFvPatchScalarField.C.

Referenced by fanPressureFvPatchScalarField::clone(), fanPressureFvPatchScalarField::fanPressureFvPatchScalarField(), and NamedEnum< compressibleField, 8 >::names().

Here is the caller graph for this function:

◆ fanPressureFvPatchScalarField() [2/5]

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

Construct from patch, internal field and dictionary.

Definition at line 69 of file fanPressureFvPatchScalarField.C.

References fanPressureFvPatchScalarField::fanPressureFvPatchScalarField().

Here is the call graph for this function:

◆ fanPressureFvPatchScalarField() [3/5]

fanPressureFvPatchScalarField ( const fanPressureFvPatchScalarField pfopsf,
const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const fvPatchFieldMapper mapper 
)

Construct by mapping given fanPressureFvPatchScalarField.

onto a new patch

Definition at line 82 of file fanPressureFvPatchScalarField.C.

References fanPressureFvPatchScalarField::fanPressureFvPatchScalarField().

Here is the call graph for this function:

◆ fanPressureFvPatchScalarField() [4/5]

Copy constructor.

Definition at line 96 of file fanPressureFvPatchScalarField.C.

References fanPressureFvPatchScalarField::fanPressureFvPatchScalarField().

Here is the call graph for this function:

◆ fanPressureFvPatchScalarField() [5/5]

Copy constructor setting internal field reference.

Definition at line 107 of file fanPressureFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "fanPressure"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchScalarField> clone ( ) const
inlinevirtual

Construct and return a clone.

Reimplemented from totalPressureFvPatchScalarField.

Definition at line 194 of file fanPressureFvPatchScalarField.H.

References fanPressureFvPatchScalarField::fanPressureFvPatchScalarField().

Here is the call graph for this function:

◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Reimplemented from totalPressureFvPatchScalarField.

Definition at line 211 of file fanPressureFvPatchScalarField.H.

References fanPressureFvPatchScalarField::fanPressureFvPatchScalarField(), fanPressureFvPatchScalarField::updateCoeffs(), and fanPressureFvPatchScalarField::write().

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Reimplemented from totalPressureFvPatchScalarField.

Definition at line 120 of file fanPressureFvPatchScalarField.C.

References Foam::dimArea, Foam::dimDensity, Foam::dimVelocity, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::gSum(), fvsPatchField< Type >::internalField(), Foam::max(), Foam::nl, Foam::sign(), and totalPressureFvPatchScalarField::updateCoeffs().

Referenced by fanPressureFvPatchScalarField::clone().

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

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from totalPressureFvPatchScalarField.

Definition at line 167 of file fanPressureFvPatchScalarField.C.

References Foam::makePatchTypeField(), totalPressureFvPatchScalarField::write(), and Foam::writeEntry().

Referenced by fanPressureFvPatchScalarField::clone().

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

Member Data Documentation

◆ fanFlowDirectionNames_

Fan flow directions names.

Definition at line 140 of file fanPressureFvPatchScalarField.H.

Referenced by NamedEnum< compressibleField, 8 >::names().


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