Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
axes Class Reference

A coordinateRotation specified using global axes. More...

Inheritance diagram for axes:
Inheritance graph
[legend]
Collaboration diagram for axes:
Collaboration graph
[legend]

Public Types

enum  axisOrder { E1_E2, E2_E3, E3_E1, E3_E1_COMPAT }
 

Public Member Functions

 TypeNameNoDebug ("axes")
 
 axes ()
 
 axes (const axes &crot)
 
 axes (const vector &axis1, const vector &axis2, axisOrder order=E3_E1)
 
 axes (const vector &axis)
 
 axes (const dictionary &dict)
 
autoPtr< coordinateRotationclone () const
 
virtual ~axes ()=default
 
virtual void clear ()
 
virtual tensor R () const
 
virtual void write (Ostream &os) const
 
virtual void writeEntry (const word &keyword, Ostream &os) const
 
- Public Member Functions inherited from coordinateRotation
 TypeNameNoDebug ("coordinateRotation")
 
 declareRunTimeSelectionTable (autoPtr, coordinateRotation, dictionary,(const dictionary &dict),(dict))
 
virtual ~coordinateRotation ()=default
 

Static Public Member Functions

static tensor rotation (const vector &axis1, const vector &axis2, axisOrder order=E3_E1)
 
- Static Public Member Functions inherited from coordinateRotation
static autoPtr< coordinateRotationNew (const dictionary &dict)
 

Protected Member Functions

void read (const dictionary &dict)
 

Protected Attributes

vector axis1_
 
vector axis2_
 
axisOrder order_
 

Additional Inherited Members

- Static Protected Member Functions inherited from coordinateRotation
static vector findOrthogonal (const vector &axis)
 

Detailed Description

A coordinateRotation specified using global axes.

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

rotation
{
    type        axes;
    e1          (1 0 0);
    e2          (0 1 0);
}


Dictionary entries

Property Description Required Default
type type name: axes (previously axesRotation) yes
e1 local x-axis partly
e2 local y-axis partly
e3 local z-axis partly
Note
It is also possible to specify in terms of axis and direction. For cylindrical coordinates, the axis would correspond to the z-axis and the direction to the r-axis.
Source files

Definition at line 100 of file axesRotation.H.

Member Enumeration Documentation

◆ axisOrder

enum axisOrder
Enumerator
E1_E2 

The axis1 (dominant) is local X, axis2 is local Y.

E2_E3 

The axis1 (dominant) is local Y, axis2 is local Z.

E3_E1 

The axis1 (dominant) is local Z, axis2 is local X.

E3_E1_COMPAT 

E3_E1 specified as axis/direction.

Definition at line 108 of file axesRotation.H.

Constructor & Destructor Documentation

◆ axes() [1/5]

axes ( )

Definition at line 196 of file axesRotation.C.

◆ axes() [2/5]

axes ( const axes crot)

Definition at line 205 of file axesRotation.C.

◆ axes() [3/5]

axes ( const vector axis1,
const vector axis2,
axisOrder  order = E3_E1 
)

Definition at line 215 of file axesRotation.C.

◆ axes() [4/5]

axes ( const vector axis)
explicit

Definition at line 228 of file axesRotation.C.

◆ axes() [5/5]

axes ( const dictionary dict)
explicit

Definition at line 234 of file axesRotation.C.

References dict, and axes::read().

Here is the call graph for this function:

◆ ~axes()

virtual ~axes ( )
virtualdefault

Member Function Documentation

◆ read()

void read ( const dictionary dict)
protected

Definition at line 151 of file axesRotation.C.

References axes::axis1_, axes::axis2_, dict, axes::E1_E2, axes::E2_E3, axes::E3_E1, axes::E3_E1_COMPAT, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and axes::order_.

Referenced by axes::axes().

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

◆ TypeNameNoDebug()

TypeNameNoDebug ( "axes"  )

◆ clone()

autoPtr<coordinateRotation> clone ( ) const
inlinevirtual

Implements coordinateRotation.

Reimplemented in cylindrical.

Definition at line 164 of file axesRotation.H.

◆ rotation()

Foam::tensor rotation ( const vector axis1,
const vector axis2,
axisOrder  order = E3_E1 
)
static

Definition at line 58 of file axesRotation.C.

References Foam::abort(), Tensor::col(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, Foam::mag(), Foam::nl, and WarningInFunction.

Referenced by axes::R().

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

◆ clear()

void clear ( )
virtual

Implements coordinateRotation.

Definition at line 244 of file axesRotation.C.

◆ R()

Foam::tensor R ( ) const
virtual

Implements coordinateRotation.

Definition at line 252 of file axesRotation.C.

References axes::rotation().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Implements coordinateRotation.

Reimplemented in cylindrical.

Definition at line 260 of file axesRotation.C.

References os().

Here is the call graph for this function:

◆ writeEntry()

void writeEntry ( const word keyword,
Ostream os 
) const
virtual

Implements coordinateRotation.

Reimplemented in cylindrical.

Definition at line 281 of file axesRotation.C.

References os(), and Foam::type().

Here is the call graph for this function:

Member Data Documentation

◆ axis1_

vector axis1_
protected

Definition at line 122 of file axesRotation.H.

Referenced by axes::read().

◆ axis2_

vector axis2_
protected

Definition at line 125 of file axesRotation.H.

Referenced by axes::read().

◆ order_

axisOrder order_
protected

Definition at line 128 of file axesRotation.H.

Referenced by axes::read().


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