directionalMeshWave Class Reference

Variant of meshWave distance-to-patch method. More...

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

Public Member Functions

 TypeName ("directionalMeshWave")
 Runtime type information. More...
 
 directionalMeshWave (const dictionary &dict, const fvMesh &mesh, const labelHashSet &patchIDs)
 
virtual bool correct (volScalarField &y)
 Correct the given distance-to-patch field. More...
 
virtual bool correct (volScalarField &y, volVectorField &n)
 Correct the given distance-to-patch and normal-to-patch fields. More...
 
- Public Member Functions inherited from meshWave
 TypeName ("meshWave")
 Runtime type information. More...
 
 meshWave (const dictionary &dict, const fvMesh &mesh, const labelHashSet &patchIDs)
 Construct from coefficients dictionary, mesh. More...
 
 meshWave (const fvMesh &mesh, const labelHashSet &patchIDs, const bool correctWalls=true)
 Construct from mesh, fixed-value patch set and flag specifying. More...
 
virtual bool correct (volScalarField &y)
 Correct the given distance-to-patch field. More...
 
virtual bool correct (volScalarField &y, volVectorField &n)
 Correct the given distance-to-patch and normal-to-patch fields. More...
 
- Public Member Functions inherited from patchDistMethod
 TypeName ("patchDistMethod")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, patchDistMethod, dictionary,(const dictionary &dict, const fvMesh &mesh, const labelHashSet &patchIDs),(dict, mesh, patchIDs))
 
 patchDistMethod (const fvMesh &mesh, const labelHashSet &patchIDs)
 Construct from mesh and patch ID set. More...
 
virtual ~patchDistMethod ()
 Destructor. More...
 
const labelHashSetpatchIDs () const
 Return the patchIDs. More...
 
virtual bool movePoints ()
 Update cached geometry when the mesh moves. More...
 
virtual void updateMesh (const mapPolyMesh &)
 Update cached topology and geometry when the mesh changes. More...
 
virtual bool correct (volScalarField &y)=0
 Correct the given distance-to-patch field. More...
 
virtual bool correct (volScalarField &y, volVectorField &n)=0
 Correct the given distance-to-patch and normal-to-patch fields. More...
 
template<class Type >
Foam::wordList patchTypes (const fvMesh &mesh, const labelHashSet &patchIDs)
 

Additional Inherited Members

- Static Public Member Functions inherited from patchDistMethod
static autoPtr< patchDistMethodNew (const dictionary &dict, const fvMesh &mesh, const labelHashSet &patchIDs, const word &defaultPatchDistMethod=word::null)
 
template<class Type >
static wordList patchTypes (const fvMesh &mesh, const labelHashSet &patchIDs)
 Return the patch types for y and n. More...
 
- Protected Member Functions inherited from patchDistMethod
 patchDistMethod (const patchDistMethod &)=delete
 No copy construct. More...
 
void operator= (const patchDistMethod &)=delete
 No copy assignment. More...
 
- Protected Attributes inherited from meshWave
const bool correctWalls_
 Do accurate distance calculation for near-wall cells. More...
 
label nUnset_
 Number of unset cells and faces. More...
 
- Protected Attributes inherited from patchDistMethod
const fvMeshmesh_
 Reference to the mesh. More...
 
const labelHashSet patchIDs_
 Set of patch IDs. More...
 

Detailed Description

Variant of meshWave distance-to-patch method.

Ignores the component in the specified direction. Can be used e.g. to calculate the distance in the z-direction only.

Usage
Example of specification in fvSchemes.wallDist:
    wallDist
    {
        // Mandatory entries (unmodifiable)
        method      directionalMeshWave;
        n           (0 0 1);

        // Optional (inherited) entries (unmodifiable)
        ...
    }

where the entries mean:

Property Description Type Req'd Dflt
method Method name: directionalMeshWave word yes -
n The direction component to ignore vector yes -

The inherited entries are elaborated in:

See also
Foam::wallDist Foam::patchDistMethod::meshWave Foam::patchDistMethod::Poisson Foam::directionalWallPoint
Source files

Definition at line 103 of file directionalMeshWavePatchDistMethod.H.

Constructor & Destructor Documentation

◆ directionalMeshWave()

directionalMeshWave ( const dictionary dict,
const fvMesh mesh,
const labelHashSet patchIDs 
)

Construct from coefficients dictionary, mesh and fixed-value patch set

Definition at line 54 of file directionalMeshWavePatchDistMethod.C.

Member Function Documentation

◆ TypeName()

TypeName ( "directionalMeshWave"  )

Runtime type information.

◆ correct() [1/2]

bool correct ( volScalarField y)
virtual

Correct the given distance-to-patch field.

Reimplemented from meshWave.

Definition at line 68 of file directionalMeshWavePatchDistMethod.C.

References correct(), Foam::dimLength, Foam::dimless, n, IOobject::NO_READ, IOobject::NO_WRITE, patches, y, and Foam::Zero.

Here is the call graph for this function:

◆ correct() [2/2]

bool correct ( volScalarField y,
volVectorField n 
)
virtual

Correct the given distance-to-patch and normal-to-patch fields.

Reimplemented from meshWave.

Definition at line 101 of file directionalMeshWavePatchDistMethod.C.

References patchDataWave< TransferType, TrackingData >::cellData(), Foam::dimLength, patchDataWave< TransferType, TrackingData >::distance(), forAll, n, patchDataWave< TransferType, TrackingData >::nUnset(), patchDataWave< TransferType, TrackingData >::patchData(), patchDataWave< TransferType, TrackingData >::patchDistance(), UPtrList< T >::set(), PtrList< T >::transfer(), and y.

Here is the call graph for this function:

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