All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
axesRotation Class Reference

A coordinate rotation specified using global axis. More...

Inheritance diagram for axesRotation:
Collaboration diagram for axesRotation:

Public Member Functions

 TypeName ("axesRotation")
 Runtime type information. More...
 
 axesRotation ()
 Construct null. More...
 
 axesRotation (const vector &axis, const vector &dir)
 Construct from 2 axes. More...
 
 axesRotation (const dictionary &)
 Construct from dictionary. More...
 
 axesRotation (const tensor &R)
 Construct from components. More...
 
 axesRotation (const dictionary &, const objectRegistry &)
 Construct from dictionary and mesh. More...
 
autoPtr< axesRotationclone () const
 Return clone. More...
 
virtual ~axesRotation ()
 Destructor. More...
 
virtual void clear ()
 Reset rotation to an identity rotation. More...
 
virtual void updateCells (const polyMesh &, const labelList &)
 Update the rotation for a list of cells. More...
 
virtual const tensorR () const
 Return local-to-global transformation tensor. More...
 
virtual const tensorRtr () const
 Return global-to-local 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 const tensorFieldTr () const
 Return transformation tensor field. More...
 
virtual tmp< vectorFieldtransform (const vectorField &st) const
 Transform vectorField using transformation tensor field. More...
 
virtual vector transform (const vector &st) const
 Transform vector using transformation tensor. More...
 
virtual tmp< vectorFieldinvTransform (const vectorField &st) const
 Inverse transform vectorField using transformation tensor field. More...
 
virtual vector invTransform (const vector &st) const
 Inverse transform vector using transformation tensor. More...
 
virtual tmp< tensorFieldtransformTensor (const tensorField &st) const
 Transform tensor field using transformation tensorField. More...
 
virtual tensor transformTensor (const tensor &st) const
 Transform tensor using transformation tensorField. More...
 
virtual tmp< tensorFieldtransformTensor (const tensorField &st, const labelList &cellMap) const
 Transform tensor sub-field using transformation tensorField. More...
 
virtual tmp< symmTensorFieldtransformVector (const vectorField &st) const
 Transform vectorField using transformation tensorField and return. More...
 
virtual symmTensor transformVector (const vector &st) const
 Transform vector using transformation tensor and return. More...
 
void operator= (const dictionary &)
 Assign from dictionary. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from coordinateRotation
 TypeName ("coordinateRotation")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, coordinateRotation, objectRegistry,(const dictionary &dict, const objectRegistry &obr),(dict, obr))
 
 declareRunTimeSelectionTable (autoPtr, coordinateRotation, dictionary,(const dictionary &dict),(dict))
 
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< coordinateRotationNew (const dictionary &dict, const objectRegistry &obr)
 Select constructed from dictionary and objectRegistry. More...
 
static autoPtr< coordinateRotationNew (const dictionary &dict)
 Select constructed from dictionary. More...
 
- Protected Member Functions inherited from coordinateRotation
symmTensor transformPrincipal (const tensor &, const vector &) const
 Transform principal. More...
 

Detailed Description

A coordinate rotation specified using global axis.

The rotation is defined by a combination of vectors (e1/e2), (e2/e3) or (e3/e1). Any nonorthogonality will be absorbed into the second vector.

axesRotation
{
    type        axesRotation;
    e1          (1 0 0);
    e2          (0 1 0);
}
Source files

Definition at line 64 of file axesRotation.H.

Constructor & Destructor Documentation

◆ axesRotation() [1/5]

Construct null.

Definition at line 108 of file axesRotation.C.

Referenced by axesRotation::axesRotation(), and axesRotation::clone().

Here is the caller graph for this function:

◆ axesRotation() [2/5]

axesRotation ( const vector axis,
const vector dir 
)

Construct from 2 axes.

Definition at line 116 of file axesRotation.C.

References axesRotation::axesRotation().

Here is the call graph for this function:

◆ axesRotation() [3/5]

axesRotation ( const dictionary dict)

Construct from dictionary.

Definition at line 129 of file axesRotation.C.

References axesRotation::axesRotation(), and axesRotation::operator=().

Here is the call graph for this function:

◆ axesRotation() [4/5]

axesRotation ( const tensor R)

Construct from components.

Definition at line 153 of file axesRotation.C.

◆ axesRotation() [5/5]

axesRotation ( const dictionary dict,
const objectRegistry obr 
)

Construct from dictionary and mesh.

Definition at line 141 of file axesRotation.C.

References axesRotation::operator=().

Here is the call graph for this function:

◆ ~axesRotation()

virtual ~axesRotation ( )
inlinevirtual

Destructor.

Definition at line 125 of file axesRotation.H.

Member Function Documentation

◆ TypeName()

TypeName ( "axesRotation"  )

Runtime type information.

◆ clone()

autoPtr<axesRotation> clone ( ) const
inline

Return clone.

Definition at line 118 of file axesRotation.H.

References axesRotation::axesRotation().

Here is the call graph for this function:

◆ clear()

virtual void clear ( )
inlinevirtual

Reset rotation to an identity rotation.

Implements coordinateRotation.

Definition at line 132 of file axesRotation.H.

References SphericalTensor< Cmpt >::I.

◆ updateCells()

virtual void updateCells ( const polyMesh ,
const labelList  
)
inlinevirtual

Update the rotation for a list of cells.

