multiValveEngine::movingObject Class Reference
Inheritance diagram for multiValveEngine::movingObject:
Collaboration diagram for multiValveEngine::movingObject:

Public Member Functions

 movingObject (const word &name, const multiValveEngine &engine, const dictionary &dict)
 Construct from dictionary. More...
 
virtual ~movingObject ()
 Destructor. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 

Public Attributes

const word name
 Name of the object. More...
 
const vector axis
 Axis. More...
 
const labelHashSetpatchSet
 Object patchSet. More...
 

Protected Member Functions

void calcScale (const pointMesh &pMesh, const scalarField &pDistMoving, const scalarField &pDistStatic, scalar dMoving, scalar dMax, scalar dStatic)
 Scale the mesh point deformation with distance functions. More...
 
void transformPoints (pointField &newPoints, const vector &translationVector)
 
void createStaticPatchSet ()
 Generate staticPatchSet_ based on patch entries. More...
 
void initPatchSets ()
 Patch-set construction. More...
 
labelHashSet movingPointZones () const
 
labelHashSet staticPointZones () const
 

Protected Attributes

dictionary dict_
 Coefficients dictionary. More...
 
const multiValveEnginemeshMover_
 Reference to engine mesh mover. More...
 
autoPtr< Function1< scalar > > motion_
 Piston motion function. More...
 
labelHashSet patchSet_
 Object patchSet. More...
 
labelHashSet staticPatchSet_
 Patches which must not deform during mesh motion. More...
 
scalar maxMotionDistance_
 Distance from object beyond which the mesh does not deform. More...
 
scalar movingFrozenLayerThickness_
 Distance from object within mesh nodes move. More...
 
scalar staticFrozenLayerThickness_
 Distance from static wall patch at domain perimeter. More...
 
wordReList movingPointZones_
 
wordReList frozenPointZones_
 
labelList pointIDs_
 Points to move when cell zone is supplied. More...
 
pointScalarField scale_
 Interpolation scale (1 at moving patches, 0 at far-field) More...
 
Switch cosine_
 Switch to use cosine-based scaling. More...
 
const scalar travelInterval_
 Update the scale_ field when the travel exceeds travelInterval. More...
 
label executionCount_
 Count of the scale_ field updates. More...
 
scalar position0_
 Position at last scale update. More...
 

Friends

class multiValveEngine
 

Detailed Description

Definition at line 249 of file multiValveEngine.H.

Constructor & Destructor Documentation

◆ movingObject()

movingObject ( const word name,
const multiValveEngine engine,
const dictionary dict 
)

Construct from dictionary.

Definition at line 274 of file movingObject.C.

References Foam::endl(), Foam::indent(), Foam::Info, multiValveEngine::movingObject::initPatchSets(), and multiValveEngine::movingObject::name.

Here is the call graph for this function:

◆ ~movingObject()

virtual ~movingObject ( )
inlinevirtual

Destructor.

Definition at line 370 of file multiValveEngine.H.

Member Function Documentation

◆ calcScale()

void calcScale ( const pointMesh pMesh,
const scalarField pDistMoving,
const scalarField pDistStatic,
scalar  dMoving,
scalar  dMax,
scalar  dStatic 
)
protected

◆ transformPoints()

void transformPoints ( pointField newPoints,
const vector translationVector 
)
protected

Definition at line 115 of file movingObject.C.

References forAll, Foam::mag(), and Foam::constant::mathematical::pi().

Here is the call graph for this function:

◆ createStaticPatchSet()

void createStaticPatchSet ( )
protected

Generate staticPatchSet_ based on patch entries.

Definition at line 141 of file movingObject.C.

References polyPatch::boundaryMesh(), HashTable< T, Key, Hash >::clear(), polyPatch::constraintType(), forAll, patchIdentifier::index(), and HashSet< Key, Hash >::insert().

Here is the call graph for this function:

