Public Member Functions | Private Member Functions | Private Attributes
rotatingPressureInletOutletVelocityFvPatchVectorField Class Reference

This velocity inlet/outlet boundary condition is applied to patches in a rotating frame where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces. More...

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

Public Member Functions

 TypeName ("rotatingPressureInletOutletVelocity")
 Runtime type information. More...
 
 rotatingPressureInletOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 rotatingPressureInletOutletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 rotatingPressureInletOutletVelocityFvPatchVectorField (const rotatingPressureInletOutletVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 rotatingPressureInletOutletVelocityFvPatchVectorField (const rotatingPressureInletOutletVelocityFvPatchVectorField &)
 Construct as copy. More...
 
virtual tmp< fvPatchVectorFieldclone () const
 Construct and return a clone. More...
 
 rotatingPressureInletOutletVelocityFvPatchVectorField (const rotatingPressureInletOutletVelocityFvPatchVectorField &, 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...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from pressureInletOutletVelocityFvPatchVectorField
 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...
 
 pressureInletOutletVelocityFvPatchVectorField (const pressureInletOutletVelocityFvPatchVectorField &, const DimensionedField< vector, volMesh > &)
 Construct as copy 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 operator= (const fvPatchField< vector > &pvf)
 

Private Member Functions

void calcTangentialVelocity ()
 Calculate the tangentialVelocity from omega. More...
 

Private Attributes

autoPtr< DataEntry< vector > > omega_
 Angular velocity of the frame. More...
 

Detailed Description

This velocity inlet/outlet boundary condition is applied to patches in a rotating frame where the pressure is specified. A zero-gradient is applied for outflow (as defined by the flux); for inflow, the velocity is obtained from the flux with a direction normal to the patch faces.


Patch usage

Property Description Required Default value
phi flux field name no phi
tangentialVelocity tangential velocity field no
omega angular velocty of the frame [rad/s] yes

Example of the boundary condition specification:

    myPatch
    {
        type            rotatingPressureInletOutletVelocity;
        phi             phi;
        tangentialVelocity uniform (0 0 0);
        omega           100;
    }

The omega entry is a DataEntry type, able to describe time varying functions.

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
See also
Foam::pressureInletOutletVelocityFvPatchVectorField
Source files

Definition at line 108 of file rotatingPressureInletOutletVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ rotatingPressureInletOutletVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 54 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

Referenced by rotatingPressureInletOutletVelocityFvPatchVectorField::clone().

Here is the caller graph for this function:

◆ rotatingPressureInletOutletVelocityFvPatchVectorField() [2/5]

Construct from patch, internal field and dictionary.

Definition at line 82 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

◆ rotatingPressureInletOutletVelocityFvPatchVectorField() [3/5]

Construct by mapping given.

rotatingPressureInletOutletVelocityFvPatchVectorField onto a new patch

Definition at line 66 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

◆ rotatingPressureInletOutletVelocityFvPatchVectorField() [4/5]

Construct as copy.

Definition at line 97 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

◆ rotatingPressureInletOutletVelocityFvPatchVectorField() [5/5]

Construct as copy setting internal field reference.

Definition at line 110 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

Member Function Documentation

◆ calcTangentialVelocity()

void calcTangentialVelocity ( )
private

Calculate the tangentialVelocity from omega.

Definition at line 34 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

References Foam::mag(), n, rotatingPressureInletOutletVelocityFvPatchVectorField::omega_, and pressureInletOutletVelocityFvPatchVectorField::tangentialVelocity().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "rotatingPressureInletOutletVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Reimplemented from pressureInletOutletVelocityFvPatchVectorField.

Definition at line 182 of file rotatingPressureInletOutletVelocityFvPatchVectorField.H.

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from pressureInletOutletVelocityFvPatchVectorField.

Definition at line 125 of file rotatingPressureInletOutletVelocityFvPatchVectorField.C.

References token::END_STATEMENT, Foam::nl, fvPatchField::write(), and Ostream::writeKeyword().

Here is the call graph for this function:

Field Documentation

◆ omega_

autoPtr<DataEntry<vector> > omega_
private

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