Implements coordinateRotation.

Definition at line 139 of file axesRotation.H.

◆ R()

virtual const tensor& R ( ) const
inlinevirtual

Return local-to-global transformation tensor.

Implements coordinateRotation.

Definition at line 143 of file axesRotation.H.

◆ Rtr()

virtual const tensor& Rtr ( ) const
inlinevirtual

Return global-to-local transformation tensor.

Implements coordinateRotation.

Definition at line 149 of file axesRotation.H.

◆ e1()

virtual const vector e1 ( ) const
inlinevirtual

Return local Cartesian x-axis in global coordinates.

Implements coordinateRotation.

Definition at line 155 of file axesRotation.H.

References Tensor< Cmpt >::x().

Referenced by axesRotation::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ e2()

virtual const vector e2 ( ) const
inlinevirtual

Return local Cartesian y-axis in global coordinates.

Implements coordinateRotation.

Definition at line 161 of file axesRotation.H.

References Tensor< Cmpt >::y().

Referenced by axesRotation::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ e3()

virtual const vector e3 ( ) const
inlinevirtual

Return local Cartesian z-axis in global coordinates.

Implements coordinateRotation.

Definition at line 167 of file axesRotation.H.

References axesRotation::invTransform(), axesRotation::operator=(), axesRotation::Tr(), axesRotation::transform(), axesRotation::transformTensor(), axesRotation::transformVector(), axesRotation::write(), and Tensor< Cmpt >::z().

Referenced by axesRotation::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Tr()

const Foam::tensorField & Tr ( ) const
virtual

Return transformation tensor field.

Implements coordinateRotation.

Definition at line 162 of file axesRotation.C.

References NotImplemented, and axesRotation::transform().

Referenced by axesRotation::e3().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ transform() [1/2]

Foam::tmp< Foam::vectorField > transform ( const vectorField st) const
virtual

Transform vectorField using transformation tensor field.

Implements coordinateRotation.

Definition at line 170 of file axesRotation.C.

Referenced by axesRotation::e3(), and axesRotation::Tr().

Here is the caller graph for this function:

◆ transform() [2/2]

Foam::vector transform ( const vector st) const
virtual

Transform vector using transformation tensor.

Implements coordinateRotation.

Definition at line 178 of file axesRotation.C.

References axesRotation::invTransform().

Here is the call graph for this function:

◆ invTransform() [1/2]

Foam::tmp< Foam::vectorField > invTransform ( const vectorField st) const
virtual

Inverse transform vectorField using transformation tensor field.

Implements coordinateRotation.

Definition at line 185 of file axesRotation.C.

Referenced by axesRotation::e3(), and axesRotation::transform().

Here is the caller graph for this function:

◆ invTransform() [2/2]

Foam::vector invTransform ( const vector st) const
virtual

Inverse transform vector using transformation tensor.

Implements coordinateRotation.

Definition at line 193 of file axesRotation.C.

References axesRotation::transformTensor().

Here is the call graph for this function:

◆ transformTensor() [1/3]

Foam::tmp< Foam::tensorField > transformTensor ( const tensorField st) const
virtual

Transform tensor field using transformation tensorField.

Implements coordinateRotation.

Definition at line 200 of file axesRotation.C.

References NotImplemented.

Referenced by axesRotation::e3(), axesRotation::invTransform(), and axesRotation::transformTensor().

Here is the caller graph for this function:

◆ transformTensor() [2/3]

Foam::tensor transformTensor ( const tensor st) const
virtual

Transform tensor using transformation tensorField.

Implements coordinateRotation.

Definition at line 210 of file axesRotation.C.

References axesRotation::transformTensor().

Here is the call graph for this function:

◆ transformTensor() [3/3]

Foam::tmp< Foam::tensorField > transformTensor ( const tensorField st,
const labelList cellMap 
) const
virtual

Transform tensor sub-field using transformation tensorField.

Implements coordinateRotation.

Definition at line 219 of file axesRotation.C.

References NotImplemented, and axesRotation::transformVector().

Here is the call graph for this function:

◆ transformVector() [1/2]

Foam::tmp< Foam::symmTensorField > transformVector ( const vectorField st) const
virtual

Transform vectorField using transformation tensorField and return.

symmetric tensorField

Implements coordinateRotation.

Definition at line 230 of file axesRotation.C.

References fld(), forAll, tmp< T >::ref(), List< T >::size(), and coordinateRotation::transformPrincipal().

Referenced by axesRotation::e3(), and axesRotation::transformTensor().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ transformVector() [2/2]

Foam::symmTensor transformVector ( const vector st) const
virtual

Transform vector using transformation tensor and return.

symmetric tensor

Implements coordinateRotation.

Definition at line 246 of file axesRotation.C.

References coordinateRotation::transformPrincipal().

Here is the call graph for this function:

◆ operator=()

void operator= ( const dictionary dict)

Assign from dictionary.

Definition at line 256 of file axesRotation.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::found(), dictionary::lookup(), Foam::Pout, and dictionary::readIfPresent().

Referenced by axesRotation::axesRotation(), and axesRotation::e3().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Implements coordinateRotation.

Definition at line 299 of file axesRotation.C.

References axesRotation::e1(), axesRotation::e2(), axesRotation::e3(), and Foam::writeEntry().

Referenced by axesRotation::e3().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: