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

Describes a volumetric/mass flow normal vector boundary condition by its magnitude as an integral over its area with a swirl component determined by the RPM. More...

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

Public Member Functions

 TypeName ("ibSwirlFlowRateInletVelocity")
 Runtime type information. More...
 
 ibSwirlFlowRateInletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 ibSwirlFlowRateInletVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 ibSwirlFlowRateInletVelocityFvPatchVectorField (const ibSwirlFlowRateInletVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 ibSwirlFlowRateInletVelocityFvPatchVectorField (const ibSwirlFlowRateInletVelocityFvPatchVectorField &)
 Construct as copy. More...
 
virtual tmp< fvPatchVectorFieldclone () const
 Construct and return a clone. More...
 
 ibSwirlFlowRateInletVelocityFvPatchVectorField (const ibSwirlFlowRateInletVelocityFvPatchVectorField &, 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...
 
scalar flowRate () const
 Return the flux. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 

Private Member Functions

void calcGeom ()
 Calculate geometrical characteristics of the patch. More...
 

Private Attributes

const scalar flowRate_
 Inlet integral flow rate. More...
 
const word phiName_
 Name of the flux transporting the field. More...
 
const word rhoName_
 Name of the density field used to normalize the mass flux. More...
 
const scalar rpm_
 RPM. More...
 
scalar totArea_
 Total area of inlet patch. More...
 
vector avgCenter_
 Average centre. More...
 
vector avgNormal_
 Average normal. More...
 

Detailed Description

Describes a volumetric/mass flow normal vector boundary condition by its magnitude as an integral over its area with a swirl component determined by the RPM.

The basis of the patch (volumetric or mass) is determined by the dimensions of the flux, phi. The current density is used to correct the velocity when applying the mass basis.

The boundary condition is sensitised to work only on live IB cells

Example of the boundary condition specification:

inlet
{
    type            ibSwirlFlowRateInletVelocity;
    flowRate        0.2;        // Volumetric/mass flow rate [m3/s or kg/s]
    rpm             100;
}
Note
  • The value is positive inwards
Source files

Definition at line 69 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ ibSwirlFlowRateInletVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 38 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

Referenced by ibSwirlFlowRateInletVelocityFvPatchVectorField::clone().

Here is the caller graph for this function:

◆ ibSwirlFlowRateInletVelocityFvPatchVectorField() [2/5]

Construct from patch, internal field and dictionary.

Definition at line 76 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

◆ ibSwirlFlowRateInletVelocityFvPatchVectorField() [3/5]

Construct by mapping given.

flowRateInletVelocityFvPatchVectorField onto a new patch

Definition at line 56 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

◆ ibSwirlFlowRateInletVelocityFvPatchVectorField() [4/5]

Construct as copy.

Definition at line 95 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

◆ ibSwirlFlowRateInletVelocityFvPatchVectorField() [5/5]

Construct as copy setting internal field reference.

Definition at line 112 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

Member Function Documentation

◆ calcGeom()

void calcGeom ( )
private

◆ TypeName()

TypeName ( "ibSwirlFlowRateInletVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 146 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

References ibSwirlFlowRateInletVelocityFvPatchVectorField::ibSwirlFlowRateInletVelocityFvPatchVectorField().

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 163 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

References ibSwirlFlowRateInletVelocityFvPatchVectorField::ibSwirlFlowRateInletVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ flowRate()

scalar flowRate ( ) const
inline

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 143 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

References Foam::dimArea, Foam::dimDensity, dimensionedInternalField(), Foam::dimVelocity, Foam::exit(), Foam::FatalError, FatalErrorIn, n, Foam::nl, phi, Foam::constant::mathematical::pi(), U, and fvPatchField< Type >::updateCoeffs().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Definition at line 200 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.C.

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

Here is the call graph for this function:

Field Documentation

◆ flowRate_

const scalar flowRate_
private

Inlet integral flow rate.

Definition at line 76 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

Referenced by ibSwirlFlowRateInletVelocityFvPatchVectorField::flowRate().

◆ phiName_

const word phiName_
private

Name of the flux transporting the field.

Definition at line 79 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

◆ rhoName_

const word rhoName_
private

Name of the density field used to normalize the mass flux.

Definition at line 82 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

◆ rpm_

const scalar rpm_
private

RPM.

Definition at line 85 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

◆ totArea_

scalar totArea_
private

Total area of inlet patch.

Definition at line 90 of file ibSwirlFlowRateInletVelocityFvPatchVectorField.H.

Referenced by ibSwirlFlowRateInletVelocityFvPatchVectorField::calcGeom().

◆ avgCenter_

vector avgCenter_
private

◆ avgNormal_

vector avgNormal_
private

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