flowRateInletVelocityFvPatchVectorField Class Reference

Velocity inlet boundary condition either correcting the extrapolated velocity or creating a uniform velocity field normal to the patch adjusted to match the specified flow rate. More...

Inheritance diagram for flowRateInletVelocityFvPatchVectorField:
Collaboration diagram for flowRateInletVelocityFvPatchVectorField:

Public Member Functions

 TypeName ("flowRateInletVelocity")
 Runtime type information. More...
 
 flowRateInletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 flowRateInletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 flowRateInletVelocityFvPatchVectorField (const flowRateInletVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 flowRateInletVelocityFvPatchVectorField (const flowRateInletVelocityFvPatchVectorField &)
 Copy constructor. More...
 
virtual tmp< fvPatchVectorFieldclone () const
 Construct and return a clone. More...
 
 flowRateInletVelocityFvPatchVectorField (const flowRateInletVelocityFvPatchVectorField &, const DimensionedField< vector, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual tmp< fvPatchVectorFieldclone (const DimensionedField< vector, 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

Velocity inlet boundary condition either correcting the extrapolated velocity or creating a uniform velocity field normal to the patch adjusted to match the specified flow rate.

For a mass-based flux:

  • the flow rate should be provided in kg/s
  • if rho is "none" the flow rate is in m3/s
  • otherwise rho should correspond to the name of the density field
  • if the density field cannot be found in the database, the user must specify the inlet density using the rhoInlet entry

For a volumetric-based flux:

  • the flow rate is in m3/s
Usage
Property Description Required Default value
massFlowRate mass flow rate [kg/s] no
volumetricFlowRate volumetric flow rate [m3/s] no
rho density field name no rho
rhoInlet inlet density no
extrapolateProfile Extrapolate velocity profile no false

Example of the boundary condition specification for a volumetric flow rate:

    <patchName>
    {
        type                flowRateInletVelocity;
        volumetricFlowRate  0.2;
        extrapolateProfile  yes;
        value               uniform (0 0 0);
    }

Example of the boundary condition specification for a mass flow rate:

    <patchName>
    {
        type                flowRateInletVelocity;
        massFlowRate        0.2;
        extrapolateProfile  yes;
        rho                 rho;
        rhoInlet            1.0;
        value               uniform (0 0 0);
    }

The flowRate entry is a Function1 of time, see Foam::Function1Types.

Note
  • rhoInlet is required for the case of a mass flow rate, where the density field is not available at start-up
  • The value is positive into the domain (as an inlet)
  • May not work correctly for transonic inlets
  • Strange behaviour with potentialFoam since the U equation is not solved
See also
Foam::fixedValueFvPatchField Foam::Function1Types Foam::flowRateOutletVelocityFvPatchVectorField
Source files

Definition at line 139 of file flowRateInletVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ flowRateInletVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 35 of file flowRateInletVelocityFvPatchVectorField.C.

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

Here is the caller graph for this function:

◆ flowRateInletVelocityFvPatchVectorField() [2/5]

flowRateInletVelocityFvPatchVectorField ( const fvPatch p,
const DimensionedField< vector, volMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

Definition at line 51 of file flowRateInletVelocityFvPatchVectorField.C.

References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, flowRateInletVelocityFvPatchVectorField::flowRateInletVelocityFvPatchVectorField(), Foam::New(), List< Type >::size(), and vectorField().

Here is the call graph for this function:

◆ flowRateInletVelocityFvPatchVectorField() [3/5]

Construct by mapping given.

flowRateInletVelocityFvPatchVectorField onto a new patch

Definition at line 102 of file flowRateInletVelocityFvPatchVectorField.C.

References flowRateInletVelocityFvPatchVectorField::flowRateInletVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ flowRateInletVelocityFvPatchVectorField() [4/5]

◆ flowRateInletVelocityFvPatchVectorField() [5/5]

Copy constructor setting internal field reference.

Definition at line 135 of file flowRateInletVelocityFvPatchVectorField.C.

References Foam::gSum(), Foam::mag(), Foam::min(), n, Foam::operator==(), and rho.

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "flowRateInletVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 209 of file flowRateInletVelocityFvPatchVectorField.H.

References flowRateInletVelocityFvPatchVectorField::flowRateInletVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ clone() [2/2]

virtual tmp<fvPatchVectorField> clone ( const DimensionedField< vector, volMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 226 of file flowRateInletVelocityFvPatchVectorField.H.

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

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 200 of file flowRateInletVelocityFvPatchVectorField.C.

References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.

Referenced by flowRateInletVelocityFvPatchVectorField::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.

Definition at line 240 of file flowRateInletVelocityFvPatchVectorField.C.

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

Referenced by flowRateInletVelocityFvPatchVectorField::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: