All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
flowRateOutletVelocityFvPatchVectorField Class Reference

Velocity outlet boundary condition which corrects the extrapolated velocity to match the specified flow rate. More...

Inheritance diagram for flowRateOutletVelocityFvPatchVectorField:
Collaboration diagram for flowRateOutletVelocityFvPatchVectorField:

Public Member Functions

 TypeName ("flowRateOutletVelocity")
 Runtime type information. More...
 
 flowRateOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 flowRateOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 flowRateOutletVelocityFvPatchVectorField (const flowRateOutletVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 flowRateOutletVelocityFvPatchVectorField (const flowRateOutletVelocityFvPatchVectorField &)
 Copy constructor. More...
 
virtual tmp< fvPatchVectorFieldclone () const
 Construct and return a clone. More...
 
 flowRateOutletVelocityFvPatchVectorField (const flowRateOutletVelocityFvPatchVectorField &, 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 outlet boundary condition which corrects the extrapolated velocity 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 m^3/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 outlet density using the rhoOutlet entry

For a volumetric-based flux:

  • the flow rate is in m^3/s
Usage
Property Description Required Default value
massFlowRate mass flow rate [kg/s] no
volumetricFlowRate volumetric flow rate [m^3/s] no
rho density field name no rho
rhoOutlet outlet density no

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

    <patchName>
    {
        type                flowRateOutletVelocity;
        volumetricFlowRate  0.2;
        value               uniform (0 0 0);
    }

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

    <patchName>
    {
        type                flowRateOutletVelocity;
        massFlowRate        0.2;
        rhoOutlet           1.0;
        value               uniform (0 0 0);
    }

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

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

Definition at line 129 of file flowRateOutletVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ flowRateOutletVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 35 of file flowRateOutletVelocityFvPatchVectorField.C.

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

Here is the caller graph for this function:

◆ flowRateOutletVelocityFvPatchVectorField() [2/5]

◆ flowRateOutletVelocityFvPatchVectorField() [3/5]

Construct by mapping given.

flowRateOutletVelocityFvPatchVectorField onto a new patch

Definition at line 97 of file flowRateOutletVelocityFvPatchVectorField.C.

References flowRateOutletVelocityFvPatchVectorField::flowRateOutletVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ flowRateOutletVelocityFvPatchVectorField() [4/5]

◆ flowRateOutletVelocityFvPatchVectorField() [5/5]

Copy constructor setting internal field reference.

Definition at line 128 of file flowRateOutletVelocityFvPatchVectorField.C.

References Foam::gSum(), Foam::mag(), Foam::max(), n, Foam::operator==(), rho, and Function1< Type >::value().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "flowRateOutletVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 196 of file flowRateOutletVelocityFvPatchVectorField.H.

References flowRateOutletVelocityFvPatchVectorField::flowRateOutletVelocityFvPatchVectorField().

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 213 of file flowRateOutletVelocityFvPatchVectorField.H.

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

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 185 of file flowRateOutletVelocityFvPatchVectorField.C.

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

Referenced by flowRateOutletVelocityFvPatchVectorField::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 225 of file flowRateOutletVelocityFvPatchVectorField.C.

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

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