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 |
Definition at line 249 of file multiValveEngine.H.
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.
|
inlinevirtual |
Destructor.
Definition at line 370 of file multiValveEngine.H.
|
protected |
Scale the mesh point deformation with distance functions.
w.r.t. moving patches, static patches and a frozen zones.
Definition at line 33 of file movingObject.C.
References pointConstraints::constrain(), Foam::cos(), multiValveEngine::movingObject::cosine_, forAll, Foam::max(), Foam::min(), DemandDrivenMeshObject< pointMesh, TopoChangeableMeshObject, pointConstraints >::New(), Foam::constant::mathematical::pi(), GeometricField< Type, PatchField, GeoMesh >::primitiveField(), GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), multiValveEngine::movingObject::scale_, and regIOobject::write().
|
protected |
Definition at line 115 of file movingObject.C.
References forAll, Foam::mag(), and Foam::constant::mathematical::pi().
|
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().
|
protected |
Patch-set construction.
Definition at line 163 of file movingObject.C.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
Referenced by multiValveEngine::movingObject::movingObject().
|
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().
|
protected |
Definition at line 215 of file movingObject.C.
References Foam::endl(), forAll, Foam::Info, HashSet< Key, Hash >::insert(), and List< T >::size().
|
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().
|
friend |
Definition at line 251 of file multiValveEngine.H.
|
protected |
Coefficients dictionary.
Definition at line 258 of file multiValveEngine.H.
|
protected |
Reference to engine mesh mover.
Definition at line 264 of file multiValveEngine.H.
const word name |
Name of the object.
Definition at line 269 of file multiValveEngine.H.
Referenced by multiValveEngine::movingObject::movingObject(), multiValveEngineState::write(), and multiValveEngineState::writeFileHeader().
const vector axis |
Axis.
Definition at line 272 of file multiValveEngine.H.
Piston motion function.
Definition at line 280 of file multiValveEngine.H.
|
protected |
Object patchSet.
Definition at line 283 of file multiValveEngine.H.
|
protected |
Patches which must not deform during mesh motion.
Definition at line 286 of file multiValveEngine.H.
|
protected |
Distance from object beyond which the mesh does not deform.
Definition at line 289 of file multiValveEngine.H.
|
protected |
Distance from object within mesh nodes move.
along with the patch
Definition at line 293 of file multiValveEngine.H.
|
protected |
Distance from static wall patch at domain perimeter.
within mesh nodes do not move
Definition at line 297 of file multiValveEngine.H.
|
protected |
Definition at line 299 of file multiValveEngine.H.
|
protected |
Definition at line 301 of file multiValveEngine.H.
|
protected |
Points to move when cell zone is supplied.
Definition at line 304 of file multiValveEngine.H.
|
protected |
Interpolation scale (1 at moving patches, 0 at far-field)
Definition at line 307 of file multiValveEngine.H.
Referenced by multiValveEngine::movingObject::calcScale().
|
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().
|
protected |
Update the scale_ field when the travel exceeds travelInterval.
Definition at line 314 of file multiValveEngine.H.
|
mutableprotected |
Count of the scale_ field updates.
Definition at line 317 of file multiValveEngine.H.
|
mutableprotected |
Position at last scale update.
Definition at line 320 of file multiValveEngine.H.
const labelHashSet& patchSet |
Object patchSet.
Definition at line 357 of file multiValveEngine.H.