A coordinateRotation defined in the z-x-y Euler convention. More...
Public Member Functions | |
TypeName ("EulerRotation") | |
Runtime type information. More... | |
EulerCoordinateRotation (const dictionary &) | |
Construct from dictionary. More... | |
EulerCoordinateRotation (const dictionary &, const UList< vector > &points) | |
Construct from dictionary and list of points. More... | |
virtual autoPtr< coordinateRotation > | clone () const |
Construct and return a clone. More... | |
virtual void | updatePoints (const UList< vector > &points) |
Update the rotation for a list of points. More... | |
virtual const tensor & | R () const |
Return local-to-global transformation tensor. More... | |
virtual const vector | e1 () const |
Return local Cartesian x-axis in global coordinates. More... | |
virtual const vector | e2 () const |
Return local Cartesian y-axis in global coordinates. More... | |
virtual const vector | e3 () const |
Return local Cartesian z-axis in global coordinates. More... | |
virtual tmp< vectorField > | transform (const vectorField &vf) const |
Transform vectorField using transformation tensor field. More... | |
virtual vector | transform (const vector &v) const |
Transform vector using transformation tensor. More... | |
virtual tmp< vectorField > | invTransform (const vectorField &vf) const |
Inverse transform vectorField using transformation tensor field. More... | |
virtual vector | invTransform (const vector &v) const |
Inverse transform vector using transformation tensor. More... | |
virtual tmp< tensorField > | transform (const tensorField &tf) const |
Transform tensor field using transformation tensorField. More... | |
virtual tensor | transform (const vector &p, const tensor &t) const |
Transform tensor using transformation tensorField. More... | |
virtual symmTensor | transformDiagTensor (const vector &p, const vector &v) const |
Transform diagTensor masquerading as a vector using transformation. More... | |
virtual tmp< symmTensorField > | transformDiagTensor (const vectorField &vf) const |
Transform diagTensorField masquerading as a vectorField. More... | |
virtual void | write (Ostream &) const |
Write. More... | |
Public Member Functions inherited from coordinateRotation | |
TypeName ("coordinateRotation") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, coordinateRotation, dictionary,(const dictionary &dict),(dict)) | |
declareRunTimeSelectionTable (autoPtr, coordinateRotation, points,(const dictionary &dict, const UList< vector > &points),(dict, points)) | |
virtual | ~coordinateRotation () |
Destructor. More... | |
virtual bool | uniform () const |
Return true if the rotation tensor is uniform. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from coordinateRotation | |
static autoPtr< coordinateRotation > | New (const dictionary &dict, const UList< vector > &points) |
Select constructed from dictionary and list of points. More... | |
static autoPtr< coordinateRotation > | New (const dictionary &dict) |
Select constructed from dictionary. More... | |
Protected Member Functions inherited from coordinateRotation | |
symmTensor | transformVectorDiagTensor (const tensor &, const vector &) const |
Transform the vector as if it is a diagonal tensor. More... | |
A coordinateRotation defined in the z-x-y Euler convention.
The 3 rotations are defined in the Euler convention (around Z, around X' and around Z'). For reference and illustration, see http://mathworld.wolfram.com/EulerAngles.html Note, however, that it is the reverse transformation (local->global) that is defined here.
coordinateRotation { type EulerRotation; degrees false; rotation (0 0 3.141592654); }
Definition at line 66 of file EulerCoordinateRotation.H.
EulerCoordinateRotation | ( | const dictionary & | dict | ) |
Construct from dictionary.
Definition at line 83 of file EulerCoordinateRotation.C.
References VectorSpace< Form, Cmpt, Ncmpts >::component(), dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::unitDegrees, Vector< scalar >::X, Vector< scalar >::Y, and Vector< scalar >::Z.
Referenced by EulerCoordinateRotation::clone().
EulerCoordinateRotation | ( | const dictionary & | dict, |
const UList< vector > & | points | ||
) |
Construct from dictionary and list of points.
Definition at line 111 of file EulerCoordinateRotation.C.
TypeName | ( | "EulerRotation" | ) |
Runtime type information.
|
inlinevirtual |
Construct and return a clone.
Implements coordinateRotation.
Definition at line 106 of file EulerCoordinateRotation.H.
References EulerCoordinateRotation::EulerCoordinateRotation().
Update the rotation for a list of points.
Implements coordinateRotation.
Definition at line 118 of file EulerCoordinateRotation.H.
|
inlinevirtual |
Return local-to-global transformation tensor.
Implements coordinateRotation.
Definition at line 122 of file EulerCoordinateRotation.H.
|
inlinevirtual |
Return local Cartesian x-axis in global coordinates.
Implements coordinateRotation.
Definition at line 128 of file EulerCoordinateRotation.H.
References Tensor< Cmpt >::x().
|
inlinevirtual |
Return local Cartesian y-axis in global coordinates.
Implements coordinateRotation.
Definition at line 134 of file EulerCoordinateRotation.H.
References Tensor< Cmpt >::y().
|
inlinevirtual |
Return local Cartesian z-axis in global coordinates.
Implements coordinateRotation.
Definition at line 140 of file EulerCoordinateRotation.H.
References Tensor< Cmpt >::z().
|
virtual |
Transform vectorField using transformation tensor field.
Implements coordinateRotation.
Definition at line 135 of file EulerCoordinateRotation.C.
References NotImplemented.
|
virtual |
Transform vector using transformation tensor.
Implements coordinateRotation.
Definition at line 123 of file EulerCoordinateRotation.C.
|
virtual |
Inverse transform vectorField using transformation tensor field.
Implements coordinateRotation.
Definition at line 145 of file EulerCoordinateRotation.C.
References NotImplemented.
|
virtual |
Inverse transform vector using transformation tensor.
Implements coordinateRotation.
Definition at line 129 of file EulerCoordinateRotation.C.
|
virtual |
Transform tensor field using transformation tensorField.
Implements coordinateRotation.
Definition at line 155 of file EulerCoordinateRotation.C.
References NotImplemented.
|
virtual |
Transform tensor using transformation tensorField.
Implements coordinateRotation.
Definition at line 165 of file EulerCoordinateRotation.C.
|
virtual |
Transform diagTensor masquerading as a vector using transformation.
tensor and return symmTensor
Implements coordinateRotation.
Definition at line 192 of file EulerCoordinateRotation.C.
|
virtual |
Transform diagTensorField masquerading as a vectorField.
using transformation tensorField and return symmTensorField
Implements coordinateRotation.
Definition at line 175 of file EulerCoordinateRotation.C.
References fld(), forAll, tmp< T >::ref(), and List< T >::size().
|
virtual |
Write.
Implements coordinateRotation.
Definition at line 202 of file EulerCoordinateRotation.C.
References Foam::writeEntry().