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 62 of file spatialTransform.H.
|
inline |
Construct null.
Definition at line 33 of file spatialTransformI.H.
Referenced by spatialTransform::inv(), Foam::Xr(), Foam::Xrx(), Foam::Xry(), Foam::Xrz(), and Foam::Xt().
|
inline |
Construct from components.
Definition at line 41 of file spatialTransformI.H.
|
inline |
Construct from Istream.
Definition at line 51 of file spatialTransformI.H.
|
inline |
Return the rotation tensor.
Definition at line 72 of file spatialTransformI.H.
Referenced by Pxyz::jcalc(), Rxyz::jcalc(), Ryxz::jcalc(), Rzyx::jcalc(), Rs::jcalc(), Foam::operator>>(), rigidBodyMotion::status(), and Foam::RBD::transform().
|
inline |
Return non-const access to the rotation tensor.
Definition at line 77 of file spatialTransformI.H.
|
inline |
Return the translation vector.
Definition at line 82 of file spatialTransformI.H.
Referenced by rigidBodyMotion::cCofR(), Pxyz::jcalc(), Rxyz::jcalc(), Ryxz::jcalc(), Rzyx::jcalc(), Rs::jcalc(), Foam::operator>>(), rigidBodyMotion::status(), Foam::RBD::transform(), and Foam::Xt().
|
inline |
Return non-const access to the translation vector.
Definition at line 87 of file spatialTransformI.H.
|
inline |
Return the transpose transformation tensor ^A{X^*}_B.
X^T
Definition at line 93 of file spatialTransformI.H.
|
inline |
Return the inverse transformation tensor: X^-1.
X^-1 = (E^T, −E.r)
Definition at line 99 of file spatialTransformI.H.
References spatialTransform::spatialTransform().
|
inline |
Return the dual transformation tensor ^B{X^*}_A.
Definition at line 107 of file spatialTransformI.H.
|
inline |
Return transformation tensor ^BX_A.
X
Definition at line 113 of file spatialTransformI.H.
References Foam::Zero.
|
inline |
Inner-product multiply with a transformation tensor.
|
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 166 of file spatialTransformI.H.
References p.
Referenced by rigidBodyMotion::transformPoints().
|
inline |
Transform position p.
X:p = (E . pw, E . (vl - r))
|
friend |
|
friend |