Base class for coordinate system specification, the default coordinate system type is cartesian . More...
Classes | |
struct | iNew |
Helper for construction of coordinateSystem PtrList. More... | |
Public Member Functions | |
TypeName ("coordinateSystem") | |
Runtime type information. More... | |
coordinateSystem () | |
Default construct. This is an identity coordinate system. More... | |
coordinateSystem (const coordinateRotation &crot) | |
Copy construct from rotation with origin=0. More... | |
coordinateSystem (coordinateRotation &&crot) | |
Move construct from rotation with origin=0. More... | |
coordinateSystem (const coordinateSystem &csys) | |
Copy construct. More... | |
coordinateSystem (coordinateSystem &&csys) | |
Move construct. More... | |
coordinateSystem (autoPtr< coordinateSystem > &&csys) | |
Move construct from autoPtr. More... | |
coordinateSystem (const word &name, const coordinateSystem &csys) | |
Copy construct with a different name. More... | |
coordinateSystem (const point &origin, const coordinateRotation &crot) | |
Construct from origin and rotation. More... | |
coordinateSystem (const point &origin, const vector &axis, const vector &dirn) | |
Construct from origin and 2 axes. More... | |
coordinateSystem (const word &name, const point &origin, const coordinateRotation &crot) | |
Construct from origin and rotation. More... | |
coordinateSystem (const word &name, const point &origin, const vector &axis, const vector &dirn) | |
Construct from origin and 2 axes. More... | |
coordinateSystem (const word &name, const dictionary &dict) | |
Construct from dictionary with a given name. More... | |
coordinateSystem (const dictionary &dict) | |
Construct from dictionary without a name. More... | |
coordinateSystem (const dictionary &dict, const word &dictName) | |
Construct from dictionary with optional subDict lookup. More... | |
virtual autoPtr< coordinateSystem > | clone () const |
Return clone. More... | |
declareRunTimeSelectionTable (autoPtr, coordinateSystem, dictionary,(const dictionary &dict),(dict)) | |
declareRunTimeSelectionTable (autoPtr, coordinateSystem, registry,(const objectRegistry &obr, const dictionary &dict),(obr, dict)) | |
virtual | ~coordinateSystem ()=default |
Destructor. More... | |
virtual bool | valid () const |
Consider valid if it has a specification. More... | |
virtual bool | uniform () const |
True if the rotation tensor is uniform for all locations. More... | |
virtual const point & | origin () const |
Return origin. More... | |
virtual const coordinateRotation & | rotation () const |
The rotation specification. More... | |
virtual const word & | name () const |
Return the name. More... | |
virtual const string & | note () const |
Return the optional note. More... | |
virtual const tensor & | R () const |
Return const reference to the rotation tensor. More... | |
virtual const vector | e1 () const |
The local Cartesian x-axis in global coordinates. More... | |
virtual const vector | e2 () const |
The local Cartesian y-axis in global coordinates. More... | |
virtual const vector | e3 () const |
The local Cartesian z-axis in global coordinates. More... | |
virtual void | rename (const word &newName) |
Rename. More... | |
virtual string & | note () |
Edit access to optional note. More... | |
virtual point & | origin () |
Edit access to origin. More... | |
virtual void | clear () |
Reset origin and rotation to an identity coordinateSystem. More... | |
virtual void | rotation (autoPtr< coordinateRotation > &&crot) |
Change the rotation. More... | |
virtual void | write (Ostream &os) const |
Write. More... | |
virtual void | writeEntry (Ostream &os) const |
Write 'coordinateSystem' dictionary entry. More... | |
virtual void | writeEntry (const word &keyword, Ostream &os) const |
Write dictionary entry. More... | |
void | operator= (const coordinateSystem &csys) |
Copy assignment. More... | |
void | operator= (coordinateSystem &&csys) |
Move assignment. More... | |
void | operator= (const autoPtr< coordinateSystem > &csys) |
Copy assignment from autoPtr. More... | |
void | operator= (autoPtr< coordinateSystem > &&csys) |
Move assignment from autoPtr. More... | |
virtual tensor | R (const point &global) const |
virtual tmp< tensorField > | R (const UList< point > &global) const |
virtual tmp< tensorField > | R (const pointUIndList &global) const |
point | transformPoint (const point &localCart) const |
Transform point and add origin offset. More... | |
tmp< pointField > | transformPoint (const UList< point > &localCart) const |
Transform points and add origin offset. More... | |
tmp< pointField > | transformPoint (const pointUIndList &localCart) const |
Transform points and add origin offset. More... | |
point | invTransformPoint (const point &global) const |
Remove origin offset and inverse transform point. More... | |
tmp< pointField > | invTransformPoint (const UList< point > &global) const |
Remove origin offset and inverse transform points. More... | |
tmp< pointField > | invTransformPoint (const pointUIndList &global) const |
Remove origin offset and inverse transform points. More... | |
point | globalPosition (const point &local) const |
From local coordinate position to global (cartesian) position. More... | |
tmp< pointField > | globalPosition (const pointField &local) const |
From local coordinate position to global (cartesian) position. More... | |
point | localPosition (const point &global) const |
From global (cartesian) position to local coordinate position. More... | |
tmp< pointField > | localPosition (const pointField &global) const |
From global (cartesian) position to local coordinate position. More... | |
vector | globalVector (const vector &local) const |
From local to global (cartesian) vector components. More... | |
tmp< vectorField > | globalVector (const vectorField &local) const |
From local to global (cartesian) vector components. More... | |
vector | localVector (const vector &global) const |
From global (cartesian) to local vector components. More... | |
tmp< vectorField > | localVector (const vectorField &global) const |
From global (cartesian) to local vector components. More... | |
virtual symmTensor | transformPrincipal (const vector &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< symmTensor > > | transformPrincipal (const UList< vector > &input) const |
With constant rotation tensor. More... | |
virtual symmTensor | transformPrincipal (const point &global, const vector &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< symmTensor > > | transformPrincipal (const UList< point > &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transformPrincipal (const pointUIndList &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transformPrincipal (const UList< point > &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transformPrincipal (const pointUIndList &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual scalar | transform (const scalar &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< scalar > > | transform (const UList< scalar > &input) const |
With constant rotation tensor. More... | |
virtual scalar | transform (const point &global, const scalar &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< scalar > > | transform (const UList< point > &global, const scalar &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | transform (const pointUIndList &global, const scalar &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | transform (const UList< point > &global, const UList< scalar > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | transform (const pointUIndList &global, const UList< scalar > &input) const |
With rotation tensors at given global positions. More... | |
virtual vector | transform (const vector &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< vector > > | transform (const UList< vector > &input) const |
With constant rotation tensor. More... | |
virtual vector | transform (const point &global, const vector &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< vector > > | transform (const UList< point > &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | transform (const pointUIndList &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | transform (const UList< point > &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | transform (const pointUIndList &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual sphericalTensor | transform (const sphericalTensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< sphericalTensor > > | transform (const UList< sphericalTensor > &input) const |
With constant rotation tensor. More... | |
virtual sphericalTensor | transform (const point &global, const sphericalTensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< sphericalTensor > > | transform (const UList< point > &global, const sphericalTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | transform (const pointUIndList &global, const sphericalTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | transform (const UList< point > &global, const UList< sphericalTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | transform (const pointUIndList &global, const UList< sphericalTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual symmTensor | transform (const symmTensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< symmTensor > > | transform (const UList< symmTensor > &input) const |
With constant rotation tensor. More... | |
virtual symmTensor | transform (const point &global, const symmTensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< symmTensor > > | transform (const UList< point > &global, const symmTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transform (const pointUIndList &global, const symmTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transform (const UList< point > &global, const UList< symmTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | transform (const pointUIndList &global, const UList< symmTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tensor | transform (const tensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< tensor > > | transform (const UList< tensor > &input) const |
With constant rotation tensor. More... | |
virtual tensor | transform (const point &global, const tensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< tensor > > | transform (const UList< point > &global, const tensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | transform (const pointUIndList &global, const tensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | transform (const UList< point > &global, const UList< tensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | transform (const pointUIndList &global, const UList< tensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual scalar | invTransform (const scalar &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< scalar > > | invTransform (const UList< scalar > &input) const |
With constant rotation tensor. More... | |
virtual scalar | invTransform (const point &global, const scalar &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< scalar > > | invTransform (const UList< point > &global, const scalar &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | invTransform (const pointUIndList &global, const scalar &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | invTransform (const UList< point > &global, const UList< scalar > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< scalar > > | invTransform (const pointUIndList &global, const UList< scalar > &input) const |
With rotation tensors at given global positions. More... | |
virtual vector | invTransform (const vector &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< vector > > | invTransform (const UList< vector > &input) const |
With constant rotation tensor. More... | |
virtual vector | invTransform (const point &global, const vector &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< vector > > | invTransform (const UList< point > &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | invTransform (const pointUIndList &global, const vector &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | invTransform (const UList< point > &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< vector > > | invTransform (const pointUIndList &global, const UList< vector > &input) const |
With rotation tensors at given global positions. More... | |
virtual sphericalTensor | invTransform (const sphericalTensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< sphericalTensor > > | invTransform (const UList< sphericalTensor > &input) const |
With constant rotation tensor. More... | |
virtual sphericalTensor | invTransform (const point &global, const sphericalTensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< sphericalTensor > > | invTransform (const UList< point > &global, const sphericalTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | invTransform (const pointUIndList &global, const sphericalTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | invTransform (const UList< point > &global, const UList< sphericalTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< sphericalTensor > > | invTransform (const pointUIndList &global, const UList< sphericalTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual symmTensor | invTransform (const symmTensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< symmTensor > > | invTransform (const UList< symmTensor > &input) const |
With constant rotation tensor. More... | |
virtual symmTensor | invTransform (const point &global, const symmTensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< symmTensor > > | invTransform (const UList< point > &global, const symmTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | invTransform (const pointUIndList &global, const symmTensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | invTransform (const UList< point > &global, const UList< symmTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< symmTensor > > | invTransform (const pointUIndList &global, const UList< symmTensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tensor | invTransform (const tensor &input) const |
With constant rotation tensor. More... | |
virtual tmp< Field< tensor > > | invTransform (const UList< tensor > &input) const |
With constant rotation tensor. More... | |
virtual tensor | invTransform (const point &global, const tensor &input) const |
With rotation tensor at given global position. More... | |
virtual tmp< Field< tensor > > | invTransform (const UList< point > &global, const tensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | invTransform (const pointUIndList &global, const tensor &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | invTransform (const UList< point > &global, const UList< tensor > &input) const |
With rotation tensors at given global positions. More... | |
virtual tmp< Field< tensor > > | invTransform (const pointUIndList &global, const UList< tensor > &input) const |
With rotation tensors at given global positions. More... | |
template<class PointField > | |
Foam::tmp< Foam::tensorField > | rotationsImpl (const PointField &global) const |
template<class PointField > | |
Foam::tmp< Foam::pointField > | transformPointImpl (const PointField &localCart) const |
template<class PointField > | |
Foam::tmp< Foam::pointField > | invTransformPointImpl (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 | |
static autoPtr< coordinateSystem > | New (word modelType, const objectRegistry &obr, const dictionary &dict) |
static autoPtr< coordinateSystem > | New (word modelType, const dictionary &dict) |
Select construct the specified coordinate system type. More... | |
static autoPtr< coordinateSystem > | New (const objectRegistry &obr, const dictionary &dict, const word &dictName="") |
static autoPtr< coordinateSystem > | New (const dictionary &dict, const word &dictName="") |
Select constructed from dictionary. More... | |
static autoPtr< coordinateSystem > | New (Istream &is) |
Select constructed from Istream. More... | |
Protected Member Functions | |
template<class PointField > | |
tmp< tensorField > | rotationsImpl (const PointField &global) const |
Implementation for R() methods. More... | |
template<class PointField > | |
tmp< pointField > | transformPointImpl (const PointField &localCart) const |
Implementation for transformPoint() methods. More... | |
template<class PointField > | |
tmp< pointField > | invTransformPointImpl (const PointField &global) const |
Implementation for transformPosition() methods. More... | |
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. More... | |
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. More... | |
virtual vector | localToGlobal (const vector &local, bool translate) const |
virtual tmp< vectorField > | localToGlobal (const vectorField &local, bool translate) const |
virtual vector | globalToLocal (const vector &global, bool translate) const |
virtual tmp< vectorField > | globalToLocal (const vectorField &global, bool translate) const |
void | assign (const dictionary &dict) |
Assign from dictionary content. More... | |
coordinateSystem (std::nullptr_t) | |
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. More... | |
Protected Attributes | |
autoPtr< coordinateRotation > | spec_ |
User specification of the coordinate rotation. More... | |
point | origin_ |
The coordinate system origin. More... | |
tensor | rot_ |
The rotation tensor. More... | |
word | name_ |
The name of the coordinate system (optional) More... | |
string | note_ |
An optional note describing the coordinate system. More... | |
Static Protected Attributes | |
static coordinateSystem | dummy_ |
Dummy coordinate system for suppressed manipulation. More... | |
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:
Type of coordinateSystem:
Definition at line 144 of file coordinateSystem.H.
|
protected |
Construct null, without allocating a coordinateRotation specification.
Definition at line 109 of file coordinateSystem.C.
coordinateSystem | ( | ) |
Default construct. This is an identity coordinate system.
Definition at line 119 of file coordinateSystem.C.
|
explicit |
Copy construct from rotation with origin=0.
Definition at line 129 of file coordinateSystem.C.
|
explicit |
Move construct from rotation with origin=0.
Definition at line 135 of file coordinateSystem.C.
coordinateSystem | ( | const coordinateSystem & | csys | ) |
Copy construct.
Definition at line 141 of file coordinateSystem.C.
coordinateSystem | ( | coordinateSystem && | csys | ) |
Move construct.
Definition at line 151 of file coordinateSystem.C.
|
explicit |
Move construct from autoPtr.
Definition at line 161 of file coordinateSystem.C.
References coordinateSystem::operator=(), and coordinateSystem::spec_.
coordinateSystem | ( | const word & | name, |
const coordinateSystem & | csys | ||
) |
Copy construct with a different name.
Definition at line 179 of file coordinateSystem.C.
coordinateSystem | ( | const point & | origin, |
const coordinateRotation & | crot | ||
) |
Construct from origin and rotation.
Definition at line 193 of file coordinateSystem.C.
coordinateSystem | ( | const point & | origin, |
const vector & | axis, | ||
const vector & | dirn | ||
) |
Construct from origin and 2 axes.
Definition at line 218 of file coordinateSystem.C.
coordinateSystem | ( | const word & | name, |
const point & | origin, | ||
const coordinateRotation & | crot | ||
) |
Construct from origin and rotation.
Definition at line 203 of file coordinateSystem.C.
coordinateSystem | ( | const word & | name, |
const point & | origin, | ||
const vector & | axis, | ||
const vector & | dirn | ||
) |
Construct from origin and 2 axes.
Definition at line 229 of file coordinateSystem.C.
coordinateSystem | ( | const word & | name, |
const dictionary & | dict | ||
) |
Construct from dictionary with a given name.
Definition at line 245 of file coordinateSystem.C.
References coordinateSystem::assign(), and dict.
|
explicit |
Construct from dictionary without a name.
Definition at line 261 of file coordinateSystem.C.
References coordinateSystem::assign(), and dict.
coordinateSystem | ( | const dictionary & | dict, |
const word & | dictName | ||
) |
Construct from dictionary with optional subDict lookup.
dictName | If non-empty, the sub-dictionary to use. |
Definition at line 269 of file coordinateSystem.C.
References coordinateSystem::assign(), dict, dictName(), and dictionary::subDict().
|
virtualdefault |
Destructor.
|
protected |
Implementation for R() methods.
|
protected |
Implementation for transformPoint() methods.
Referenced by coordinateSystem::transformPoint().
|
protected |
Implementation for transformPosition() methods.
|
staticprotected |
Apply single transform tensor for multiple inputs.
|
protected |
Use position-dependent transform tensors for multiple inputs.
|
protected |
Use position-dependent transform tensors for single input.
|
protectedvirtual |
From local coordinate system to the global Cartesian system with optional translation for the origin
Reimplemented in cylindrical, and indirect.
Definition at line 341 of file coordinateSystem.C.
References Foam::transform().
Referenced by coordinateSystem::globalPosition(), coordinateSystem::globalVector(), cylindrical::localToGlobal(), and indirect::localToGlobal().
|
protectedvirtual |
From local coordinate system to the global Cartesian system with optional translation for the origin
Reimplemented in cylindrical, and indirect.
Definition at line 356 of file coordinateSystem.C.
References Foam::transform().
|
protectedvirtual |
From global Cartesian system to the local coordinate system with optional translation for the origin
Reimplemented in cylindrical, and indirect.
Definition at line 371 of file coordinateSystem.C.
References Foam::invTransform().
Referenced by cylindrical::globalToLocal(), indirect::globalToLocal(), coordinateSystem::localPosition(), and coordinateSystem::localVector().
|
protectedvirtual |
From global Cartesian system to the local coordinate system with optional translation for the origin
Reimplemented in cylindrical, and indirect.
Definition at line 386 of file coordinateSystem.C.
References Foam::invTransform().
|
protected |
Assign from dictionary content.
Definition at line 70 of file coordinateSystem.C.
References dictionary::csearchCompat(), dict, keyType::LITERAL, Time::New(), coordinateSystem::note_, coordinateSystem::origin_, dictionary::readEntry(), dictionary::readIfPresent(), coordinateSystem::rot_, and coordinateSystem::spec_.
Referenced by coordinateSystem::coordinateSystem().
TypeName | ( | "coordinateSystem" | ) |
Runtime type information.
|
inlinevirtual |
Return clone.
Reimplemented in cartesian, cylindrical, and indirect.
Definition at line 348 of file coordinateSystem.H.
References Time::New().
declareRunTimeSelectionTable | ( | autoPtr | , |
coordinateSystem | , | ||
dictionary | , | ||
(const dictionary &dict) | , | ||
(dict) | |||
) |
declareRunTimeSelectionTable | ( | autoPtr | , |
coordinateSystem | , | ||
registry | , | ||
(const objectRegistry &obr, const dictionary &dict) | , | ||
(obr, dict) | |||
) |
|
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 91 of file coordinateSystemNew.C.
References dict, Foam::exit(), Foam::FatalIOError, and FatalIOErrorInLookup.
|
static |
Select construct the specified coordinate system type.
An empty modelType will be treated as "cartesian"
Definition at line 130 of file coordinateSystemNew.C.
References dict, Foam::exit(), Foam::FatalIOError, and FatalIOErrorInLookup.
|
static |
Select construct from dictionary with reference to objectRegistry for indirect entries.
dictName | If non-empty, the sub-dictionary name to use for the coordinate system description. |
Definition at line 158 of file coordinateSystemNew.C.
References dict, dictName(), dictionary::getOrDefault(), Time::New(), dictionary::subDict(), and Foam::subDictCompat().
|
static |
Select constructed from dictionary.
dictName | If non-empty, the sub-dictionary name to use for the coordinate system description. |
Definition at line 187 of file coordinateSystemNew.C.
References dict, dictName(), dictionary::getOrDefault(), Time::New(), dictionary::subDict(), and Foam::subDictCompat().
|
static |
Select constructed from Istream.
Expects a name/dictionary as input
Definition at line 215 of file coordinateSystemNew.C.
References dict, and Time::New().
|
inlinevirtual |
Consider valid if it has a specification.
Reimplemented in indirect.
Definition at line 445 of file coordinateSystem.H.
References bool, and coordinateSystem::spec_.
Referenced by indirect::valid().
True if the rotation tensor is uniform for all locations.
Reimplemented in cylindrical, and indirect.
Definition at line 451 of file coordinateSystem.H.
Referenced by indirect::uniform().
|
inlinevirtual |
Return origin.
Reimplemented in indirect.
Definition at line 460 of file coordinateSystem.H.
References coordinateSystem::origin_.
Referenced by arcEdge::arcEdge(), targetCoeffTrim::calcCoeffs(), mixerFvMesh::mixerFvMesh(), Foam::operator!=(), indirect::origin(), and propellerInfo::setSampleDiskGeometry().
|
inlinevirtual |
The rotation specification.
Reimplemented in indirect.
Definition at line 466 of file coordinateSystem.H.
References coordinateSystem::spec_.
Referenced by arcEdge::arcEdge(), axes::R(), euler::R(), starcd::R(), indirect::rotation(), starcd::rotation(), cylindrical::rotation(), and axisAngle::rotation().
|
inlinevirtual |
Return the name.
Reimplemented in indirect.
Definition at line 472 of file coordinateSystem.H.
References coordinateSystem::name_.
|
inlinevirtual |
Return the optional note.
Reimplemented in indirect.
Definition at line 478 of file coordinateSystem.H.
References coordinateSystem::note_.
Referenced by indirect::note().
|
inlinevirtual |
Return const reference to the rotation tensor.
Reimplemented in cylindrical, and indirect.
Definition at line 484 of file coordinateSystem.H.
References coordinateSystem::rot_.
Referenced by Foam::operator!=(), indirect::R(), and coordinateSystem::rotationsImpl().
|
inlinevirtual |
The local Cartesian x-axis in global coordinates.
Reimplemented in indirect.
Definition at line 490 of file coordinateSystem.H.
References coordinateSystem::rot_.
Referenced by targetCoeffTrim::calcCoeffs(), and indirect::e1().
|
inlinevirtual |
The local Cartesian y-axis in global coordinates.
Reimplemented in indirect.
Definition at line 496 of file coordinateSystem.H.
References coordinateSystem::rot_.
Referenced by targetCoeffTrim::calcCoeffs(), and indirect::e2().
|
inlinevirtual |
The local Cartesian z-axis in global coordinates.
Reimplemented in indirect.
Definition at line 502 of file coordinateSystem.H.
References coordinateSystem::rot_.
Referenced by targetCoeffTrim::calcCoeffs(), rotorDiskSource::checkData(), indirect::e3(), and mixerFvMesh::mixerFvMesh().
|
inlinevirtual |
Rename.
Reimplemented in indirect.
Definition at line 511 of file coordinateSystem.H.
References coordinateSystem::name_.
|
inlinevirtual |
Edit access to optional note.
Reimplemented in indirect.
Definition at line 517 of file coordinateSystem.H.
References coordinateSystem::note_.
|
inlinevirtual |
Edit access to origin.
Reimplemented in indirect.
Definition at line 523 of file coordinateSystem.H.
References coordinateSystem::origin_.
|
virtual |
Reset origin and rotation to an identity coordinateSystem.
Also resets the note
Reimplemented in indirect.
Definition at line 290 of file coordinateSystem.C.
References SphericalTensor< scalar >::I, and Foam::Zero.
Referenced by surfaceWriter::surfaceWriter().
|
virtual |
Change the rotation.
Reimplemented in indirect.
Definition at line 401 of file coordinateSystem.C.
References SphericalTensor< scalar >::I, and coordinateRotation::R().
|
virtual |
Write.
Reimplemented in indirect.
Definition at line 415 of file coordinateSystem.C.
References Foam::isCartesian(), os(), Foam::type(), and OBJstream::write().
Referenced by Foam::operator<<().
|
virtual |
Write 'coordinateSystem' dictionary entry.
Reimplemented in indirect.
Definition at line 433 of file coordinateSystem.C.
References os().
Write dictionary entry.
Reimplemented in indirect.
Definition at line 439 of file coordinateSystem.C.
References Ostream::beginBlock(), Ostream::endBlock(), Foam::isCartesian(), os(), Foam::type(), and Ostream::writeEntry().
void operator= | ( | const coordinateSystem & | csys | ) |
Copy assignment.
Definition at line 478 of file coordinateSystem.C.
References SphericalTensor< scalar >::I, coordinateSystem::name_, coordinateSystem::note_, coordinateSystem::origin_, and coordinateSystem::spec_.
Referenced by coordinateSystem::coordinateSystem(), and coordinateSystem::operator=().
void operator= | ( | coordinateSystem && | csys | ) |
Move assignment.
Definition at line 497 of file coordinateSystem.C.
void operator= | ( | const autoPtr< coordinateSystem > & | csys | ) |
Copy assignment from autoPtr.
Definition at line 507 of file coordinateSystem.C.
References coordinateSystem::operator=().
void operator= | ( | autoPtr< coordinateSystem > && | csys | ) |
Move assignment from autoPtr.
Definition at line 513 of file coordinateSystem.C.
References coordinateSystem::operator=().
|
virtual |
Position-dependent rotation tensor (when uniform = false)
Reimplemented in cylindrical, cylindrical, and indirect.
Definition at line 299 of file coordinateSystem.C.
|
virtual |
Position-dependent rotation tensors (when uniform = false)
Reimplemented in cylindrical, and indirect.
Definition at line 305 of file coordinateSystem.C.
|
virtual |
Position-dependent rotation tensors (when uniform = false)
Reimplemented in cylindrical, and indirect.
Definition at line 314 of file coordinateSystem.C.
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 323 of file coordinateSystem.C.
References Foam::transform().
Foam::tmp< Foam::pointField > transformPoint | ( | const UList< point > & | localCart | ) | const |
Transform points and add origin offset.
Definition at line 100 of file coordinateSystemTransform.C.
References coordinateSystem::transformPointImpl().
Foam::tmp< Foam::pointField > transformPoint | ( | const pointUIndList & | localCart | ) | const |
Transform points and add origin offset.
Definition at line 109 of file coordinateSystemTransform.C.
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 332 of file coordinateSystem.C.
References Foam::invTransform().
Foam::tmp< Foam::pointField > invTransformPoint | ( | const UList< point > & | global | ) | const |
Remove origin offset and inverse transform points.
Definition at line 118 of file coordinateSystemTransform.C.
Foam::tmp< Foam::pointField > invTransformPoint | ( | const pointUIndList & | global | ) | const |
Remove origin offset and inverse transform points.
Definition at line 127 of file coordinateSystemTransform.C.
From local coordinate position to global (cartesian) position.
Definition at line 607 of file coordinateSystem.H.
References coordinateSystem::localToGlobal().
Referenced by searchableRotatedBox::searchableRotatedBox(), and propellerInfo::setSampleDiskGeometry().
|
inline |
From local coordinate position to global (cartesian) position.
Definition at line 613 of file coordinateSystem.H.
References coordinateSystem::localToGlobal().
From global (cartesian) position to local coordinate position.
Definition at line 619 of file coordinateSystem.H.
References coordinateSystem::globalToLocal().
|
inline |
From global (cartesian) position to local coordinate position.
Definition at line 625 of file coordinateSystem.H.
References coordinateSystem::globalToLocal().
From local to global (cartesian) vector components.
Definition at line 633 of file coordinateSystem.H.
References coordinateSystem::localToGlobal().
|
inline |
From local to global (cartesian) vector components.
Definition at line 639 of file coordinateSystem.H.
References coordinateSystem::localToGlobal().
From global (cartesian) to local vector components.
Definition at line 645 of file coordinateSystem.H.
References coordinateSystem::globalToLocal().
|
inline |
From global (cartesian) to local vector components.
Definition at line 651 of file coordinateSystem.H.
References coordinateSystem::globalToLocal().
|
virtual |
With constant rotation tensor.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 202 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 204 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 205 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 206 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 207 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 208 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 210 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 211 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 212 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 213 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With constant rotation tensor.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensor at given global position.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 214 of file coordinateSystemTransform.C.
|
virtual |
With rotation tensors at given global positions.
Definition at line 214 of file coordinateSystemTransform.C.
Foam::tmp< Foam::tensorField > rotationsImpl | ( | const PointField & | global | ) | const |
Definition at line 35 of file coordinateSystemTemplates.C.
References Time::New(), coordinateSystem::R(), and UList< T >::size().
Foam::tmp< Foam::pointField > transformPointImpl | ( | const PointField & | localCart | ) | const |
Definition at line 53 of file coordinateSystemTemplates.C.
References Time::New(), UList< T >::size(), and Foam::transform().
Foam::tmp< Foam::pointField > invTransformPointImpl | ( | const PointField & | global | ) | const |
Definition at line 71 of file coordinateSystemTemplates.C.
References Foam::invTransform(), Time::New(), and UList< T >::size().
Foam::tmp< Foam::Field< RetType > > manyTimesImpl | ( | const tensor & | tt, |
const UList< Type > & | input, | ||
const BinaryOp & | bop | ||
) |
Definition at line 89 of file coordinateSystemTemplates.C.
References Foam::input(), and Foam::New().
Foam::tmp< Foam::Field< RetType > > oneToOneImpl | ( | const PointField & | global, |
const UList< Type > & | input, | ||
const BinaryOp & | bop | ||
) | const |
Definition at line 112 of file coordinateSystemTemplates.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, Foam::input(), Foam::New(), R, and UList< T >::size().
Foam::tmp< Foam::Field< RetType > > oneToManyImpl | ( | const PointField & | global, |
const Type & | input, | ||
const BinaryOp & | bop | ||
) | const |
Definition at line 142 of file coordinateSystemTemplates.C.
References Foam::input(), Foam::New(), R, and UList< T >::size().
|
protected |
User specification of the coordinate rotation.
May be invalid after a move assignment or transfer
Definition at line 156 of file coordinateSystem.H.
Referenced by coordinateSystem::assign(), coordinateSystem::coordinateSystem(), coordinateSystem::operator=(), coordinateSystem::rotation(), and coordinateSystem::valid().
|
protected |
The coordinate system origin.
Definition at line 159 of file coordinateSystem.H.
Referenced by coordinateSystem::assign(), coordinateSystem::operator=(), and coordinateSystem::origin().
|
protected |
The rotation tensor.
Definition at line 162 of file coordinateSystem.H.
Referenced by coordinateSystem::assign(), coordinateSystem::e1(), coordinateSystem::e2(), coordinateSystem::e3(), and coordinateSystem::R().
|
protected |
The name of the coordinate system (optional)
Definition at line 165 of file coordinateSystem.H.
Referenced by coordinateSystem::name(), indirect::name(), coordinateSystem::operator=(), and coordinateSystem::rename().
|
protected |
An optional note describing the coordinate system.
Definition at line 168 of file coordinateSystem.H.
Referenced by coordinateSystem::assign(), coordinateSystem::note(), and coordinateSystem::operator=().
|
staticprotected |
Dummy coordinate system for suppressed manipulation.
Definition at line 171 of file coordinateSystem.H.
Referenced by indirect::note(), and indirect::origin().