All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
coordinateRotation Class Referenceabstract

Abstract base class for coordinate rotation. More...

Inheritance diagram for coordinateRotation:

Public Member Functions

 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 void clear ()=0
 Reset rotation to an identity rotation. More...
 
virtual void updateCells (const polyMesh &mesh, const labelList &cells)=0
 Update the rotation for a list of cells. More...
 
virtual const tensorR () const =0
 Return local-to-global transformation tensor. More...
 
virtual const tensorRtr () const =0
 Return global-to-local transformation tensor. More...
 
virtual const vector e1 () const =0
 Return local Cartesian x-axis. More...
 
virtual const vector e2 () const =0
 Return local Cartesian y-axis. More...
 
virtual const vector e3 () const =0
 Return local Cartesian z-axis. More...
 
virtual const tensorFieldTr () const =0
 Return local-to-global transformation tensor. More...
 
virtual bool uniform () const
 Return true if the rotation tensor is uniform. More...
 
virtual tmp< vectorFieldtransform (const vectorField &st) const =0
 Transform vectorField using transformation tensor field. More...
 
virtual vector transform (const vector &st) const =0
 Transform vector using transformation tensor. More...
 
virtual tmp< vectorFieldinvTransform (const vectorField &st) const =0
 Inverse transform vectorField using transformation tensor field. More...
 
virtual vector invTransform (const vector &st) const =0
 Inverse transform vector using transformation tensor. More...
 
virtual tmp< tensorFieldtransformTensor (const tensorField &st) const =0
 Transform tensor field using transformation tensorField. More...
 
virtual tmp< tensorFieldtransformTensor (const tensorField &st, const labelList &cellMap) const =0
 Transform tensor sub-field using transformation tensorField. More...
 
virtual tensor transformTensor (const tensor &st) const =0
 Transform tensor using transformation tensorField. More...
 
virtual tmp< symmTensorFieldtransformVector (const vectorField &st) const =0
 Transform vectorField using transformation tensorField and return. More...
 
virtual symmTensor transformVector (const vector &st) const =0
 Transform vector using transformation tensor and return. More...
 
virtual void write (Ostream &) const =0
 Write. More...
 

Static Public Member Functions

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

symmTensor transformPrincipal (const tensor &, const vector &) const
 Transform principal. More...
 

Detailed Description

Abstract base class for coordinate rotation.

coordinateRotation
{
    type        axesRotation
    e1          (1 0 0);
    e2          (0 1 0);
}

Types of coordinateRotation:

  1. axesRotation
  2. STARCDRotation
  3. cylindrical
  4. EulerCoordinateRotation
Source files

Definition at line 70 of file coordinateRotation.H.

Constructor & Destructor Documentation

◆ ~coordinateRotation()

Member Function Documentation

◆ transformPrincipal()

Foam::symmTensor transformPrincipal ( const tensor tt,
const vector st 
) const
protected

◆ TypeName()

TypeName ( "coordinateRotation"  )

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

declareRunTimeSelectionTable ( autoPtr  ,
coordinateRotation  ,
objectRegistry  ,
(const dictionary &dict, const objectRegistry &obr)  ,
(dict, obr)   
)

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( autoPtr  ,
coordinateRotation  ,
dictionary  ,
(const dictionary &dict ,
(dict  
)

◆ New() [1/2]

Foam::autoPtr< Foam::coordinateRotation > New ( const dictionary dict,
const objectRegistry obr 
)
static

Select constructed from dictionary and objectRegistry.

Definition at line 32 of file coordinateRotationNew.C.

References dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, dictionary::lookup(), Foam::nl, and Foam::Pout.

Referenced by coordinateSystem::init().

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

◆ New() [2/2]

Foam::autoPtr< Foam::coordinateRotation > New ( const dictionary dict)
static

Select constructed from dictionary.

Definition at line 65 of file coordinateRotationNew.C.

References dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, dictionary::lookup(), Foam::nl, and Foam::Pout.

Here is the call graph for this function:

◆ clear()

virtual void clear ( )
pure virtual

Reset rotation to an identity rotation.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ updateCells()

virtual void updateCells ( const polyMesh mesh,
const labelList cells 
)
pure virtual

Update the rotation for a list of cells.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ R()

virtual const tensor& R ( ) const
pure virtual

Return local-to-global transformation tensor.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by Foam::operator!=(), and coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ Rtr()

virtual const tensor& Rtr ( ) const
pure virtual

Return global-to-local transformation tensor.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ e1()

virtual const vector e1 ( ) const
pure virtual

Return local Cartesian x-axis.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ e2()

virtual const vector e2 ( ) const
pure virtual

Return local Cartesian y-axis.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ e3()

virtual const vector e3 ( ) const
pure virtual

Return local Cartesian z-axis.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ Tr()

virtual const tensorField& Tr ( ) const
pure virtual

Return local-to-global transformation tensor.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::~coordinateRotation().

Here is the caller graph for this function:

◆ uniform()

virtual bool uniform ( ) const
inlinevirtual

Return true if the rotation tensor is uniform.

Reimplemented in cylindrical.

Definition at line 166 of file coordinateRotation.H.

References coordinateRotation::invTransform(), coordinateRotation::transform(), coordinateRotation::transformTensor(), coordinateRotation::transformVector(), and coordinateRotation::write().

Here is the call graph for this function:

◆ transform() [1/2]

virtual tmp<vectorField> transform ( const vectorField st) const
pure virtual

Transform vectorField using transformation tensor field.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ transform() [2/2]

virtual vector transform ( const vector st) const
pure virtual

Transform vector using transformation tensor.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

◆ invTransform() [1/2]

virtual tmp<vectorField> invTransform ( const vectorField st) const
pure virtual

Inverse transform vectorField using transformation tensor field.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ invTransform() [2/2]

virtual vector invTransform ( const vector st) const
pure virtual

Inverse transform vector using transformation tensor.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

◆ transformTensor() [1/3]

virtual tmp<tensorField> transformTensor ( const tensorField st) const
pure virtual

Transform tensor field using transformation tensorField.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by fixedCoeff::calcTransformModelData(), DarcyForchheimer::calcTransformModelData(), and coordinateRotation::uniform().

Here is the caller graph for this function:

◆ transformTensor() [2/3]

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

Transform tensor sub-field using transformation tensorField.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

◆ transformTensor() [3/3]

virtual tensor transformTensor ( const tensor st) const
pure virtual

Transform tensor using transformation tensorField.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

◆ transformVector() [1/2]

virtual tmp<symmTensorField> transformVector ( const vectorField st) const
pure virtual

Transform vectorField using transformation tensorField and return.

symmetrical tensorField

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ transformVector() [2/2]

virtual symmTensor transformVector ( const vector st) const
pure virtual

Transform vector using transformation tensor and return.

symmetrical tensor

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

◆ write()

virtual void write ( Ostream ) const
pure virtual

Write.

Implemented in cylindrical, axesRotation, EulerCoordinateRotation, and STARCDCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

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