◆ initPatchSets()

void initPatchSets ( )
protected

Patch-set construction.

Definition at line 163 of file movingObject.C.

References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.

Referenced by multiValveEngine::movingObject::movingObject().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ movingPointZones()

Foam::labelHashSet movingPointZones ( ) const
protected

Definition at line 183 of file movingObject.C.

References Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), Foam::name(), and List< T >::size().

Here is the call graph for this function:

◆ staticPointZones()

Foam::labelHashSet staticPointZones ( ) const
protected

Definition at line 215 of file movingObject.C.

References Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), and List< T >::size().

Here is the call graph for this function:

◆ mapMesh()

void mapMesh ( const polyMeshMap )
virtual

Update from another mesh using the given map.

Reimplemented in multiValveEngine::pistonObject.

Definition at line 336 of file movingObject.C.

References Foam::Zero.

Referenced by multiValveEngine::pistonObject::mapMesh().

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ multiValveEngine

friend class multiValveEngine
friend

Definition at line 251 of file multiValveEngine.H.

Member Data Documentation

◆ dict_

dictionary dict_
protected

Coefficients dictionary.

Definition at line 258 of file multiValveEngine.H.

◆ meshMover_

const multiValveEngine& meshMover_
protected

Reference to engine mesh mover.

Definition at line 264 of file multiValveEngine.H.

◆ name

◆ axis

const vector axis

Axis.

Definition at line 272 of file multiValveEngine.H.

◆ motion_

autoPtr<Function1<scalar> > motion_
protected

Piston motion function.

Definition at line 280 of file multiValveEngine.H.

◆ patchSet_

labelHashSet patchSet_
protected

Object patchSet.

Definition at line 283 of file multiValveEngine.H.

◆ staticPatchSet_

labelHashSet staticPatchSet_
protected

Patches which must not deform during mesh motion.

Definition at line 286 of file multiValveEngine.H.

◆ maxMotionDistance_

scalar maxMotionDistance_
protected

Distance from object beyond which the mesh does not deform.

Definition at line 289 of file multiValveEngine.H.

◆ movingFrozenLayerThickness_

scalar movingFrozenLayerThickness_
protected

Distance from object within mesh nodes move.

along with the patch

Definition at line 293 of file multiValveEngine.H.

◆ staticFrozenLayerThickness_

scalar staticFrozenLayerThickness_
protected

Distance from static wall patch at domain perimeter.

within mesh nodes do not move

Definition at line 297 of file multiValveEngine.H.

◆ movingPointZones_

wordReList movingPointZones_
protected

Definition at line 299 of file multiValveEngine.H.

◆ frozenPointZones_

wordReList frozenPointZones_
protected

Definition at line 301 of file multiValveEngine.H.

◆ pointIDs_

labelList pointIDs_
protected

Points to move when cell zone is supplied.

Definition at line 304 of file multiValveEngine.H.

◆ scale_

pointScalarField scale_
protected

Interpolation scale (1 at moving patches, 0 at far-field)

Definition at line 307 of file multiValveEngine.H.

Referenced by multiValveEngine::movingObject::calcScale().

◆ cosine_

Switch cosine_
protected

Switch to use cosine-based scaling.

for the boundary point motion

Definition at line 311 of file multiValveEngine.H.

Referenced by multiValveEngine::movingObject::calcScale().

◆ travelInterval_

const scalar travelInterval_
protected

Update the scale_ field when the travel exceeds travelInterval.

Definition at line 314 of file multiValveEngine.H.

◆ executionCount_

label executionCount_
mutableprotected

Count of the scale_ field updates.

Definition at line 317 of file multiValveEngine.H.

◆ position0_

scalar position0_
mutableprotected

Position at last scale update.

Definition at line 320 of file multiValveEngine.H.

◆ patchSet

const labelHashSet& patchSet

Object patchSet.

Definition at line 357 of file multiValveEngine.H.


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