fanPressureJumpFvPatchScalarField Class Reference

This boundary condition provides a pressure jump condition, using the cyclic condition as a base. More...

Inheritance diagram for fanPressureJumpFvPatchScalarField:
Collaboration diagram for fanPressureJumpFvPatchScalarField:

Public Member Functions

 TypeName ("fanPressureJump")
 Runtime type information. More...
 
 fanPressureJumpFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 fanPressureJumpFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 fanPressureJumpFvPatchScalarField (const fanPressureJumpFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given patch onto a new patch. More...
 
 fanPressureJumpFvPatchScalarField (const fanPressureJumpFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 fanPressureJumpFvPatchScalarField (const fanPressureJumpFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual tmp< fvPatchField< scalar > > clone (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 pressure jump condition, using the cyclic condition as a base.

The jump is specified as a Function1 type, to enable the use of, e.g. constant, polynomial, table values. This boundary condition can operate in two modes - standard and backward compatibility. In standard mode, jump is specified as a function of total volumetric flow rate through the patch. In backward compatibility mode, the boundary conditions serves as a direct replacement for the fanFvPatchField, where jump is defined as a function of local velocity.

Usage
Property Description Required Default value
patchType underlying patch type (should be cyclic) yes
fanCurve fan curve function yes
jumpTable jump table function (backward compatibility mode) no
reverse reverse jump direction no false
phi flux field name no phi
rho density field name no rho

Example of the boundary condition specification:

    <patchName>
    {
        type            fanPressureJump;
        patchType       cyclic;
        fanCurve        table;
        fanCurveCoeffs
        {
            file            "$FOAM_CASE/constant/pressureVsQ";
            format          csv;
            nHeaderLine     1;
            refColumn       0;
            componentColumns 1(1);
            separator       ",";
            mergeSeparators no;
            outOfBounds     clamp;
            interpolationScheme linear;
        }
        value           uniform 0;
    }

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

Note
The underlying patchType should be set to cyclic
See also
Foam::Function1s
Source files

Definition at line 136 of file fanPressureJumpFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ fanPressureJumpFvPatchScalarField() [1/5]

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

Construct from patch and internal field.

Definition at line 110 of file fanPressureJumpFvPatchScalarField.C.

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

Here is the caller graph for this function:

◆ fanPressureJumpFvPatchScalarField() [2/5]

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

Construct from patch, internal field and dictionary.

Definition at line 125 of file fanPressureJumpFvPatchScalarField.C.

References UPstream::blocking, Foam::evaluate(), fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField(), dictionary::found(), Function1< Type >::New(), fvPatchField< Type >::operator, and fvPatch::size().

Here is the call graph for this function:

◆ fanPressureJumpFvPatchScalarField() [3/5]

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

Construct by mapping given patch onto a new patch.

Definition at line 172 of file fanPressureJumpFvPatchScalarField.C.

References fanPressureJumpFvPatchScalarField::fanPressureJumpFvPatchScalarField().

Here is the call graph for this function:

◆ fanPressureJumpFvPatchScalarField() [4/5]

Disallow copy without setting internal field reference.

◆ fanPressureJumpFvPatchScalarField() [5/5]

Copy constructor setting internal field reference.

Definition at line 189 of file fanPressureJumpFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "fanPressureJump"  )

Runtime type information.

◆ clone()

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

Construct and return a clone setting internal field reference.

Definition at line 212 of file fanPressureJumpFvPatchScalarField.H.

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

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 205 of file fanPressureJumpFvPatchScalarField.C.

Referenced by fanPressureJumpFvPatchScalarField::clone().

Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Definition at line 221 of file fanPressureJumpFvPatchScalarField.C.

References Foam::makePatchTypeField(), autoPtr< T >::valid(), Foam::vtkWriteOps::write(), and Foam::writeEntry().

Referenced by fanPressureJumpFvPatchScalarField::clone().

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

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