35 #ifndef symmTensorFieldField_H
36 #define symmTensorFieldField_H
41 #define TEMPLATE template<template<class> class Field>
#define BINARY_TYPE_OPERATOR(ReturnType, Type1, Type2, Op, OpName, OpFunc)
#define UNARY_OPERATOR(ReturnType, Type1, Op, OpFunc, Dfunc)
#define BINARY_OPERATOR(ReturnType, Type1, Type2, Op, OpName, OpFunc)
#define UNARY_FUNCTION(ReturnType, Type1, Func, Dfunc)
High performance macro functions for Field<Type> algebra. These expand using either array element acc...
SphericalTensor< scalar > sphericalTensor
SphericalTensor of scalars.
Tensor< scalar > tensor
Tensor of scalars.
SymmTensor< scalar > symmTensor
SymmTensor of scalars.
SphericalTensor< Cmpt > sph(const DiagTensor< Cmpt > &dt)
Return the spherical part of a diagonal tensor.
void dev2(pointPatchField< tensor > &, const pointPatchField< tensor > &)
void tr(pointPatchField< scalar > &, const pointPatchField< tensor > &)
dimensionedSymmTensor cof(const dimensionedSymmTensor &dt)
tmp< DimensionedField< typename outerProduct< Type, Type >::type, GeoMesh, Field >> sqr(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
Vector< scalar > vector
A scalar version of the templated Vector.
void inv(pointPatchField< tensor > &, const pointPatchField< tensor > &)
void dev(pointPatchField< tensor > &, const pointPatchField< tensor > &)
void symm(pointPatchField< tensor > &, const pointPatchField< tensor > &)
void hdual(pointPatchField< vector > &, const pointPatchField< tensor > &)
void det(pointPatchField< scalar > &, const pointPatchField< tensor > &)
void twoSymm(pointPatchField< tensor > &, const pointPatchField< tensor > &)
dimensionedSymmTensor innerSqr(const dimensionedSymmTensor &dt)
void dot(GeometricField< typename innerProduct< Type1, Type2 >::type, GeoMesh, PrimitiveField1 > &gf, const GeometricField< Type1, GeoMesh, PrimitiveField2 > &gf1, const GeometricField< Type2, GeoMesh, PrimitiveField3 > &gf2)
Specialisation of FieldField<T> for symmTensor.