Public Member Functions | Private Attributes
pressureInletOutletVelocityFvPatchVectorField Class Reference

This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the patch-face normal component of the internal-cell value. More...

Inheritance diagram for pressureInletOutletVelocityFvPatchVectorField:
Inheritance graph
[legend]
Collaboration diagram for pressureInletOutletVelocityFvPatchVectorField:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("pressureInletOutletVelocity")
 Runtime type information. More...
 
 pressureInletOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 pressureInletOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 pressureInletOutletVelocityFvPatchVectorField (const pressureInletOutletVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 pressureInletOutletVelocityFvPatchVectorField (const pressureInletOutletVelocityFvPatchVectorField &)
 Construct as copy. More...
 
virtual tmp< fvPatchVectorFieldclone () const
 Construct and return a clone. More...
 
 pressureInletOutletVelocityFvPatchVectorField (const pressureInletOutletVelocityFvPatchVectorField &, const DimensionedField< vector, volMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual tmp< fvPatchVectorFieldclone (const DimensionedField< vector, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
const wordphiName () const
 Return the name of phi. More...
 
wordphiName ()
 Return reference to the name of phi to allow adjustment. More...
 
const vectorFieldtangentialVelocity () const
 Return the tangential velocity. More...
 
void setTangentialVelocity (const vectorField &tangentialVelocity)
 Reset the tangential velocity. More...
 
virtual void autoMap (const fvPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const fvPatchVectorField &, const labelList &)
 Reverse map the given fvPatchField onto this fvPatchField. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 
virtual void operator= (const fvPatchField< vector > &pvf)
 

Private Attributes

word phiName_
 Flux field name. More...
 
vectorField tangentialVelocity_
 Optional tangential velocity component. More...
 

Detailed Description

This velocity inlet/outlet boundary condition is applied to pressure boundaries where the pressure is specified. A zero-gradient condition is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the patch-face normal component of the internal-cell value.

The tangential patch velocity can be optionally specified.


Patch usage

Property Description Required Default value
phi flux field name no phi
tangentialVelocity tangential velocity field no

Example of the boundary condition specification:

    myPatch
    {
        type            pressureInletOutletVelocity;
        phi             phi;
        tangentialVelocity uniform (0 0 0);
        value           uniform 0;
    }
Note
Sign conventions:
  • positive flux (out of domain): apply zero-gradient condition
  • negative flux (into of domain): derive from the flux in the patch-normal direction
Source files

Definition at line 97 of file pressureInletOutletVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ pressureInletOutletVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 36 of file pressureInletOutletVelocityFvPatchVectorField.C.

Referenced by pressureInletOutletVelocityFvPatchVectorField::clone().

Here is the caller graph for this function:

◆ pressureInletOutletVelocityFvPatchVectorField() [2/5]

Construct from patch, internal field and dictionary.

Definition at line 71 of file pressureInletOutletVelocityFvPatchVectorField.C.

References dict, p, and vectorField().

Here is the call graph for this function:

◆ pressureInletOutletVelocityFvPatchVectorField() [3/5]

◆ pressureInletOutletVelocityFvPatchVectorField() [4/5]

Construct as copy.

Definition at line 101 of file pressureInletOutletVelocityFvPatchVectorField.C.

◆ pressureInletOutletVelocityFvPatchVectorField() [5/5]

Construct as copy setting internal field reference.

Definition at line 113 of file pressureInletOutletVelocityFvPatchVectorField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "pressureInletOutletVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

Construct and return a clone.

Reimplemented in rotatingPressureInletOutletVelocityFvPatchVectorField.

Definition at line 150 of file pressureInletOutletVelocityFvPatchVectorField.H.

References pressureInletOutletVelocityFvPatchVectorField::pressureInletOutletVelocityFvPatchVectorField().

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.

Reimplemented in rotatingPressureInletOutletVelocityFvPatchVectorField.

Definition at line 167 of file pressureInletOutletVelocityFvPatchVectorField.H.

References pressureInletOutletVelocityFvPatchVectorField::pressureInletOutletVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ phiName() [1/2]

const word& phiName ( ) const
inline

◆ phiName() [2/2]

word& phiName ( )
inline

Return reference to the name of phi to allow adjustment.

Definition at line 189 of file pressureInletOutletVelocityFvPatchVectorField.H.

References pressureInletOutletVelocityFvPatchVectorField::phiName_.

◆ tangentialVelocity()

const vectorField& tangentialVelocity ( ) const
inline

◆ setTangentialVelocity()

void setTangentialVelocity ( const vectorField tangentialVelocity)

Reset the tangential velocity.

Definition at line 127 of file pressureInletOutletVelocityFvPatchVectorField.C.

References n, pressureInletOutletVelocityFvPatchVectorField::tangentialVelocity(), and pressureInletOutletVelocityFvPatchVectorField::tangentialVelocity_.

Here is the call graph for this function:

◆ autoMap()

void autoMap ( const fvPatchFieldMapper m)
virtual

Map (and resize as needed) from self given a mapping object.

Definition at line 136 of file pressureInletOutletVelocityFvPatchVectorField.C.

◆ rmap()

void rmap ( const fvPatchVectorField ptf,
const labelList addr 
)
virtual

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 166 of file pressureInletOutletVelocityFvPatchVectorField.C.

References Foam::I, Foam::neg(), and Foam::sqr().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented in rotatingPressureInletOutletVelocityFvPatchVectorField.

Definition at line 184 of file pressureInletOutletVelocityFvPatchVectorField.C.

References fvPatchField::write().

Here is the call graph for this function:

◆ operator=()

void operator= ( const fvPatchField< vector > &  pvf)
virtual

Definition at line 202 of file pressureInletOutletVelocityFvPatchVectorField.C.

References Foam::I, fvPatchField::operator=(), and Foam::transform().

Here is the call graph for this function:

Field Documentation

◆ phiName_

word phiName_
private

◆ tangentialVelocity_

vectorField tangentialVelocity_
private

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