Rotating axis motion model for walls. More...
Classes | |
class | Model |
Motion model class to be passed to computational units/kernels for transfing points and returning velocities at various positions. More... | |
Public Member Functions | |
TypeInfoNV ("rotatingAxisMotion") | |
Type info. More... | |
FUNCTION_H | rotatingAxisMotion () |
Empty. More... | |
FUNCTION_H | rotatingAxisMotion (const dictionary &dict) |
Construct with dictionary. More... | |
FUNCTION_H | rotatingAxisMotion (const rotatingAxisMotion &)=default |
Copy constructor. More... | |
rotatingAxisMotion (rotatingAxisMotion &&)=delete | |
No move constructor. More... | |
FUNCTION_H rotatingAxisMotion & | operator= (const rotatingAxisMotion &)=default |
Copy assignment. More... | |
rotatingAxisMotion & | operator= (rotatingAxisMotion &&)=delete |
No move assignment. More... | |
FUNCTION_H | ~rotatingAxisMotion ()=default |
Destructor. More... | |
Model | getModel (real t) |
Return the motion model at time t. More... | |
INLINE_FUNCTION_H int32 | nameToIndex (const word &name) const |
Motion component name to index. More... | |
INLINE_FUNCTION_H word | indexToName (label i) const |
Motion index to motion component name. More... | |
INLINE_FUNCTION_HD bool | isMoving () const |
Are walls moving. More... | |
INLINE_FUNCTION_H bool | move (real t, real dt) |
Move. More... | |
FUNCTION_H bool | read (iIstream &is) |
Read from input stream is. More... | |
FUNCTION_H bool | write (iOstream &os) const |
Write to output stream os. More... | |
Protected Types | |
using | axisVector_HD = VectorDual< rotatingAxis > |
Protected Member Functions | |
bool | readDictionary (const dictionary &dict) |
Read from dictionary. More... | |
bool | writeDictionary (dictionary &dict) const |
Write to dictionary. More... | |
Protected Attributes | |
axisVector_HD | axis_ |
Vector to store axes. More... | |
wordList | axisName_ |
Names of axes. More... | |
label | numAxis_ = 0 |
Number of axes components. More... | |
Rotating axis motion model for walls.
This class is used for simulaiton that at least one wall components is moving according to rotatingAxis motion mode. One or more than one motion components can be defined in rotatingAxisMotionInfo dictionary
// In geometryDict file, this will defines rotating walls during simulation ... motionModel rotatingAxisMotion; rotatingAxisMotionInfo { rotationAxis1 { // the definition based on class rotatingAxis } rotatoinAxis2 { // the definition based on calss rotatingAxis } } ...
Definition at line 65 of file rotatingAxisMotion.hpp.
|
protected |
Definition at line 121 of file rotatingAxisMotion.hpp.
Empty.
Definition at line 115 of file rotatingAxisMotion.cpp.
rotatingAxisMotion | ( | const dictionary & | dict | ) |
Construct with dictionary.
Definition at line 119 of file rotatingAxisMotion.cpp.
References fatalExit.
|
default |
Copy constructor.
|
delete |
No move constructor.
|
default |
Destructor.
|
protected |
Read from dictionary.
Definition at line 27 of file rotatingAxisMotion.cpp.
References dictionary::dictionaryKeywords(), pFlow::endl(), fatalErrorInFunction, dictionary::getVal(), and dictionary::subDict().
|
protected |
Write to dictionary.
Definition at line 91 of file rotatingAxisMotion.cpp.
References dictionary::add(), pFlow::endl(), fatalErrorInFunction, ForAll, and dictionary::subDictOrCreate().
TypeInfoNV | ( | "rotatingAxisMotion" | ) |
Type info.
|
default |
Copy assignment.
|
delete |
No move assignment.
Return the motion model at time t.
Definition at line 173 of file rotatingAxisMotion.hpp.
References rotatingAxisMotion::axis_, VectorDual< T, MemorySpace >::deviceVector(), VectorDual< T, MemorySpace >::modifyOnHost(), rotatingAxisMotion::numAxis_, and VectorDual< T, MemorySpace >::syncViews().
|
inline |
Motion component name to index.
Definition at line 187 of file rotatingAxisMotion.hpp.
References rotatingAxisMotion::axisName_, fatalErrorInFunction, fatalExit, and List< T >::findi().
|
inline |
Motion index to motion component name.
Definition at line 205 of file rotatingAxisMotion.hpp.
References rotatingAxisMotion::axisName_, pFlow::endl(), fatalErrorInFunction, fatalExit, and rotatingAxisMotion::numAxis_.
|
inline |
Are walls moving.
Definition at line 222 of file rotatingAxisMotion.hpp.
|
inline |
Move.
Definition at line 229 of file rotatingAxisMotion.hpp.
bool read | ( | iIstream & | is | ) |
Read from input stream is.
Definition at line 130 of file rotatingAxisMotion.cpp.
References ioErrorInFile, IOstream::lineNumber(), pFlow::motionModelFile__, IOstream::name(), and dictionary::read().
bool write | ( | iOstream & | os | ) | const |
Write to output stream os.
Definition at line 151 of file rotatingAxisMotion.cpp.
References ioErrorInFile, IOstream::lineNumber(), pFlow::motionModelFile__, IOstream::name(), and dictionary::write().
|
protected |
Vector to store axes.
Definition at line 124 of file rotatingAxisMotion.hpp.
Referenced by rotatingAxisMotion::getModel().
|
protected |
Names of axes.
Definition at line 127 of file rotatingAxisMotion.hpp.
Referenced by rotatingAxisMotion::indexToName(), and rotatingAxisMotion::nameToIndex().
|
protected |
Number of axes components.
Definition at line 130 of file rotatingAxisMotion.hpp.
Referenced by rotatingAxisMotion::getModel(), and rotatingAxisMotion::indexToName().