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, dictionary,(const dictionary &dict),(dict))
 
 declareRunTimeSelectionTable (autoPtr, coordinateRotation, points,(const dictionary &dict, const UList< vector > &points),(dict, points))
 
virtual autoPtr< coordinateRotationclone () const =0
 Construct and return a clone. More...
 
virtual ~coordinateRotation ()
 Destructor. More...
 
virtual void updatePoints (const UList< vector > &points)=0
 Update the rotation for a list of points. More...
 
virtual const tensorR () const =0
 Return local-to-global 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 bool uniform () const
 Return true if the rotation tensor is uniform. More...
 
virtual vector transform (const vector &st) const =0
 Transform vector using transformation tensor. More...
 
virtual tmp< vectorFieldtransform (const vectorField &st) const =0
 Transform vectorField using transformation tensor field. More...
 
virtual vector invTransform (const vector &st) const =0
 Inverse transform vector using transformation tensor. More...
 
virtual tmp< vectorFieldinvTransform (const vectorField &st) const =0
 Inverse transform vectorField using transformation tensor field. More...
 
virtual tensor transformTensor (const tensor &st) const =0
 Transform tensor using transformation tensorField. More...
 
virtual tmp< tensorFieldtransformTensor (const tensorField &st) const =0
 Transform tensor field using transformation tensorField. More...
 
virtual symmTensor transformVector (const vector &st) const =0
 Transform vector using transformation tensor and return. More...
 
virtual tmp< symmTensorFieldtransformVector (const vectorField &st) const =0
 Transform vectorField using transformation tensorField and return. More...
 
virtual void write (Ostream &) const =0
 Write. More...
 

Static Public Member Functions

static autoPtr< coordinateRotationNew (const dictionary &dict, const UList< vector > &points)
 Select constructed from dictionary and list of points. 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()

virtual ~coordinateRotation ( )
inlinevirtual

Destructor.

Definition at line 136 of file coordinateRotation.H.

References coordinateRotation::e1(), coordinateRotation::e2(), coordinateRotation::e3(), coordinateRotation::R(), and coordinateRotation::updatePoints().

Here is the call graph for this function:

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  ,
dictionary  ,
(const dictionary &dict ,
(dict  
)

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( autoPtr  ,
coordinateRotation  ,
points  ,
(const dictionary &dict, const UList< vector > &points ,
(dict, points  
)

◆ clone()

virtual autoPtr<coordinateRotation> clone ( ) const
pure virtual

Construct and return a clone.

Implemented in axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

◆ New() [1/2]

Foam::autoPtr< Foam::coordinateRotation > New ( const dictionary dict,
const UList< vector > &  points 
)
static

Select constructed from dictionary and list of points.

Definition at line 65 of file coordinateRotationNew.C.

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

Referenced by coordinateRotation::New().

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 32 of file coordinateRotationNew.C.

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

Here is the call graph for this function:

◆ updatePoints()

virtual void updatePoints ( const UList< vector > &  points)
pure virtual

Update the rotation for a list of points.

Implemented in axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

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 axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

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 axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

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 axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

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 axesRotation, cylindrical, STARCDCoordinateRotation, and EulerCoordinateRotation.

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 158 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 vector transform ( const vector st) const
pure virtual

Transform vector using transformation tensor.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ transform() [2/2]

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

Transform vectorField using transformation tensor field.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

◆ invTransform() [1/2]

virtual vector invTransform ( const vector st) const
pure virtual

Inverse transform vector using transformation tensor.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ invTransform() [2/2]

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

Inverse transform vectorField using transformation tensor field.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

◆ transformTensor() [1/2]

virtual tensor transformTensor ( const tensor st) const
pure virtual

Transform tensor using transformation tensorField.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

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

Here is the caller graph for this function:

◆ transformTensor() [2/2]

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

Transform tensor field using transformation tensorField.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

◆ transformVector() [1/2]

virtual symmTensor transformVector ( const vector st) const
pure virtual

Transform vector using transformation tensor and return.

symmetrical tensor

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

◆ transformVector() [2/2]

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

Transform vectorField using transformation tensorField and return.

symmetrical tensorField

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

◆ write()

virtual void write ( Ostream ) const
pure virtual

Write.

Implemented in cylindrical, axesRotation, STARCDCoordinateRotation, and EulerCoordinateRotation.

Referenced by coordinateRotation::uniform().

Here is the caller graph for this function:

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