Defines an axis of rotation that rotates around itself and rotates around another axis. More...
Protected Attributes | |
multiRotatingAxis * | axisList_ |
This is device pointer to all axes. More... | |
int32 | parentAxisIndex_ = -1 |
Index of parent axis. More... | |
![]() | |
real | startTime_ = 0 |
real | endTime_ = largeValue |
real | time_ =0 |
bool | isInInterval_ = true |
![]() | |
realx3 | p1_ |
realx3 | v21_ |
Defines an axis of rotation that rotates around itself and rotates around another axis.
This axis rotates around itself and can have one axis of rotation, and that axis of rotation can have another axis of rotatoin and so on.
// This creates an axis around x-axis. This axis rotates round itself at // 1.57 rad/s and at the same time rotates around rotating axis axisName. // axisName is separatly defined in the same dictionray. axis1 { p1 (0 0 0); p2 (1 0 0); omega 1.57; rotationAxis axisName; startTime 1; endTime 5; } axisName { p1 (0 0 0); p2 (0 1 1); omega 3.14; }
Parameter | Type | Description | Optional [default value] |
---|---|---|---|
p1 | realx3 | begin point of axis | No |
p2 | realx3 | end point of axis | No |
omega | real | rotation speed (rad/s) | No |
rotationAxis | word | the axis rotates around this axis | Yes [none] |
startTime | real | start time of rotation (s) | Yes [0] |
endTime | real | end time of rotation (s) | Yes [infinity] |
Definition at line 75 of file multiRotatingAxis.hpp.
|
inline |
Empty Constructor.
Definition at line 93 of file multiRotatingAxis.hpp.
FUNCTION_H multiRotatingAxis | ( | multiRotatingAxisMotion * | axisMotion | ) |
Empty with list of axes.
Definition at line 27 of file multiRotatingAxis.cpp.
FUNCTION_H multiRotatingAxis | ( | multiRotatingAxisMotion * | axisMotion, |
const dictionary & | dict | ||
) |
Construct from dictionary and list of axes.
Definition at line 36 of file multiRotatingAxis.cpp.
References pFlow::endl(), fatalErrorInFunction, fatalExit, and dictionary::globalName().
|
default |
Copy constructor.
|
default |
Destructor.
|
default |
Copy assignment.
|
inline |
Tangential velocity at point p.
Definition at line 118 of file multiRotatingAxis.hpp.
References multiRotatingAxis::axisList_, and multiRotatingAxis::parentAxisIndex().
|
inline |
Translate point p for dt seconds based on the axis information.
Definition at line 135 of file multiRotatingAxis.hpp.
References multiRotatingAxis::axisList_, rotatingAxis::isRotating(), multiRotatingAxis::parentAxisIndex_, and pFlow::rotate().
Referenced by multiRotatingAxis::move().
|
inline |
Does this axis have a parent.
Definition at line 158 of file multiRotatingAxis.hpp.
References multiRotatingAxis::parentAxisIndex_.
Referenced by multiRotatingAxis::move().
|
inline |
Return the index of parent axis.
Definition at line 165 of file multiRotatingAxis.hpp.
References multiRotatingAxis::parentAxisIndex_.
Referenced by multiRotatingAxis::move(), and multiRotatingAxis::pointTangentialVel().
|
inline |
Set the pointer to the list of all axes.
This pointer is device pointer
Definition at line 173 of file multiRotatingAxis.hpp.
References multiRotatingAxis::axisList_.
|
inline |
Move the end points of the axis.
This function moves the end points of this axis, if it has any parrents. It is assumed that the axis with deepest level (with more parrents) is moved first and then the axis with lower levels.
Definition at line 185 of file multiRotatingAxis.hpp.
References multiRotatingAxis::axisList_, multiRotatingAxis::hasParent(), multiRotatingAxis::parentAxisIndex(), line::point1(), line::point2(), line::set(), and multiRotatingAxis::transferPoint().
FUNCTION_H bool read | ( | multiRotatingAxisMotion * | axisMotion, |
const dictionary & | dict | ||
) |
Read from dictionary.
Definition at line 56 of file multiRotatingAxis.cpp.
References dictionary::getValOrSet().
FUNCTION_H bool write | ( | const multiRotatingAxisMotion * | axisMotion, |
dictionary & | dict | ||
) | const |
Write to dictionary.
Definition at line 80 of file multiRotatingAxis.cpp.
References dictionary::add(), and multiRotatingAxisMotion::indexToName().
|
protected |
This is device pointer to all axes.
Definition at line 82 of file multiRotatingAxis.hpp.
Referenced by multiRotatingAxis::move(), multiRotatingAxis::pointTangentialVel(), multiRotatingAxis::setAxisListPtr(), and multiRotatingAxis::transferPoint().
|
protected |
Index of parent axis.
Definition at line 85 of file multiRotatingAxis.hpp.
Referenced by multiRotatingAxis::hasParent(), multiRotatingAxis::parentAxisIndex(), and multiRotatingAxis::transferPoint().