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 labelHashSet & patchSet
 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 multiValveEngine & meshMover_
 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: