00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "GeometricTensorField.H"
00027 #include <OpenFOAM/tensorFieldField.H>
00028
00029 #define TEMPLATE template<template<class> class PatchField, class GeoMesh>
00030 #include <OpenFOAM/GeometricFieldFunctionsM.C>
00031
00032
00033
00034 namespace Foam
00035 {
00036
00037
00038
00039 UNARY_FUNCTION(scalar, tensor, tr, transform)
00040 UNARY_FUNCTION(sphericalTensor, tensor, sph, transform)
00041 UNARY_FUNCTION(symmTensor, tensor, symm, transform)
00042 UNARY_FUNCTION(symmTensor, tensor, twoSymm, transform)
00043 UNARY_FUNCTION(tensor, tensor, skew, transform)
00044 UNARY_FUNCTION(tensor, tensor, dev, transform)
00045 UNARY_FUNCTION(tensor, tensor, dev2, transform)
00046 UNARY_FUNCTION(scalar, tensor, det, transform)
00047 UNARY_FUNCTION(tensor, tensor, cof, cof)
00048 UNARY_FUNCTION(tensor, tensor, inv, inv)
00049 UNARY_FUNCTION(vector, tensor, eigenValues, transform)
00050 UNARY_FUNCTION(tensor, tensor, eigenVectors, sign)
00051
00052 UNARY_FUNCTION(vector, symmTensor, eigenValues, transform)
00053 UNARY_FUNCTION(symmTensor, symmTensor, eigenVectors, sign)
00054
00055
00056
00057
00058 UNARY_OPERATOR(vector, tensor, *, hdual, transform)
00059 UNARY_OPERATOR(tensor, vector, *, hdual, transform)
00060
00061 BINARY_OPERATOR(vector, vector, tensor, /, '|', divide)
00062 BINARY_TYPE_OPERATOR(vector, vector, tensor, /, '|', divide)
00063
00064
00065
00066
00067 }
00068
00069
00070
00071 #include <OpenFOAM/undefFieldFunctionsM.H>
00072
00073