Compact representation of the Plücker spatial transformation tensor in terms of the rotation tensor E
and translation vector r
.
More...
Classes | |
class | dual |
Wrapper-class to provide dual functions and operators. More... | |
class | transpose |
Wrapper-class to provide transpose functions and operators. More... | |
Public Member Functions | |
spatialTransform () | |
Construct null. More... | |
spatialTransform (const tensor &E, const vector &r) | |
Construct from components. More... | |
spatialTransform (Istream &) | |
Construct from Istream. More... | |
const tensor & | E () const |
Return the rotation tensor. More... | |
tensor & | E () |
Return non-const access to the rotation tensor. More... | |
const vector & | r () const |
Return the translation vector. More... | |
vector & | r () |
Return non-const access to the translation vector. More... | |
transpose | T () const |
Return the transpose transformation tensor ^A{X^*}_B. More... | |
spatialTransform | inv () const |
Return the inverse transformation tensor: X^-1. More... | |
dual | operator* () const |
Return the dual transformation tensor ^B{X^*}_A. More... | |
operator spatialTensor () const | |
Return transformation tensor ^BX_A. More... | |
void | operator &= (const spatialTransform &X) |
Inner-product multiply with a transformation tensor. More... | |
spatialTransform | operator & (const spatialTransform &X) const |
Return the inner-product of two transformation tensors. More... | |
spatialVector | operator & (const spatialVector &v) const |
Transform v: ^BX_A . v. More... | |
vector | transformPoint (const vector &p) const |
Transform position p. More... | |
spatialVector | operator && (const spatialVector &v) const |
Transform position p. More... | |
Friends | |
Istream & | operator>> (Istream &, spatialTransform &) |
Ostream & | operator<< (Ostream &, const spatialTransform &) |
Compact representation of the Plücker spatial transformation tensor in terms of the rotation tensor E
and translation vector r
.
See Chapter 2 and Appendix A in reference:
Featherstone, R. (2008). Rigid body dynamics algorithms. Springer.
Definition at line 68 of file spatialTransform.H.
|
inline |
Construct null.
Definition at line 38 of file spatialTransformI.H.
Referenced by spatialTransform::inv(), spatialTransform::operator spatialTensor(), Foam::operator<<(), and Foam::Xt().
|
inline |
Construct from components.
Definition at line 46 of file spatialTransformI.H.
|
inline |
Construct from Istream.
Definition at line 56 of file spatialTransformI.H.
|
inline |
Return the rotation tensor.
Definition at line 77 of file spatialTransformI.H.
Referenced by Pxyz::jcalc(), Ryxz::jcalc(), Rzyx::jcalc(), Rxyz::jcalc(), Rs::jcalc(), spatialTransform::transpose::operator spatialTensor(), spatialTransform::dual::operator spatialTensor(), Foam::operator<<(), Foam::operator>>(), rigidBodyMotion::status(), and Foam::RBD::transform().
|
inline |
Return non-const access to the rotation tensor.
Definition at line 82 of file spatialTransformI.H.
|
inline |
Return the translation vector.
Definition at line 87 of file spatialTransformI.H.
Referenced by Pxyz::jcalc(), Ryxz::jcalc(), Rzyx::jcalc(), Rxyz::jcalc(), Rs::jcalc(), spatialTransform::transpose::operator spatialTensor(), spatialTransform::dual::operator spatialTensor(), Foam::operator<<(), Foam::operator>>(), rigidBodyMotion::status(), and Foam::RBD::transform().
|
inline |
Return non-const access to the translation vector.
Definition at line 92 of file spatialTransformI.H.
|
inline |
Return the transpose transformation tensor ^A{X^*}_B.
X^T
Definition at line 98 of file spatialTransformI.H.
|
inline |
Return the inverse transformation tensor: X^-1.
X^-1 = (E^T, −E.r)
Definition at line 104 of file spatialTransformI.H.
References spatialTransform::spatialTransform().
|
inline |
Return the dual transformation tensor ^B{X^*}_A.
Definition at line 112 of file spatialTransformI.H.
References spatialTransform::dual::dual().
|
inline |
Return transformation tensor ^BX_A.
X
Definition at line 118 of file spatialTransformI.H.
References spatialTransform::operator &=(), spatialTransform::spatialTransform(), spatialTransform::transformPoint(), and Foam::Zero.
|
inline |
Inner-product multiply with a transformation tensor.
Referenced by spatialTransform::operator spatialTensor().
|
inline |
Return the inner-product of two transformation tensors.
|
inline |
Transform v: ^BX_A . v.
X.v = (E . vw, E . (vl - r^vw))
|
inline |
Transform position p.
X:p = E . (pl - r)
Definition at line 171 of file spatialTransformI.H.
Referenced by spatialTransform::operator spatialTensor(), and rigidBodyMotion::transformPoints().
|
inline |
Transform position p.
X:p = (E . pw, E . (vl - r))
|
friend |
|
friend |