Loading...
Searching...
No Matches
coordinateSystem Class Reference

Base class for coordinate system specification, the default coordinate system type is cartesian . More...

#include <coordinateSystem.H>

Inheritance diagram for coordinateSystem:
Collaboration diagram for coordinateSystem:

Classes

struct  iNew
 Helper for construction of coordinateSystem PtrList. More...

Public Member Functions

 TypeName ("coordinateSystem")
 Runtime type information.
 coordinateSystem ()
 Default construct. This is an identity coordinate system.
 coordinateSystem (const coordinateRotation &crot)
 Copy construct from rotation with origin=0.
 coordinateSystem (coordinateRotation &&crot)
 Move construct from rotation with origin=0.
 coordinateSystem (const coordinateSystem &csys)
 Copy construct.
 coordinateSystem (coordinateSystem &&csys)
 Move construct.
 coordinateSystem (autoPtr< coordinateSystem > &&csys)
 Move construct from autoPtr.
 coordinateSystem (const word &name, const coordinateSystem &csys)
 Copy construct with a different name.
 coordinateSystem (const point &origin, const coordinateRotation &crot)
 Construct from origin and rotation.
 coordinateSystem (const point &origin, const vector &axis, const vector &dirn)
 Construct from origin and 2 axes.
 coordinateSystem (const word &name, const point &origin, const coordinateRotation &crot)
 Construct from origin and rotation.
 coordinateSystem (const word &name, const point &origin, const vector &axis, const vector &dirn)
 Construct named from origin and 2 axes.
 coordinateSystem (const dictionary &dict, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Construct from dictionary with optional read handling for the 'origin' entry (default: MUST_READ).
 coordinateSystem (const dictionary &dict, const word &dictName, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Construct from dictionary with optional subDict lookup and optional read handling for the 'origin' entry (default: MUST_READ).
virtual autoPtr< coordinateSystemclone () const
 Return clone.
 declareRunTimeSelectionTable (autoPtr, coordinateSystem, dictionary,(const dictionary &dict, IOobjectOption::readOption readOrigin),(dict, readOrigin))
 declareRunTimeSelectionTable (autoPtr, coordinateSystem, registry,(const objectRegistry &obr, const dictionary &dict, IOobjectOption::readOption readOrigin),(obr, dict, readOrigin))
virtual ~coordinateSystem ()=default
 Destructor.
virtual bool good () const
 Consider good if it has a specification.
virtual bool uniform () const
 True if the rotation tensor is uniform for all locations.
virtual bool valid () const
 Same as good() - 2023-07.
virtual const pointorigin () const
 Return origin.
virtual const coordinateRotationrotation () const
 The rotation specification.
virtual const wordname () const
 Return the name.
virtual const stringnote () const
 Return the optional note.
virtual const tensorR () const
 Return const reference to the rotation tensor.
virtual const vector e1 () const
 The local Cartesian x-axis in global coordinates.
virtual const vector e2 () const
 The local Cartesian y-axis in global coordinates.
virtual const vector e3 () const
 The local Cartesian z-axis in global coordinates.
virtual void rename (const word &newName)
 Rename.
virtual stringnote ()
 Edit access to optional note.
virtual pointorigin ()
 Edit access to origin.
virtual void clear ()
 Reset origin and rotation to an identity coordinateSystem.
virtual void rotation (autoPtr< coordinateRotation > &&crot)
 Change the rotation.
virtual void write (Ostream &os) const
 Write.
virtual void writeEntry (Ostream &os) const
 Write 'coordinateSystem' dictionary entry.
virtual void writeEntry (const word &keyword, Ostream &os) const
 Write dictionary entry.
void operator= (const coordinateSystem &csys)
 Copy assignment.
void operator= (coordinateSystem &&csys)
 Move assignment.
void operator= (const autoPtr< coordinateSystem > &csys)
 Copy assignment from autoPtr.
void operator= (autoPtr< coordinateSystem > &&csys)
 Move assignment from autoPtr.
virtual tensor R (const point &global) const
 Position-dependent rotation tensor (when uniform = false).
virtual tmp< tensorFieldR (const UList< point > &global) const
 Position-dependent rotation tensors (when uniform = false).
virtual tmp< tensorFieldR (const pointUIndList &global) const
 Position-dependent rotation tensors (when uniform = false).
point transformPoint (const point &localCart) const
 Transform point and add origin offset.
tmp< pointFieldtransformPoint (const UList< point > &localCart) const
 Transform points and add origin offset.
tmp< pointFieldtransformPoint (const pointUIndList &localCart) const
 Transform points and add origin offset.
point invTransformPoint (const point &global) const
 Remove origin offset and inverse transform point.
tmp< pointFieldinvTransformPoint (const UList< point > &global) const
 Remove origin offset and inverse transform points.
tmp< pointFieldinvTransformPoint (const pointUIndList &global) const
 Remove origin offset and inverse transform points.
point globalPosition (const point &local) const
 From local coordinate position to global (cartesian) position.
tmp< pointFieldglobalPosition (const pointField &local) const
 From local coordinate position to global (cartesian) position.
point localPosition (const point &global) const
 From global (cartesian) position to local coordinate position.
tmp< pointFieldlocalPosition (const pointField &global) const
 From global (cartesian) position to local coordinate position.
vector globalVector (const vector &local) const
 From local to global (cartesian) vector components.
tmp< vectorFieldglobalVector (const vectorField &local) const
 From local to global (cartesian) vector components.
vector localVector (const vector &global) const
 From global (cartesian) to local vector components.
tmp< vectorFieldlocalVector (const vectorField &global) const
 From global (cartesian) to local vector components.
virtual symmTensor transformPrincipal (const vector &input) const
 With constant rotation tensor.
virtual tmp< Field< symmTensor > > transformPrincipal (const UList< vector > &input) const
 With constant rotation tensor.
virtual symmTensor transformPrincipal (const point &global, const vector &input) const
 With rotation tensor at given global position.
virtual tmp< Field< symmTensor > > transformPrincipal (const UList< point > &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transformPrincipal (const pointUIndList &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transformPrincipal (const UList< point > &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transformPrincipal (const pointUIndList &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual scalar transform (const scalar &input) const
 With constant rotation tensor.
virtual tmp< Field< scalar > > transform (const UList< scalar > &input) const
 With constant rotation tensor.
virtual scalar transform (const point &global, const scalar &input) const
 With rotation tensor at given global position.
virtual tmp< Field< scalar > > transform (const UList< point > &global, const scalar &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > transform (const pointUIndList &global, const scalar &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > transform (const UList< point > &global, const UList< scalar > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > transform (const pointUIndList &global, const UList< scalar > &input) const
 With rotation tensors at given global positions.
virtual vector transform (const vector &input) const
 With constant rotation tensor.
virtual tmp< Field< vector > > transform (const UList< vector > &input) const
 With constant rotation tensor.
virtual vector transform (const point &global, const vector &input) const
 With rotation tensor at given global position.
virtual tmp< Field< vector > > transform (const UList< point > &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > transform (const pointUIndList &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > transform (const UList< point > &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > transform (const pointUIndList &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual sphericalTensor transform (const sphericalTensor &input) const
 With constant rotation tensor.
virtual tmp< Field< sphericalTensor > > transform (const UList< sphericalTensor > &input) const
 With constant rotation tensor.
virtual sphericalTensor transform (const point &global, const sphericalTensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< sphericalTensor > > transform (const UList< point > &global, const sphericalTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > transform (const pointUIndList &global, const sphericalTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > transform (const UList< point > &global, const UList< sphericalTensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > transform (const pointUIndList &global, const UList< sphericalTensor > &input) const
 With rotation tensors at given global positions.
virtual symmTensor transform (const symmTensor &input) const
 With constant rotation tensor.
virtual tmp< Field< symmTensor > > transform (const UList< symmTensor > &input) const
 With constant rotation tensor.
virtual symmTensor transform (const point &global, const symmTensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< symmTensor > > transform (const UList< point > &global, const symmTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transform (const pointUIndList &global, const symmTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transform (const UList< point > &global, const UList< symmTensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > transform (const pointUIndList &global, const UList< symmTensor > &input) const
 With rotation tensors at given global positions.
virtual tensor transform (const tensor &input) const
 With constant rotation tensor.
virtual tmp< Field< tensor > > transform (const UList< tensor > &input) const
 With constant rotation tensor.
virtual tensor transform (const point &global, const tensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< tensor > > transform (const UList< point > &global, const tensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > transform (const pointUIndList &global, const tensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > transform (const UList< point > &global, const UList< tensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > transform (const pointUIndList &global, const UList< tensor > &input) const
 With rotation tensors at given global positions.
virtual scalar invTransform (const scalar &input) const
 With constant rotation tensor.
virtual tmp< Field< scalar > > invTransform (const UList< scalar > &input) const
 With constant rotation tensor.
virtual scalar invTransform (const point &global, const scalar &input) const
 With rotation tensor at given global position.
virtual tmp< Field< scalar > > invTransform (const UList< point > &global, const scalar &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > invTransform (const pointUIndList &global, const scalar &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > invTransform (const UList< point > &global, const UList< scalar > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< scalar > > invTransform (const pointUIndList &global, const UList< scalar > &input) const
 With rotation tensors at given global positions.
virtual vector invTransform (const vector &input) const
 With constant rotation tensor.
virtual tmp< Field< vector > > invTransform (const UList< vector > &input) const
 With constant rotation tensor.
virtual vector invTransform (const point &global, const vector &input) const
 With rotation tensor at given global position.
virtual tmp< Field< vector > > invTransform (const UList< point > &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > invTransform (const pointUIndList &global, const vector &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > invTransform (const UList< point > &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< vector > > invTransform (const pointUIndList &global, const UList< vector > &input) const
 With rotation tensors at given global positions.
virtual sphericalTensor invTransform (const sphericalTensor &input) const
 With constant rotation tensor.
virtual tmp< Field< sphericalTensor > > invTransform (const UList< sphericalTensor > &input) const
 With constant rotation tensor.
virtual sphericalTensor invTransform (const point &global, const sphericalTensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< sphericalTensor > > invTransform (const UList< point > &global, const sphericalTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > invTransform (const pointUIndList &global, const sphericalTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > invTransform (const UList< point > &global, const UList< sphericalTensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< sphericalTensor > > invTransform (const pointUIndList &global, const UList< sphericalTensor > &input) const
 With rotation tensors at given global positions.
virtual symmTensor invTransform (const symmTensor &input) const
 With constant rotation tensor.
virtual tmp< Field< symmTensor > > invTransform (const UList< symmTensor > &input) const
 With constant rotation tensor.
virtual symmTensor invTransform (const point &global, const symmTensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< symmTensor > > invTransform (const UList< point > &global, const symmTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > invTransform (const pointUIndList &global, const symmTensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > invTransform (const UList< point > &global, const UList< symmTensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< symmTensor > > invTransform (const pointUIndList &global, const UList< symmTensor > &input) const
 With rotation tensors at given global positions.
virtual tensor invTransform (const tensor &input) const
 With constant rotation tensor.
virtual tmp< Field< tensor > > invTransform (const UList< tensor > &input) const
 With constant rotation tensor.
virtual tensor invTransform (const point &global, const tensor &input) const
 With rotation tensor at given global position.
virtual tmp< Field< tensor > > invTransform (const UList< point > &global, const tensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > invTransform (const pointUIndList &global, const tensor &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > invTransform (const UList< point > &global, const UList< tensor > &input) const
 With rotation tensors at given global positions.
virtual tmp< Field< tensor > > invTransform (const pointUIndList &global, const UList< tensor > &input) const
 With rotation tensors at given global positions.
template<class PointField>
Foam::tmp< Foam::tensorFieldrotationsImpl (const PointField &global) const
template<class PointField>
Foam::tmp< Foam::pointFieldtransformPointImpl (const PointField &localCart) const
template<class PointField>
Foam::tmp< Foam::pointFieldinvTransformPointImpl (const PointField &global) const
template<class RetType, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > manyTimesImpl (const tensor &tt, const UList< Type > &input, const BinaryOp &bop)
template<class RetType, class PointField, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > oneToOneImpl (const PointField &global, const UList< Type > &input, const BinaryOp &bop) const
template<class RetType, class PointField, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > oneToManyImpl (const PointField &global, const Type &input, const BinaryOp &bop) const

Static Public Member Functions

template<class Derived>
static autoPtr< coordinateSystemClone (const Derived &csys)
 Clone a coordinate system.
static autoPtr< coordinateSystemClone (const word &modelType, const objectRegistry &obr, const dictionary &dict, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select construct the specified coordinate system type with reference to objectRegistry for indirect entries.
static autoPtr< coordinateSystemNew (const word &modelType, const objectRegistry &obr, const dictionary &dict, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select construct the specified coordinate system type with reference to objectRegistry for indirect entries.
static autoPtr< coordinateSystemNew (const word &modelType, const dictionary &dict, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select construct the specified coordinate system type.
static autoPtr< coordinateSystemNew (const objectRegistry &obr, const dictionary &dict, const word &dictName=word::null, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select construct from dictionary with reference to objectRegistry for indirect entries.
static autoPtr< coordinateSystemNew (const dictionary &dict, const word &dictName=word::null, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select constructed from dictionary.
static autoPtr< coordinateSystemNew (Istream &is, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Select constructed from Istream.
static autoPtr< coordinateSystemNewIfPresent (const objectRegistry &obr, const dictionary &dict, const word &dictName=coordinateSystem::typeName)
 Optional select construct from dictionary, with registry reference.
static autoPtr< coordinateSystemNewIfPresent (const dictionary &dict, const word &dictName=coordinateSystem::typeName)
 Optional select construct from dictionary.

Protected Member Functions

template<class PointField>
tmp< tensorFieldrotationsImpl (const PointField &global) const
 Implementation for R() methods.
template<class PointField>
tmp< pointFieldtransformPointImpl (const PointField &localCart) const
 Implementation for transformPoint() methods.
template<class PointField>
tmp< pointFieldinvTransformPointImpl (const PointField &global) const
 Implementation for transformPosition() methods.
template<class RetType, class PointField, class Type, class BinaryOp>
tmp< Field< RetType > > oneToOneImpl (const PointField &global, const UList< Type > &input, const BinaryOp &bop) const
 Use position-dependent transform tensors for multiple inputs.
template<class RetType, class PointField, class Type, class BinaryOp>
tmp< Field< RetType > > oneToManyImpl (const PointField &global, const Type &input, const BinaryOp &bop) const
 Use position-dependent transform tensors for single input.
virtual vector localToGlobal (const vector &local, bool translate) const
 From local coordinate system to the global Cartesian system with optional translation for the origin.
virtual tmp< vectorFieldlocalToGlobal (const vectorField &local, bool translate) const
 From local coordinate system to the global Cartesian system with optional translation for the origin.
virtual vector globalToLocal (const vector &global, bool translate) const
 From global Cartesian system to the local coordinate system with optional translation for the origin.
virtual tmp< vectorFieldglobalToLocal (const vectorField &global, bool translate) const
 From global Cartesian system to the local coordinate system with optional translation for the origin.
void assign (const dictionary &dict, IOobjectOption::readOption readOrigin=IOobjectOption::MUST_READ)
 Assign from dictionary content with specified read handling of the 'origin' entry.
 coordinateSystem (std::nullptr_t)
 Construct null, without allocating a coordinateRotation specification.

Static Protected Member Functions

template<class RetType, class Type, class BinaryOp>
static tmp< Field< RetType > > manyTimesImpl (const tensor &tt, const UList< Type > &input, const BinaryOp &bop)
 Apply single transform tensor for multiple inputs.

Protected Attributes

autoPtr< coordinateRotationspec_
 User specification of the coordinate rotation.
point origin_
 The coordinate system origin.
tensor rot_
 The rotation tensor.
word name_
 The name of the coordinate system (optional).
string note_
 An optional note describing the coordinate system.

Static Protected Attributes

static coordinateSystem dummy_
 Dummy coordinate system for suppressed manipulation.

Detailed Description

Base class for coordinate system specification, the default coordinate system type is cartesian .

All systems are defined by an origin point and a coordinate rotation By default, the axes specification can be used directly as part of the coordinate system specification. For example,

coordinateSystem
{
    origin  (0 0 0);
    e1      (0 1 0);
    e3      (1 0 0);
}

However, a more verbose format with rotation provided as a dictionary entry is possible:

coordinateSystem
{
    type    cartesian;
    origin  (0 0 0);
    rotation
    {
        type    axes;
        e1      (0 1 0);
        e3      (1 0 0);
    }
}

It also also possible to use the compact (single-dictionary) form and specific a different type of rotation:

coordinateSystem
{
    type        cartesian;
    origin      (0 0 0);
    rotation    euler;
    angles      (90 0 0);
}

This last form can be particularly readable for an identity rotation: coordinateSystem { type cartesian; origin (0 0 0); rotation none; }

Types of coordinateRotation:

  1. none
  2. axes
  3. axisAngle
  4. euler
  5. starcd

Type of coordinateSystem:

  1. cartesian
  2. cylindrical
  3. indirect (references an entry in coordinateSystems).
Source files

Definition at line 142 of file coordinateSystem.H.

Constructor & Destructor Documentation

◆ coordinateSystem() [1/14]

◆ coordinateSystem() [2/14]

coordinateSystem ( )

Default construct. This is an identity coordinate system.

Definition at line 135 of file coordinateSystem.C.

References Foam::I, Foam::identity(), name_, note_, origin_, rot_, spec_, and Foam::Zero.

Here is the call graph for this function:

◆ coordinateSystem() [3/14]

coordinateSystem ( const coordinateRotation & crot)
explicit

Copy construct from rotation with origin=0.

Definition at line 145 of file coordinateSystem.C.

References coordinateSystem().

Here is the call graph for this function:

◆ coordinateSystem() [4/14]

coordinateSystem ( coordinateRotation && crot)
explicit

Move construct from rotation with origin=0.

Definition at line 151 of file coordinateSystem.C.

References coordinateSystem().

Here is the call graph for this function:

◆ coordinateSystem() [5/14]

coordinateSystem ( const coordinateSystem & csys)

Copy construct.

Definition at line 157 of file coordinateSystem.C.

References clone(), coordinateSystem(), name_, note_, origin_, rot_, and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [6/14]

coordinateSystem ( coordinateSystem && csys)

Move construct.

Definition at line 167 of file coordinateSystem.C.

References coordinateSystem(), name_, note_, origin_, rot_, and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [7/14]

coordinateSystem ( autoPtr< coordinateSystem > && csys)
explicit

Move construct from autoPtr.

Definition at line 177 of file coordinateSystem.C.

References coordinateSystem(), operator=(), and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [8/14]

coordinateSystem ( const word & name,
const coordinateSystem & csys )

Copy construct with a different name.

Definition at line 195 of file coordinateSystem.C.

References clone(), coordinateSystem(), name(), name_, note_, origin_, rot_, and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [9/14]

coordinateSystem ( const point & origin,
const coordinateRotation & crot )

Construct from origin and rotation.

Definition at line 209 of file coordinateSystem.C.

References coordinateSystem(), and origin().

Here is the call graph for this function:

◆ coordinateSystem() [10/14]

coordinateSystem ( const point & origin,
const vector & axis,
const vector & dirn )

Construct from origin and 2 axes.

Definition at line 234 of file coordinateSystem.C.

References coordinateSystem(), and origin().

Here is the call graph for this function:

◆ coordinateSystem() [11/14]

coordinateSystem ( const word & name,
const point & origin,
const coordinateRotation & crot )

Construct from origin and rotation.

Definition at line 219 of file coordinateSystem.C.

References clone(), name(), name_, note_, origin(), origin_, R(), rot_, and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [12/14]

coordinateSystem ( const word & name,
const point & origin,
const vector & axis,
const vector & dirn )

Construct named from origin and 2 axes.

Definition at line 245 of file coordinateSystem.C.

References name(), name_, note_, origin(), origin_, R(), rot_, and spec_.

Here is the call graph for this function:

◆ coordinateSystem() [13/14]

coordinateSystem ( const dictionary & dict,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
explicit

Construct from dictionary with optional read handling for the 'origin' entry (default: MUST_READ).

Note
The readOrigin is downgraded to READ_IF_PRESENT if the dictionary itself is "coordinateSystem"

Definition at line 261 of file coordinateSystem.C.

References assign(), coordinateSystem(), and dict.

Here is the call graph for this function:

◆ coordinateSystem() [14/14]

coordinateSystem ( const dictionary & dict,
const word & dictName,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )

Construct from dictionary with optional subDict lookup and optional read handling for the 'origin' entry (default: MUST_READ).

Parameters
dictNameIf non-empty, mandatory sub-dictionary to use.
Note
The readOrigin is downgraded to READ_IF_PRESENT if the dictionary itself is "coordinateSystem" or if a sub-dictionary is being used

Definition at line 273 of file coordinateSystem.C.

References coordinateSystem(), dict, and dictName().

Here is the call graph for this function:

◆ ~coordinateSystem()

virtual ~coordinateSystem ( )
virtualdefault

Destructor.

Member Function Documentation

◆ rotationsImpl() [1/2]

template<class PointField>
tmp< tensorField > rotationsImpl ( const PointField & global) const
protected

Implementation for R() methods.

Referenced by R(), and R().

Here is the caller graph for this function:

◆ transformPointImpl() [1/2]

template<class PointField>
tmp< pointField > transformPointImpl ( const PointField & localCart) const
protected

Implementation for transformPoint() methods.

Referenced by transformPoint(), and transformPoint().

Here is the caller graph for this function:

◆ invTransformPointImpl() [1/2]

template<class PointField>
tmp< pointField > invTransformPointImpl ( const PointField & global) const
protected

Implementation for transformPosition() methods.

Referenced by invTransformPoint(), and invTransformPoint().

Here is the caller graph for this function:

◆ manyTimesImpl() [1/2]

template<class RetType, class Type, class BinaryOp>
tmp< Field< RetType > > manyTimesImpl ( const tensor & tt,
const UList< Type > & input,
const BinaryOp & bop )
staticprotected

Apply single transform tensor for multiple inputs.

◆ oneToOneImpl() [1/2]

template<class RetType, class PointField, class Type, class BinaryOp>
tmp< Field< RetType > > oneToOneImpl ( const PointField & global,
const UList< Type > & input,
const BinaryOp & bop ) const
protected

Use position-dependent transform tensors for multiple inputs.

◆ oneToManyImpl() [1/2]

template<class RetType, class PointField, class Type, class BinaryOp>
tmp< Field< RetType > > oneToManyImpl ( const PointField & global,
const Type & input,
const BinaryOp & bop ) const
protected

Use position-dependent transform tensors for single input.

References dict, local, and IOobjectOption::MUST_READ.

◆ localToGlobal() [1/2]

Foam::vector localToGlobal ( const vector & local,
bool translate ) const
protectedvirtual

From local coordinate system to the global Cartesian system with optional translation for the origin.

Reimplemented in cylindrical, and indirect.

Definition at line 349 of file coordinateSystem.C.

References local, origin_, and Foam::transform().

Referenced by globalPosition(), globalPosition(), globalVector(), globalVector(), cylindrical::localToGlobal(), and cylindrical::localToGlobal().

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

◆ localToGlobal() [2/2]

Foam::tmp< Foam::vectorField > localToGlobal ( const vectorField & local,
bool translate ) const
protectedvirtual

From local coordinate system to the global Cartesian system with optional translation for the origin.

Reimplemented in cylindrical, and indirect.

Definition at line 364 of file coordinateSystem.C.

References local, origin_, and Foam::transform().

Here is the call graph for this function:

◆ globalToLocal() [1/2]

Foam::vector globalToLocal ( const vector & global,
bool translate ) const
protectedvirtual

From global Cartesian system to the local coordinate system with optional translation for the origin.

Reimplemented in cylindrical, and indirect.

Definition at line 379 of file coordinateSystem.C.

References Foam::invTransform(), and origin_.

Referenced by cylindrical::globalToLocal(), cylindrical::globalToLocal(), localPosition(), localPosition(), localVector(), and localVector().

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

◆ globalToLocal() [2/2]

Foam::tmp< Foam::vectorField > globalToLocal ( const vectorField & global,
bool translate ) const
protectedvirtual

From global Cartesian system to the local coordinate system with optional translation for the origin.

Reimplemented in cylindrical, and indirect.

Definition at line 394 of file coordinateSystem.C.

References Foam::invTransform(), and origin_.

Here is the call graph for this function:

◆ assign()

void assign ( const dictionary & dict,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
protected

Assign from dictionary content with specified read handling of the 'origin' entry.

Definition at line 68 of file coordinateSystem.C.

References dict, IOobjectOption::isReadRequired(), IOobjectOption::lazierRead(), keyType::LITERAL, coordinateRotation::New(), note_, origin_, rot_, spec_, and Foam::Zero.

Referenced by coordinateSystem().

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

◆ TypeName()

TypeName ( "coordinateSystem" )

Runtime type information.

◆ clone()

virtual autoPtr< coordinateSystem > clone ( ) const
inlinevirtual

Return clone.

Reimplemented in cartesian, cylindrical, and indirect.

Definition at line 501 of file coordinateSystem.H.

References autoPtr< T >::New().

Referenced by coordinateSystem(), coordinateSystem(), and coordinateSystem().

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

◆ declareRunTimeSelectionTable() [1/2]

declareRunTimeSelectionTable ( autoPtr ,
coordinateSystem ,
dictionary ,
(const dictionary &dict, IOobjectOption::readOption readOrigin) ,
(dict, readOrigin)  )

References coordinateSystem(), and dict.

Here is the call graph for this function:

◆ declareRunTimeSelectionTable() [2/2]

declareRunTimeSelectionTable ( autoPtr ,
coordinateSystem ,
registry ,
(const objectRegistry &obr, const dictionary &dict, IOobjectOption::readOption readOrigin) ,
(obr, dict, readOrigin)  )

References coordinateSystem(), and dict.

Here is the call graph for this function:

◆ Clone() [1/2]

template<class Derived>
autoPtr< coordinateSystem > Clone ( const Derived & csys)
inlinestatic

Clone a coordinate system.

Definition at line 541 of file coordinateSystem.H.

Referenced by cartesian::clone(), cylindrical::clone(), and indirect::clone().

Here is the caller graph for this function:

◆ Clone() [2/2]

autoPtr< coordinateSystem > Clone ( const word & modelType,
const objectRegistry & obr,
const dictionary & dict,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
static

Select construct the specified coordinate system type with reference to objectRegistry for indirect entries.

An empty modelType will be treated as "cartesian"

References dict, dictName(), IOobjectOption::MUST_READ, and word::null.

Here is the call graph for this function:

◆ New() [1/5]

Foam::autoPtr< Foam::coordinateSystem > New ( const word & modelType,
const objectRegistry & obr,
const dictionary & dict,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
static

Select construct the specified coordinate system type with reference to objectRegistry for indirect entries.

An empty modelType will be treated as "cartesian"

Definition at line 233 of file coordinateSystemNew.C.

References dict, and Foam::New().

Here is the call graph for this function:

◆ New() [2/5]

Foam::autoPtr< Foam::coordinateSystem > New ( const word & modelType,
const dictionary & dict,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
static

Select construct the specified coordinate system type.

An empty modelType will be treated as "cartesian"

Definition at line 246 of file coordinateSystemNew.C.

References dict, and Foam::New().

Here is the call graph for this function:

◆ New() [3/5]

Foam::autoPtr< Foam::coordinateSystem > New ( const objectRegistry & obr,
const dictionary & dict,
const word & dictName = word::null,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
static

Select construct from dictionary with reference to objectRegistry for indirect entries.

Parameters
dictNameIf non-empty, the sub-dictionary name to use for the coordinate system description.
Note
When the dictName is empty, it includes an implicit search for a "coordinateSystem" sub-dictionary for convenience and compatibility with previous versions (1806 and earlier).

Definition at line 258 of file coordinateSystemNew.C.

References dict, dictName(), and Foam::New().

Here is the call graph for this function:

◆ New() [4/5]

Foam::autoPtr< Foam::coordinateSystem > New ( const dictionary & dict,
const word & dictName = word::null,
IOobjectOption::readOption readOrigin = IOobjectOption::MUST_READ )
static

Select constructed from dictionary.

Parameters
dictNameIf non-empty, the sub-dictionary name to use for the coordinate system description.
Note
When the dictName is empty, it includes an implicit search for a "coordinateSystem" sub-dictionary for convenience and compatibility with previous versions (1806 and earlier).

Definition at line 271 of file coordinateSystemNew.C.

References dict, dictName(), and Foam::New().

Here is the call graph for this function:

◆ New() [5/5]

Select constructed from Istream.

Expects a name/dictionary as input

Definition at line 212 of file coordinateSystemNew.C.

References dict, and keyType::LITERAL.

◆ NewIfPresent() [1/2]

Foam::autoPtr< Foam::coordinateSystem > NewIfPresent ( const objectRegistry & obr,
const dictionary & dict,
const word & dictName = coordinateSystem::typeName )
static

Optional select construct from dictionary, with registry reference.

Parameters
obrThe objectRegistry (for lookup of indirect entries)
dictThe top-level dictionary to search
dictNameThe sub-dictionary name to select the for coordinate system specification (default is 'coordinateSystem').

Since the specifications are isolated within a sub-dictionary, the 'origin' entry is treated as optional

Definition at line 283 of file coordinateSystemNew.C.

References dict, and dictName().

Here is the call graph for this function:

◆ NewIfPresent() [2/2]

Foam::autoPtr< Foam::coordinateSystem > NewIfPresent ( const dictionary & dict,
const word & dictName = coordinateSystem::typeName )
static

Optional select construct from dictionary.

Parameters
dictThe top-level dictionary to search
dictNameThe sub-dictionary name to select the for coordinate system specification (default is 'coordinateSystem').

Since the specifications are isolated within a sub-dictionary, the 'origin' entry is treated as optional

Definition at line 295 of file coordinateSystemNew.C.

References dict, and dictName().

Here is the call graph for this function:

◆ good()

virtual bool good ( ) const
inlinevirtual

Consider good if it has a specification.

Reimplemented in indirect.

Definition at line 690 of file coordinateSystem.H.

References spec_.

Referenced by valid(), write(), and writeEntry().

Here is the caller graph for this function:

◆ uniform()

virtual bool uniform ( ) const
inlinevirtual

True if the rotation tensor is uniform for all locations.

Reimplemented in cylindrical, and indirect.

Definition at line 695 of file coordinateSystem.H.

◆ valid()

virtual bool valid ( ) const
inlinevirtual

Same as good() - 2023-07.

Reimplemented in indirect.

Definition at line 700 of file coordinateSystem.H.

References good().

Here is the call graph for this function:

◆ origin() [1/2]

◆ rotation() [1/2]

virtual const coordinateRotation & rotation ( ) const
inlinevirtual

The rotation specification.

Reimplemented in indirect.

Definition at line 716 of file coordinateSystem.H.

References spec_.

Referenced by operator=().

Here is the caller graph for this function:

◆ name()

virtual const word & name ( ) const
inlinevirtual

Return the name.

Reimplemented in indirect.

Definition at line 724 of file coordinateSystem.H.

References name_.

Referenced by cartesian::cartesian(), cartesian::cartesian(), coordinateSystem(), coordinateSystem(), coordinateSystem(), cylindrical::cylindrical(), cylindrical::cylindrical(), and cylindrical::cylindrical().

Here is the caller graph for this function:

◆ note() [1/2]

virtual const string & note ( ) const
inlinevirtual

Return the optional note.

Reimplemented in indirect.

Definition at line 732 of file coordinateSystem.H.

References note_.

◆ R() [1/4]

virtual const tensor & R ( ) const
inlinevirtual

Return const reference to the rotation tensor.

Reimplemented in cylindrical, and indirect.

Definition at line 740 of file coordinateSystem.H.

References rot_.

Referenced by coordinateSystem(), coordinateSystem(), Foam::operator!=(), and rotationsImpl().

Here is the caller graph for this function:

◆ e1()

virtual const vector e1 ( ) const
inlinevirtual

The local Cartesian x-axis in global coordinates.

Reimplemented in indirect.

Definition at line 748 of file coordinateSystem.H.

References rot_.

◆ e2()

virtual const vector e2 ( ) const
inlinevirtual

The local Cartesian y-axis in global coordinates.

Reimplemented in indirect.

Definition at line 756 of file coordinateSystem.H.

References rot_.

◆ e3()

virtual const vector e3 ( ) const
inlinevirtual

The local Cartesian z-axis in global coordinates.

Reimplemented in indirect.

Definition at line 764 of file coordinateSystem.H.

References rot_.

◆ rename()

virtual void rename ( const word & newName)
inlinevirtual

Rename.

Reimplemented in indirect.

Definition at line 775 of file coordinateSystem.H.

References name_.

◆ note() [2/2]

virtual string & note ( )
inlinevirtual

Edit access to optional note.

Reimplemented in indirect.

Definition at line 783 of file coordinateSystem.H.

References note_.

◆ origin() [2/2]

virtual point & origin ( )
inlinevirtual

Edit access to origin.

Reimplemented in indirect.

Definition at line 791 of file coordinateSystem.H.

References origin_.

◆ clear()

void clear ( )
virtual

Reset origin and rotation to an identity coordinateSystem.

Also resets the note

Reimplemented in indirect.

Definition at line 298 of file coordinateSystem.C.

References SphericalTensor< scalar >::I, note_, origin_, rot_, spec_, and Foam::Zero.

◆ rotation() [2/2]

void rotation ( autoPtr< coordinateRotation > && crot)
virtual

Change the rotation.

Reimplemented in indirect.

Definition at line 409 of file coordinateSystem.C.

References SphericalTensor< scalar >::I, rot_, and spec_.

◆ write()

void write ( Ostream & os) const
virtual

Write.

Reimplemented in indirect.

Definition at line 423 of file coordinateSystem.C.

References good(), origin_, os(), spec_, and Foam::type().

Referenced by Foam::operator<<().

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

◆ writeEntry() [1/2]

void writeEntry ( Ostream & os) const
virtual

Write 'coordinateSystem' dictionary entry.

Reimplemented in indirect.

Definition at line 441 of file coordinateSystem.C.

References os(), and writeEntry().

Referenced by writeEntry().

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

◆ writeEntry() [2/2]

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

Write dictionary entry.

Reimplemented in indirect.

Definition at line 447 of file coordinateSystem.C.

References good(), note_, origin_, os(), spec_, and Foam::type().

Here is the call graph for this function:

◆ operator=() [1/4]

void operator= ( const coordinateSystem & csys)

Copy assignment.

Definition at line 486 of file coordinateSystem.C.

References coordinateSystem(), SphericalTensor< scalar >::I, name_, note_, origin_, rot_, rotation(), and spec_.

Referenced by coordinateSystem(), operator=(), and operator=().

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

◆ operator=() [2/4]

void operator= ( coordinateSystem && csys)

Move assignment.

Definition at line 505 of file coordinateSystem.C.

References coordinateSystem(), name_, note_, origin_, rot_, and spec_.

Here is the call graph for this function:

◆ operator=() [3/4]

void operator= ( const autoPtr< coordinateSystem > & csys)

Copy assignment from autoPtr.

Definition at line 515 of file coordinateSystem.C.

References operator=().

Here is the call graph for this function:

◆ operator=() [4/4]

void operator= ( autoPtr< coordinateSystem > && csys)

Move assignment from autoPtr.

Definition at line 521 of file coordinateSystem.C.

References operator=().

Here is the call graph for this function:

◆ R() [2/4]

Foam::tensor R ( const point & global) const
virtual

Position-dependent rotation tensor (when uniform = false).

Returns
tensor

Reimplemented in cylindrical, and indirect.

Definition at line 307 of file coordinateSystem.C.

References rot_.

◆ R() [3/4]

Foam::tmp< Foam::tensorField > R ( const UList< point > & global) const
virtual

Position-dependent rotation tensors (when uniform = false).

Returns
tensorField

Reimplemented in cylindrical, and indirect.

Definition at line 313 of file coordinateSystem.C.

References rotationsImpl().

Here is the call graph for this function:

◆ R() [4/4]

Foam::tmp< Foam::tensorField > R ( const pointUIndList & global) const
virtual

Position-dependent rotation tensors (when uniform = false).

Returns
tensorField

Reimplemented in cylindrical, and indirect.

Definition at line 322 of file coordinateSystem.C.

References rotationsImpl().

Here is the call graph for this function:

◆ transformPoint() [1/3]

Foam::point transformPoint ( const point & localCart) const

Transform point and add origin offset.

Corresponds to a local-to-global transformation using Cartesian coordinates for both local and global.

Definition at line 331 of file coordinateSystem.C.

References origin_, rot_, and Foam::transform().

Here is the call graph for this function:

◆ transformPoint() [2/3]

Foam::tmp< Foam::pointField > transformPoint ( const UList< point > & localCart) const

Transform points and add origin offset.

Definition at line 95 of file coordinateSystemTransform.C.

References transformPointImpl().

Here is the call graph for this function:

◆ transformPoint() [3/3]

Foam::tmp< Foam::pointField > transformPoint ( const pointUIndList & localCart) const

Transform points and add origin offset.

Definition at line 104 of file coordinateSystemTransform.C.

References transformPointImpl().

Here is the call graph for this function:

◆ invTransformPoint() [1/3]

Foam::point invTransformPoint ( const point & global) const

Remove origin offset and inverse transform point.

Corresponds to a global-to-local transformation using Cartesian coordinates for both local and global.

Definition at line 340 of file coordinateSystem.C.

References Foam::invTransform(), origin_, and rot_.

Here is the call graph for this function:

◆ invTransformPoint() [2/3]

Foam::tmp< Foam::pointField > invTransformPoint ( const UList< point > & global) const

Remove origin offset and inverse transform points.

Definition at line 113 of file coordinateSystemTransform.C.

References invTransformPointImpl().

Here is the call graph for this function:

◆ invTransformPoint() [3/3]

Foam::tmp< Foam::pointField > invTransformPoint ( const pointUIndList & global) const

Remove origin offset and inverse transform points.

Definition at line 122 of file coordinateSystemTransform.C.

References invTransformPointImpl().

Here is the call graph for this function:

◆ globalPosition() [1/2]

point globalPosition ( const point & local) const
inline

From local coordinate position to global (cartesian) position.

Definition at line 916 of file coordinateSystem.H.

References local, and localToGlobal().

Referenced by propellerInfo::setSampleDiskGeometry().

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

◆ globalPosition() [2/2]

tmp< pointField > globalPosition ( const pointField & local) const
inline

From local coordinate position to global (cartesian) position.

Definition at line 924 of file coordinateSystem.H.

References local, and localToGlobal().

Here is the call graph for this function:

◆ localPosition() [1/2]

point localPosition ( const point & global) const
inline

From global (cartesian) position to local coordinate position.

Definition at line 932 of file coordinateSystem.H.

References globalToLocal().

Here is the call graph for this function:

◆ localPosition() [2/2]

tmp< pointField > localPosition ( const pointField & global) const
inline

From global (cartesian) position to local coordinate position.

Definition at line 940 of file coordinateSystem.H.

References globalToLocal().

Here is the call graph for this function:

◆ globalVector() [1/2]

vector globalVector ( const vector & local) const
inline

From local to global (cartesian) vector components.

Definition at line 950 of file coordinateSystem.H.

References local, and localToGlobal().

Here is the call graph for this function:

◆ globalVector() [2/2]

tmp< vectorField > globalVector ( const vectorField & local) const
inline

From local to global (cartesian) vector components.

Definition at line 958 of file coordinateSystem.H.

References local, and localToGlobal().

Here is the call graph for this function:

◆ localVector() [1/2]

vector localVector ( const vector & global) const
inline

From global (cartesian) to local vector components.

Definition at line 966 of file coordinateSystem.H.

References globalToLocal().

Here is the call graph for this function:

◆ localVector() [2/2]

tmp< vectorField > localVector ( const vectorField & global) const
inline

From global (cartesian) to local vector components.

Definition at line 974 of file coordinateSystem.H.

References globalToLocal().

Here is the call graph for this function:

◆ transformPrincipal() [1/7]

Foam::symmTensor transformPrincipal ( const vector & input) const
virtual

With constant rotation tensor.

Definition at line 197 of file coordinateSystemTransform.C.

References transformPrincipal().

Referenced by transformPrincipal().

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

◆ transformPrincipal() [2/7]

Foam::tmp< Foam::Field< Foam::symmTensor > > transformPrincipal ( const UList< vector > & input) const
virtual

With constant rotation tensor.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transformPrincipal() [3/7]

Foam::symmTensor transformPrincipal ( const point & global,
const vector & input ) const
virtual

With rotation tensor at given global position.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transformPrincipal() [4/7]

Foam::tmp< Foam::Field< Foam::symmTensor > > transformPrincipal ( const UList< point > & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transformPrincipal() [5/7]

Foam::tmp< Foam::Field< Foam::symmTensor > > transformPrincipal ( const pointUIndList & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transformPrincipal() [6/7]

Foam::tmp< Foam::Field< Foam::symmTensor > > transformPrincipal ( const UList< point > & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transformPrincipal() [7/7]

Foam::tmp< Foam::Field< Foam::symmTensor > > transformPrincipal ( const pointUIndList & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 197 of file coordinateSystemTransform.C.

◆ transform() [1/35]

Foam::scalar transform ( const scalar & input) const
virtual

With constant rotation tensor.

Definition at line 199 of file coordinateSystemTransform.C.

References transform().

Referenced by transform(), transform(), transform(), transform(), and transform().

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

◆ transform() [2/35]

Foam::tmp< Foam::Field< Foam::scalar > > transform ( const UList< scalar > & input) const
virtual

With constant rotation tensor.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [3/35]

Foam::scalar transform ( const point & global,
const scalar & input ) const
virtual

With rotation tensor at given global position.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [4/35]

Foam::tmp< Foam::Field< Foam::scalar > > transform ( const UList< point > & global,
const scalar & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [5/35]

Foam::tmp< Foam::Field< Foam::scalar > > transform ( const pointUIndList & global,
const scalar & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [6/35]

Foam::tmp< Foam::Field< Foam::scalar > > transform ( const UList< point > & global,
const UList< scalar > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [7/35]

Foam::tmp< Foam::Field< Foam::scalar > > transform ( const pointUIndList & global,
const UList< scalar > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 199 of file coordinateSystemTransform.C.

◆ transform() [8/35]

Foam::vector transform ( const vector & input) const
virtual

With constant rotation tensor.

Definition at line 200 of file coordinateSystemTransform.C.

References transform().

Here is the call graph for this function:

◆ transform() [9/35]

Foam::tmp< Foam::Field< Foam::vector > > transform ( const UList< vector > & input) const
virtual

With constant rotation tensor.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [10/35]

Foam::vector transform ( const point & global,
const vector & input ) const
virtual

With rotation tensor at given global position.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [11/35]

Foam::tmp< Foam::Field< Foam::vector > > transform ( const UList< point > & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [12/35]

Foam::tmp< Foam::Field< Foam::vector > > transform ( const pointUIndList & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [13/35]

Foam::tmp< Foam::Field< Foam::vector > > transform ( const UList< point > & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [14/35]

Foam::tmp< Foam::Field< Foam::vector > > transform ( const pointUIndList & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 200 of file coordinateSystemTransform.C.

◆ transform() [15/35]

Foam::sphericalTensor transform ( const sphericalTensor & input) const
virtual

With constant rotation tensor.

Definition at line 201 of file coordinateSystemTransform.C.

References transform().

Here is the call graph for this function:

◆ transform() [16/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > transform ( const UList< sphericalTensor > & input) const
virtual

With constant rotation tensor.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [17/35]

Foam::sphericalTensor transform ( const point & global,
const sphericalTensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [18/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > transform ( const UList< point > & global,
const sphericalTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [19/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > transform ( const pointUIndList & global,
const sphericalTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [20/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > transform ( const UList< point > & global,
const UList< sphericalTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [21/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > transform ( const pointUIndList & global,
const UList< sphericalTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 201 of file coordinateSystemTransform.C.

◆ transform() [22/35]

Foam::symmTensor transform ( const symmTensor & input) const
virtual

With constant rotation tensor.

Definition at line 202 of file coordinateSystemTransform.C.

References transform().

Here is the call graph for this function:

◆ transform() [23/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > transform ( const UList< symmTensor > & input) const
virtual

With constant rotation tensor.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [24/35]

Foam::symmTensor transform ( const point & global,
const symmTensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [25/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > transform ( const UList< point > & global,
const symmTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [26/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > transform ( const pointUIndList & global,
const symmTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [27/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > transform ( const UList< point > & global,
const UList< symmTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [28/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > transform ( const pointUIndList & global,
const UList< symmTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 202 of file coordinateSystemTransform.C.

◆ transform() [29/35]

Foam::tensor transform ( const tensor & input) const
virtual

With constant rotation tensor.

Definition at line 203 of file coordinateSystemTransform.C.

References transform().

Here is the call graph for this function:

◆ transform() [30/35]

Foam::tmp< Foam::Field< Foam::tensor > > transform ( const UList< tensor > & input) const
virtual

With constant rotation tensor.

Definition at line 203 of file coordinateSystemTransform.C.

◆ transform() [31/35]

Foam::tensor transform ( const point & global,
const tensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 203 of file coordinateSystemTransform.C.

◆ transform() [32/35]

Foam::tmp< Foam::Field< Foam::tensor > > transform ( const UList< point > & global,
const tensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 203 of file coordinateSystemTransform.C.

◆ transform() [33/35]

Foam::tmp< Foam::Field< Foam::tensor > > transform ( const pointUIndList & global,
const tensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 203 of file coordinateSystemTransform.C.

◆ transform() [34/35]

Foam::tmp< Foam::Field< Foam::tensor > > transform ( const UList< point > & global,
const UList< tensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 203 of file coordinateSystemTransform.C.

◆ transform() [35/35]

Foam::tmp< Foam::Field< Foam::tensor > > transform ( const pointUIndList & global,
const UList< tensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 203 of file coordinateSystemTransform.C.

◆ invTransform() [1/35]

Foam::scalar invTransform ( const scalar & input) const
virtual

With constant rotation tensor.

Definition at line 205 of file coordinateSystemTransform.C.

References invTransform().

Referenced by invTransform(), invTransform(), invTransform(), invTransform(), and invTransform().

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

◆ invTransform() [2/35]

Foam::tmp< Foam::Field< Foam::scalar > > invTransform ( const UList< scalar > & input) const
virtual

With constant rotation tensor.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [3/35]

Foam::scalar invTransform ( const point & global,
const scalar & input ) const
virtual

With rotation tensor at given global position.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [4/35]

Foam::tmp< Foam::Field< Foam::scalar > > invTransform ( const UList< point > & global,
const scalar & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [5/35]

Foam::tmp< Foam::Field< Foam::scalar > > invTransform ( const pointUIndList & global,
const scalar & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [6/35]

Foam::tmp< Foam::Field< Foam::scalar > > invTransform ( const UList< point > & global,
const UList< scalar > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [7/35]

Foam::tmp< Foam::Field< Foam::scalar > > invTransform ( const pointUIndList & global,
const UList< scalar > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 205 of file coordinateSystemTransform.C.

◆ invTransform() [8/35]

Foam::vector invTransform ( const vector & input) const
virtual

With constant rotation tensor.

Definition at line 206 of file coordinateSystemTransform.C.

References invTransform().

Here is the call graph for this function:

◆ invTransform() [9/35]

Foam::tmp< Foam::Field< Foam::vector > > invTransform ( const UList< vector > & input) const
virtual

With constant rotation tensor.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [10/35]

Foam::vector invTransform ( const point & global,
const vector & input ) const
virtual

With rotation tensor at given global position.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [11/35]

Foam::tmp< Foam::Field< Foam::vector > > invTransform ( const UList< point > & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [12/35]

Foam::tmp< Foam::Field< Foam::vector > > invTransform ( const pointUIndList & global,
const vector & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [13/35]

Foam::tmp< Foam::Field< Foam::vector > > invTransform ( const UList< point > & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [14/35]

Foam::tmp< Foam::Field< Foam::vector > > invTransform ( const pointUIndList & global,
const UList< vector > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 206 of file coordinateSystemTransform.C.

◆ invTransform() [15/35]

Foam::sphericalTensor invTransform ( const sphericalTensor & input) const
virtual

With constant rotation tensor.

Definition at line 207 of file coordinateSystemTransform.C.

References invTransform().

Here is the call graph for this function:

◆ invTransform() [16/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > invTransform ( const UList< sphericalTensor > & input) const
virtual

With constant rotation tensor.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [17/35]

Foam::sphericalTensor invTransform ( const point & global,
const sphericalTensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [18/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > invTransform ( const UList< point > & global,
const sphericalTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [19/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > invTransform ( const pointUIndList & global,
const sphericalTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [20/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > invTransform ( const UList< point > & global,
const UList< sphericalTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [21/35]

Foam::tmp< Foam::Field< Foam::sphericalTensor > > invTransform ( const pointUIndList & global,
const UList< sphericalTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 207 of file coordinateSystemTransform.C.

◆ invTransform() [22/35]

Foam::symmTensor invTransform ( const symmTensor & input) const
virtual

With constant rotation tensor.

Definition at line 208 of file coordinateSystemTransform.C.

References invTransform().

Here is the call graph for this function:

◆ invTransform() [23/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > invTransform ( const UList< symmTensor > & input) const
virtual

With constant rotation tensor.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [24/35]

Foam::symmTensor invTransform ( const point & global,
const symmTensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [25/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > invTransform ( const UList< point > & global,
const symmTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [26/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > invTransform ( const pointUIndList & global,
const symmTensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [27/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > invTransform ( const UList< point > & global,
const UList< symmTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [28/35]

Foam::tmp< Foam::Field< Foam::symmTensor > > invTransform ( const pointUIndList & global,
const UList< symmTensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 208 of file coordinateSystemTransform.C.

◆ invTransform() [29/35]

Foam::tensor invTransform ( const tensor & input) const
virtual

With constant rotation tensor.

Definition at line 209 of file coordinateSystemTransform.C.

References invTransform().

Here is the call graph for this function:

◆ invTransform() [30/35]

Foam::tmp< Foam::Field< Foam::tensor > > invTransform ( const UList< tensor > & input) const
virtual

With constant rotation tensor.

Definition at line 209 of file coordinateSystemTransform.C.

◆ invTransform() [31/35]

Foam::tensor invTransform ( const point & global,
const tensor & input ) const
virtual

With rotation tensor at given global position.

Definition at line 209 of file coordinateSystemTransform.C.

◆ invTransform() [32/35]

Foam::tmp< Foam::Field< Foam::tensor > > invTransform ( const UList< point > & global,
const tensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 209 of file coordinateSystemTransform.C.

◆ invTransform() [33/35]

Foam::tmp< Foam::Field< Foam::tensor > > invTransform ( const pointUIndList & global,
const tensor & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 209 of file coordinateSystemTransform.C.

◆ invTransform() [34/35]

Foam::tmp< Foam::Field< Foam::tensor > > invTransform ( const UList< point > & global,
const UList< tensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 209 of file coordinateSystemTransform.C.

◆ invTransform() [35/35]

Foam::tmp< Foam::Field< Foam::tensor > > invTransform ( const pointUIndList & global,
const UList< tensor > & input ) const
virtual

With rotation tensors at given global positions.

Definition at line 209 of file coordinateSystemTransform.C.

◆ rotationsImpl() [2/2]

template<class PointField>
Foam::tmp< Foam::tensorField > rotationsImpl ( const PointField & global) const

Definition at line 28 of file coordinateSystemTemplates.C.

References tmp< T >::New(), R(), and UList< T >::size().

Here is the call graph for this function:

◆ transformPointImpl() [2/2]

template<class PointField>
Foam::tmp< Foam::pointField > transformPointImpl ( const PointField & localCart) const

Definition at line 46 of file coordinateSystemTemplates.C.

References tmp< T >::New(), origin_, rot_, UList< T >::size(), and Foam::transform().

Here is the call graph for this function:

◆ invTransformPointImpl() [2/2]

template<class PointField>
Foam::tmp< Foam::pointField > invTransformPointImpl ( const PointField & global) const

Definition at line 64 of file coordinateSystemTemplates.C.

References Foam::invTransform(), tmp< T >::New(), origin_, rot_, and UList< T >::size().

Here is the call graph for this function:

◆ manyTimesImpl() [2/2]

template<class RetType, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > manyTimesImpl ( const tensor & tt,
const UList< Type > & input,
const BinaryOp & bop )

Definition at line 82 of file coordinateSystemTemplates.C.

References Foam::New(), and UList< T >::size().

Here is the call graph for this function:

◆ oneToOneImpl() [2/2]

template<class RetType, class PointField, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > oneToOneImpl ( const PointField & global,
const UList< Type > & input,
const BinaryOp & bop ) const

Definition at line 105 of file coordinateSystemTemplates.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::New(), R, and UList< T >::size().

Here is the call graph for this function:

◆ oneToManyImpl() [2/2]

template<class RetType, class PointField, class Type, class BinaryOp>
Foam::tmp< Foam::Field< RetType > > oneToManyImpl ( const PointField & global,
const Type & input,
const BinaryOp & bop ) const

Definition at line 135 of file coordinateSystemTemplates.C.

References Foam::New(), R, and UList< T >::size().

Here is the call graph for this function:

Member Data Documentation

◆ spec_

autoPtr<coordinateRotation> spec_
protected

User specification of the coordinate rotation.

May be invalid after a move assignment or transfer

Definition at line 221 of file coordinateSystem.H.

Referenced by assign(), clear(), coordinateSystem(), coordinateSystem(), coordinateSystem(), coordinateSystem(), coordinateSystem(), coordinateSystem(), coordinateSystem(), coordinateSystem(), good(), operator=(), operator=(), rotation(), rotation(), write(), and writeEntry().

◆ origin_

◆ rot_

◆ name_

word name_
protected

◆ note_

string note_
protected

◆ dummy_

Foam::coordinateSystem dummy_
staticprotected

Dummy coordinate system for suppressed manipulation.

Definition at line 246 of file coordinateSystem.H.

Referenced by indirect::note(), and indirect::origin().


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