SRFFreestreamVelocityFvPatchVectorField Class Reference

Freestream velocity condition to be used in conjunction with the single rotating frame (SRF) model (see: SRFModel class) More...

Inheritance diagram for SRFFreestreamVelocityFvPatchVectorField:
[legend]
Collaboration diagram for SRFFreestreamVelocityFvPatchVectorField:
[legend]

Public Member Functions

 TypeName ("SRFFreestreamVelocity")
 Runtime type information. More...
 
 SRFFreestreamVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &)
 Construct from patch and internal field. More...
 
 SRFFreestreamVelocityFvPatchVectorField (const fvPatch &, const DimensionedField< vector, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 SRFFreestreamVelocityFvPatchVectorField (const SRFFreestreamVelocityFvPatchVectorField &, const fvPatch &, const DimensionedField< vector, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given SRFFreestreamVelocityFvPatchVectorField. More...
 
 SRFFreestreamVelocityFvPatchVectorField (const SRFFreestreamVelocityFvPatchVectorField &)
 Construct as copy. More...
 
virtual tmp< fvPatchVectorField > clone () const
 Construct and return a clone. More...
 
 SRFFreestreamVelocityFvPatchVectorField (const SRFFreestreamVelocityFvPatchVectorField &, const DimensionedField< vector, volMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual tmp< fvPatchVectorField > clone (const DimensionedField< vector, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
const vector & UInf () const
 Return the velocity at infinity. More...
 
vector & UInf ()
 Return reference to the velocity at infinity to allow adjustment. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 

Detailed Description

Freestream velocity condition to be used in conjunction with the single rotating frame (SRF) model (see: SRFModel class)

Given the free stream velocity in the absolute frame, the condition applies the appropriate rotation transformation in time and space to determine the local velocity using:

\[ U_p = cos(\theta) U_{Inf} + sin(\theta) (n \times U_{Inf}) - U_{p,srf} \]

where

\( U_p \) = patch velocity [m/s]
\( U_{Inf} \) = free stream velocity in the absolute frame [m/s]
\( \theta \) = swept angle [rad]
\( n \) = axis direction of the SRF
\( U_{p,srf} \) = SRF velocity of the patch [m/s]
Usage
Property Description Required Default value
UInf freestream velocity yes
relative UInf relative to the SRF? no

Example of the boundary condition specification:

    <patchName>
    {
        type            SRFFreestreamVelocity;
        UInf            uniform (0 0 0);
        relative        no;
        value           uniform (0 0 0);    // initial value
    }
See also
Foam::freestreamFvPatchField Foam::SRFVelocityFvPatchVectorField
Source files

Definition at line 128 of file SRFFreestreamVelocityFvPatchVectorField.H.

Constructor & Destructor Documentation

◆ SRFFreestreamVelocityFvPatchVectorField() [1/5]

Construct from patch and internal field.

Definition at line 41 of file SRFFreestreamVelocityFvPatchVectorField.C.

Referenced by SRFFreestreamVelocityFvPatchVectorField::clone().

Here is the caller graph for this function:

◆ SRFFreestreamVelocityFvPatchVectorField() [2/5]

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

Construct from patch, internal field and dictionary.

Definition at line 69 of file SRFFreestreamVelocityFvPatchVectorField.C.

References dict, and p.

◆ SRFFreestreamVelocityFvPatchVectorField() [3/5]

Construct by mapping given SRFFreestreamVelocityFvPatchVectorField.

onto a new patch

Definition at line 54 of file SRFFreestreamVelocityFvPatchVectorField.C.

◆ SRFFreestreamVelocityFvPatchVectorField() [4/5]

◆ SRFFreestreamVelocityFvPatchVectorField() [5/5]

Construct as copy setting internal field reference.

Definition at line 99 of file SRFFreestreamVelocityFvPatchVectorField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "SRFFreestreamVelocity"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchVectorField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 181 of file SRFFreestreamVelocityFvPatchVectorField.H.

References SRFFreestreamVelocityFvPatchVectorField::SRFFreestreamVelocityFvPatchVectorField().

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 198 of file SRFFreestreamVelocityFvPatchVectorField.H.

References SRFFreestreamVelocityFvPatchVectorField::SRFFreestreamVelocityFvPatchVectorField().

Here is the call graph for this function:

◆ UInf() [1/2]

const vector& UInf ( ) const
inline

Return the velocity at infinity.

Definition at line 214 of file SRFFreestreamVelocityFvPatchVectorField.H.

◆ UInf() [2/2]

vector& UInf ( )
inline

Return reference to the velocity at infinity to allow adjustment.

Definition at line 220 of file SRFFreestreamVelocityFvPatchVectorField.H.

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 112 of file SRFFreestreamVelocityFvPatchVectorField.C.

References SRFModel::axis(), Foam::cos(), Foam::mag(), mesh, Foam::name(), SRFModel::omega(), Foam::foamVersion::patch, Foam::pos0(), Foam::sin(), fvPatchField< Type >::updateCoeffs(), dimensioned< Type >::value(), and SRFModel::velocity().

Here is the call graph for this function:

◆ write()

void write ( Ostream &  os) const
virtual

Write.

Definition at line 161 of file SRFFreestreamVelocityFvPatchVectorField.C.

References fvPatchField< vector >::write(), and Ostream::writeEntry().

Here is the call graph for this function:

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