Go to the documentation of this file.
40 #define makeTransform(Op, Type) \
41 static inline Type Op##_##Type(const tensor& tt, const Type& in) \
70 + tt.
xy()*v.
y()*tt.
xy()
71 + tt.
xz()*v.
z()*tt.
xz(),
74 + tt.
xy()*v.
y()*tt.
yy()
75 + tt.
xz()*v.
z()*tt.
yz(),
78 + tt.
xy()*v.
y()*tt.
zy()
79 + tt.
xz()*v.
z()*tt.
zz(),
82 + tt.
yy()*v.
y()*tt.
yy()
83 + tt.
yz()*v.
z()*tt.
yz(),
86 + tt.
yy()*v.
y()*tt.
zy()
87 + tt.
yz()*v.
z()*tt.
zz(),
90 + tt.
zy()*v.
y()*tt.
zy()
91 + tt.
zz()*v.
z()*tt.
zz()
105 return transformPointImpl(localCart);
114 return transformPointImpl(localCart);
123 return invTransformPointImpl(global);
132 return invTransformPointImpl(global);
138 #undef makeCoordinateSystemTransform
139 #define makeCoordinateSystemTransform(Op, RetType, Type) \
140 Foam::RetType Foam::coordinateSystem::Op \
145 return Op##_##Type(rot_, input); \
148 Foam::tmp<Foam::Field<Foam::RetType>> Foam::coordinateSystem::Op \
150 const UList<Type>& input \
153 return manyTimesImpl<RetType>(rot_, input, Op##_##Type); \
156 Foam::RetType Foam::coordinateSystem::Op \
158 const point& global, \
162 return Op##_##Type(this->R(global), input); \
165 Foam::tmp<Foam::Field<Foam::RetType>> Foam::coordinateSystem::Op \
167 const UList<point>& global, \
171 return oneToManyImpl<RetType>(global, input, Op##_##Type); \
174 Foam::tmp<Foam::Field<Foam::RetType>> Foam::coordinateSystem::Op \
176 const pointUIndList& global, \
180 return oneToManyImpl<RetType>(global, input, Op##_##Type); \
183 Foam::tmp<Foam::Field<Foam::RetType>> Foam::coordinateSystem::Op \
185 const UList<point>& global, \
186 const UList<Type>& input \
189 return oneToOneImpl<RetType>(global, input, Op##_##Type); \
192 Foam::tmp<Foam::Field<Foam::RetType>> Foam::coordinateSystem::Op \
194 const pointUIndList& global, \
195 const UList<Type>& input \
198 return oneToOneImpl<RetType>(global, input, Op##_##Type); \
216 #undef makeCoordinateSystemTransform
const Cmpt & x() const
Access to the vector x component.
A templated (3 x 3) symmetric tensor of objects of <T>, effectively containing 6 elements,...
static symmTensor transformPrincipal_vector(const tensor &tt, const vector &v)
Transform principal.
A class for managing temporary objects.
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
const Cmpt & z() const
Access to the vector z component.
SymmTensor< scalar > symmTensor
SymmTensor of scalars, i.e. SymmTensor<scalar>.
A templated (3 x 3) diagonal tensor of objects of <T>, effectively containing 1 element,...
const Cmpt & y() const
Access to the vector y component.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
dimensionSet invTransform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
A List with indirect addressing.
point invTransformPoint(const point &global) const
Remove origin offset and inverse transform point.
point transformPoint(const point &localCart) const
Transform point and add origin offset.