diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.C b/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.C
index 21686f302b8af7858a472c63c2d6df5609f61b92..77b73f00435c600f636d74ca55edf132ae884d16 100644
--- a/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.C
+++ b/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.C
@@ -125,6 +125,17 @@ dimensionedScalar det(const dimensionedSymmTensor& dt)
 }
 
 
+dimensionedSymmTensor cof(const dimensionedSymmTensor& dt)
+{
+    return dimensionedSymmTensor
+    (
+        "cof("+dt.name()+')',
+        dt.dimensions(),
+        cof(dt.value())
+    );
+}
+
+
 dimensionedSymmTensor inv(const dimensionedSymmTensor& dt)
 {
     return dimensionedSymmTensor
diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.H b/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.H
index 4299c3ff1ae368709b90ed9c285c8089eca5a129..5c03879af864d22461e1e4545ef3898dda3022da 100644
--- a/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.H
+++ b/src/OpenFOAM/dimensionedTypes/dimensionedSymmTensor/dimensionedSymmTensor.H
@@ -59,6 +59,7 @@ dimensionedSymmTensor twoSymm(const dimensionedSymmTensor&);
 dimensionedSymmTensor dev(const dimensionedSymmTensor&);
 dimensionedSymmTensor dev2(const dimensionedSymmTensor&);
 dimensionedScalar det(const dimensionedSymmTensor&);
+dimensionedSymmTensor cof(const dimensionedSymmTensor&);
 dimensionedSymmTensor inv(const dimensionedSymmTensor&);
 
 
diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.C b/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.C
index 319dee9d29a264e058132f87ed80b34dfc45d076..ba4c2d92606bcf32955ed13303d2f6b015d6d8ac 100644
--- a/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.C
+++ b/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.C
@@ -92,6 +92,17 @@ dimensionedScalar det(const dimensionedTensor& dt)
 }
 
 
+dimensionedTensor cof(const dimensionedTensor& dt)
+{
+    return dimensionedTensor
+    (
+        "cof("+dt.name()+')',
+        dt.dimensions(),
+        cof(dt.value())
+    );
+}
+
+
 dimensionedTensor inv(const dimensionedTensor& dt)
 {
     return dimensionedTensor
diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.H b/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.H
index cb20601ef6aa8c581dc2bc91a418e34243cec9f3..854c58f953b103365d05f3a2a32896dfecd1d42f 100644
--- a/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.H
+++ b/src/OpenFOAM/dimensionedTypes/dimensionedTensor/dimensionedTensor.H
@@ -56,6 +56,7 @@ dimensionedScalar tr(const dimensionedTensor&);
 dimensionedTensor dev(const dimensionedTensor&);
 dimensionedTensor dev2(const dimensionedTensor&);
 dimensionedScalar det(const dimensionedTensor&);
+dimensionedTensor cof(const dimensionedTensor&);
 dimensionedTensor inv(const dimensionedTensor&);
 dimensionedSymmTensor symm(const dimensionedTensor&);
 dimensionedSymmTensor twoSymm(const dimensionedTensor&);
diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.C b/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.C
index 60b89638d7091bcb6c87fa7756ad6c33c788d808..b63d227c056620f1064ae13bd96134a068767a7d 100644
--- a/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.C
+++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.C
@@ -46,6 +46,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2, transform)
 UNARY_FUNCTION(scalar, symmTensor, det, transform)
+UNARY_FUNCTION(symmTensor, symmTensor, cof, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv, inv)
 
 
diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.H
index 4c2ff48285575d04dcc036224b155e67440cc2de..9966c01e2f93b637202a12929468bf83f5a72563 100644
--- a/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.H
+++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedSymmTensorField/DimensionedSymmTensorField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2, transform)
 UNARY_FUNCTION(scalar, symmTensor, det, transform)
+UNARY_FUNCTION(symmTensor, symmTensor, cof, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv, inv)
 
 
diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.C b/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.C
index bdf4edb5fd0fbec3dd8fab6b74449e0b950f0c47..36cb451ca7ab78f6be30169e63fc7ec0723195b1 100644
--- a/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.C
+++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.C
@@ -45,6 +45,7 @@ UNARY_FUNCTION(tensor, tensor, skew, transform)
 UNARY_FUNCTION(tensor, tensor, dev, transform)
 UNARY_FUNCTION(tensor, tensor, dev2, transform)
 UNARY_FUNCTION(scalar, tensor, det, transform)
+UNARY_FUNCTION(tensor, tensor, cof, cof)
 UNARY_FUNCTION(tensor, tensor, inv, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues, sign)
 UNARY_FUNCTION(tensor, tensor, eigenVectors, transform)
diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.H
index 736628e1daf3344eaff4fd7f54c2e01a739a2fd1..628b44547a993dbfa2abed585fb68b1203452f24 100644
--- a/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.H
+++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedTensorField/DimensionedTensorField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(tensor, tensor, skew, transform)
 UNARY_FUNCTION(tensor, tensor, dev, transform)
 UNARY_FUNCTION(tensor, tensor, dev2, transform)
 UNARY_FUNCTION(scalar, tensor, det, transform)
+UNARY_FUNCTION(tensor, tensor, cof, cof)
 UNARY_FUNCTION(tensor, tensor, inv, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues, sign)
 UNARY_FUNCTION(tensor, tensor, eigenVectors, transform)
diff --git a/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.C b/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.C
index de6cb8350704cc80673241f28fe42100bbb23ed7..0349bf933f2c0f7577f8f0ddfeb0053909622072 100644
--- a/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.C
+++ b/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.C
@@ -48,6 +48,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm)
 UNARY_FUNCTION(symmTensor, symmTensor, dev)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2)
 UNARY_FUNCTION(scalar, symmTensor, det)
+UNARY_FUNCTION(symmTensor, symmTensor, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv)
 
 
diff --git a/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.H b/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.H
index 0b73d5580508fda7e1a166c2e33922437ef4cc52..bfa043aececf4146015ec6714f07746b2617f4e7 100644
--- a/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.H
+++ b/src/OpenFOAM/fields/FieldFields/symmTensorFieldField/symmTensorFieldField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm)
 UNARY_FUNCTION(symmTensor, symmTensor, dev)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2)
 UNARY_FUNCTION(scalar, symmTensor, det)
+UNARY_FUNCTION(symmTensor, symmTensor, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv)
 
 
diff --git a/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.C b/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.C
index 793691bf667ec0d595f242912010b57621123ae9..2286b908f7f0ca9314980647ebf7ae27c1fef95a 100644
--- a/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.C
+++ b/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.C
@@ -47,6 +47,7 @@ UNARY_FUNCTION(tensor, tensor, skew)
 UNARY_FUNCTION(tensor, tensor, dev)
 UNARY_FUNCTION(tensor, tensor, dev2)
 UNARY_FUNCTION(scalar, tensor, det)
+UNARY_FUNCTION(tensor, tensor, cof)
 UNARY_FUNCTION(tensor, tensor, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues)
 UNARY_FUNCTION(tensor, tensor, eigenVectors)
diff --git a/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.H b/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.H
index 52804804de316c4f0038d5e46d344ae3061bbd3c..7dbb90c59852fafb4c86ef9bcc5f16f43882dcd5 100644
--- a/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.H
+++ b/src/OpenFOAM/fields/FieldFields/tensorFieldField/tensorFieldField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(tensor, tensor, skew)
 UNARY_FUNCTION(tensor, tensor, dev)
 UNARY_FUNCTION(tensor, tensor, dev2)
 UNARY_FUNCTION(scalar, tensor, det)
+UNARY_FUNCTION(tensor, tensor, cof)
 UNARY_FUNCTION(tensor, tensor, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues)
 UNARY_FUNCTION(tensor, tensor, eigenVectors)
diff --git a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.C b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.C
index 9ed36ba9f1bd2c16ca41a4ea0caed1cc4d8bbfe4..c3c8ded87c6292ffb98beeaa9ccb2f6d60726d4a 100644
--- a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.C
+++ b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.C
@@ -46,6 +46,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm)
 UNARY_FUNCTION(symmTensor, symmTensor, dev)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2)
 UNARY_FUNCTION(scalar, symmTensor, det)
+UNARY_FUNCTION(symmTensor, symmTensor, cof)
 
 void inv(Field<symmTensor>& tf, const UList<symmTensor>& tf1)
 {
diff --git a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.H b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.H
index dc0ace7e9f81c2caf188532fd493f74c24ebfaf9..024e2ce683b6f3116e09ff4c96c23e6c652cd873 100644
--- a/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.H
+++ b/src/OpenFOAM/fields/Fields/symmTensorField/symmTensorField.H
@@ -62,6 +62,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm)
 UNARY_FUNCTION(symmTensor, symmTensor, dev)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2)
 UNARY_FUNCTION(scalar, symmTensor, det)
+UNARY_FUNCTION(symmTensor, symmTensor, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv)
 
 
diff --git a/src/OpenFOAM/fields/Fields/tensorField/tensorField.C b/src/OpenFOAM/fields/Fields/tensorField/tensorField.C
index d1bbaff82d74bfe3754c6bae2caec18da083b083..f2394fcc7610a6a12fc1c82258beefaf0ee048cf 100644
--- a/src/OpenFOAM/fields/Fields/tensorField/tensorField.C
+++ b/src/OpenFOAM/fields/Fields/tensorField/tensorField.C
@@ -45,6 +45,7 @@ UNARY_FUNCTION(tensor, tensor, skew)
 UNARY_FUNCTION(tensor, tensor, dev)
 UNARY_FUNCTION(tensor, tensor, dev2)
 UNARY_FUNCTION(scalar, tensor, det)
+UNARY_FUNCTION(tensor, tensor, cof)
 
 void inv(Field<tensor>& tf, const UList<tensor>& tf1)
 {
diff --git a/src/OpenFOAM/fields/Fields/tensorField/tensorField.H b/src/OpenFOAM/fields/Fields/tensorField/tensorField.H
index 847745d01a7ef14dbc09f1e12e63512aabd3060f..d916678006dd4a1903d9261cdf21a07fb5fbf9c7 100644
--- a/src/OpenFOAM/fields/Fields/tensorField/tensorField.H
+++ b/src/OpenFOAM/fields/Fields/tensorField/tensorField.H
@@ -62,6 +62,7 @@ UNARY_FUNCTION(tensor, tensor, skew)
 UNARY_FUNCTION(tensor, tensor, dev)
 UNARY_FUNCTION(tensor, tensor, dev2)
 UNARY_FUNCTION(scalar, tensor, det)
+UNARY_FUNCTION(tensor, tensor, cof)
 UNARY_FUNCTION(tensor, tensor, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues)
 UNARY_FUNCTION(tensor, tensor, eigenVectors)
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.C b/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.C
index 331564319844ff1436405a62d02f030dd8a7f4a4..737f59c7a0d68e9c1e627d5ca7fed4c6170bfbb2 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.C
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.C
@@ -46,6 +46,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2, transform)
 UNARY_FUNCTION(scalar, symmTensor, det, transform)
+UNARY_FUNCTION(symmTensor, symmTensor, cof, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv, inv)
 
 
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.H b/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.H
index b2bdfe46c611f355492b9fff119267ae2706d33d..a415b21a14372f4b6e22b93ecbc5997814c08af0 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.H
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricSymmTensorField/GeometricSymmTensorField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(symmTensor, symmTensor, twoSymm, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev, transform)
 UNARY_FUNCTION(symmTensor, symmTensor, dev2, transform)
 UNARY_FUNCTION(scalar, symmTensor, det, transform)
+UNARY_FUNCTION(symmTensor, symmTensor, cof, cof)
 UNARY_FUNCTION(symmTensor, symmTensor, inv, inv)
 
 
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.C b/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.C
index eb1663d0654cbaf6b6213429619bd46bcc5010ad..9347d0611953f6b75b5e61a656e041a9d63c05e1 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.C
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.C
@@ -45,6 +45,7 @@ UNARY_FUNCTION(tensor, tensor, skew, transform)
 UNARY_FUNCTION(tensor, tensor, dev, transform)
 UNARY_FUNCTION(tensor, tensor, dev2, transform)
 UNARY_FUNCTION(scalar, tensor, det, transform)
+UNARY_FUNCTION(tensor, tensor, cof, cof)
 UNARY_FUNCTION(tensor, tensor, inv, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues, sign)
 UNARY_FUNCTION(tensor, tensor, eigenVectors, transform)
diff --git a/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.H b/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.H
index eaf3be0d4270b5ab65a06af216afc59d34900008..8de3448272534134417f21e90b217e3917045be8 100644
--- a/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.H
+++ b/src/OpenFOAM/fields/GeometricFields/GeometricTensorField/GeometricTensorField.H
@@ -58,6 +58,7 @@ UNARY_FUNCTION(tensor, tensor, skew, transform)
 UNARY_FUNCTION(tensor, tensor, dev, transform)
 UNARY_FUNCTION(tensor, tensor, dev2, transform)
 UNARY_FUNCTION(scalar, tensor, det, transform)
+UNARY_FUNCTION(tensor, tensor, cof, cof)
 UNARY_FUNCTION(tensor, tensor, inv, inv)
 UNARY_FUNCTION(vector, tensor, eigenValues, sign)
 UNARY_FUNCTION(tensor, tensor, eigenVectors, transform)
diff --git a/src/OpenFOAM/primitives/SymmTensor/SymmTensorI.H b/src/OpenFOAM/primitives/SymmTensor/SymmTensorI.H
index 8e041f4158d928a4075a428e3e6e5feee4005c10..fd0f6e37c5791a5333c9fb81a661f94e73cfd50d 100644
--- a/src/OpenFOAM/primitives/SymmTensor/SymmTensorI.H
+++ b/src/OpenFOAM/primitives/SymmTensor/SymmTensorI.H
@@ -33,13 +33,11 @@ namespace Foam
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-//- Construct null
 template <class Cmpt>
 inline SymmTensor<Cmpt>::SymmTensor()
 {}
 
 
-//- Construct given VectorSpace
 template <class Cmpt>
 inline SymmTensor<Cmpt>::SymmTensor
 (
@@ -50,7 +48,6 @@ inline SymmTensor<Cmpt>::SymmTensor
 {}
 
 
-//- Construct given SphericalTensor
 template <class Cmpt>
 inline SymmTensor<Cmpt>::SymmTensor(const SphericalTensor<Cmpt>& st)
 {
@@ -60,7 +57,6 @@ inline SymmTensor<Cmpt>::SymmTensor(const SphericalTensor<Cmpt>& st)
 }
 
 
-//- Construct from components
 template <class Cmpt>
 inline SymmTensor<Cmpt>::SymmTensor
 (
@@ -75,7 +71,6 @@ inline SymmTensor<Cmpt>::SymmTensor
 }
 
 
-//- Construct from Istream
 template <class Cmpt>
 inline SymmTensor<Cmpt>::SymmTensor(Istream& is)
 :
@@ -159,7 +154,6 @@ inline Cmpt& SymmTensor<Cmpt>::zz()
 }
 
 
-//- Return symmetric tensor transpose
 template <class Cmpt>
 inline const SymmTensor<Cmpt>& SymmTensor<Cmpt>::T() const
 {
@@ -323,22 +317,19 @@ inline Cmpt det(const SymmTensor<Cmpt>& st)
 }
 
 
-//- Return the cofactor tensor of a symmetric tensor
+//- Return the cofactor symmetric tensor of a symmetric tensor
 template <class Cmpt>
-inline SymmTensor<Cmpt> cofactors(const SymmTensor<Cmpt>& st)
+inline SymmTensor<Cmpt> cof(const SymmTensor<Cmpt>& st)
 {
     return SymmTensor<Cmpt>
     (
         st.yy()*st.zz() - st.yz()*st.yz(),
         st.xz()*st.yz() - st.xy()*st.zz(),
-        st.xy()*st.yz() - st.yy()*st.xz(),
+        st.xy()*st.yz() - st.xz()*st.yy(),
 
-        st.xz()*st.yz() - st.xy()*st.zz(),
         st.xx()*st.zz() - st.xz()*st.xz(),
         st.xy()*st.xz() - st.xx()*st.yz(),
 
-        st.xy()*st.yz() - st.xz()*st.yy(),
-        st.xy()*st.xz() - st.xx()*st.yz(),
         st.xx()*st.yy() - st.xy()*st.xy()
     );
 }
diff --git a/src/OpenFOAM/primitives/Tensor/TensorI.H b/src/OpenFOAM/primitives/Tensor/TensorI.H
index 63d74483e653be5688082dd765054abf28598bb1..99aa6f260f1d5aeeea2ed3dc726feebf9a515f3f 100644
--- a/src/OpenFOAM/primitives/Tensor/TensorI.H
+++ b/src/OpenFOAM/primitives/Tensor/TensorI.H
@@ -467,7 +467,7 @@ inline Cmpt det(const Tensor<Cmpt>& t)
 
 //- Return the cofactor tensor of a tensor
 template <class Cmpt>
-inline Tensor<Cmpt> cofactors(const Tensor<Cmpt>& t)
+inline Tensor<Cmpt> cof(const Tensor<Cmpt>& t)
 {
     return Tensor<Cmpt>
     (
diff --git a/src/OpenFOAM/primitives/Tensor2D/Tensor2DI.H b/src/OpenFOAM/primitives/Tensor2D/Tensor2DI.H
index f98d472f927f5409e9740d167b30690ffaa38ad1..da278da8198cb4e5b035005976b52d688b204e99 100644
--- a/src/OpenFOAM/primitives/Tensor2D/Tensor2DI.H
+++ b/src/OpenFOAM/primitives/Tensor2D/Tensor2DI.H
@@ -31,13 +31,11 @@ namespace Foam
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
 
-//- Construct null
 template <class Cmpt>
 inline Tensor2D<Cmpt>::Tensor2D()
 {}
 
 
-//- Construct given VectorSpace
 template <class Cmpt>
 inline Tensor2D<Cmpt>::Tensor2D(const VectorSpace<Tensor2D<Cmpt>, Cmpt, 4>& vs)
 :
@@ -45,7 +43,6 @@ inline Tensor2D<Cmpt>::Tensor2D(const VectorSpace<Tensor2D<Cmpt>, Cmpt, 4>& vs)
 {}
 
 
-//- Construct given SphericalTensor2D
 template <class Cmpt>
 inline Tensor2D<Cmpt>::Tensor2D(const SphericalTensor2D<Cmpt>& st)
 {
@@ -54,7 +51,6 @@ inline Tensor2D<Cmpt>::Tensor2D(const SphericalTensor2D<Cmpt>& st)
 }
 
 
-//- Construct from components
 template <class Cmpt>
 inline Tensor2D<Cmpt>::Tensor2D
 (
@@ -67,7 +63,6 @@ inline Tensor2D<Cmpt>::Tensor2D
 }
 
 
-//- Construct from Istream
 template <class Cmpt>
 inline Tensor2D<Cmpt>::Tensor2D(Istream& is)
 :
@@ -153,7 +148,6 @@ inline Cmpt& Tensor2D<Cmpt>::yy()
 }
 
 
-//- Return tensor transpose
 template <class Cmpt>
 inline Tensor2D<Cmpt> Tensor2D<Cmpt>::T() const
 {
@@ -303,17 +297,27 @@ inline Cmpt det(const Tensor2D<Cmpt>& t)
     return(t.xx()*t.yy() - t.xy()*t.yx());
 }
 
-//- Return the inverse of a tensor give the determinant
+
+//- Return the cofactor tensor of a tensor
 template <class Cmpt>
-inline Tensor2D<Cmpt> inv(const Tensor2D<Cmpt>& t, const Cmpt dett)
+inline Tensor2D<Cmpt> cof(const Tensor2D<Cmpt>& t)
 {
     return Tensor2D<Cmpt>
     (
         t.yy(), -t.xy(),
        -t.yx(),  t.xx()
-    )/dett;
+    );
+}
+
+
+//- Return the inverse of a tensor given the determinant
+template <class Cmpt>
+inline Tensor2D<Cmpt> inv(const Tensor2D<Cmpt>& t, const Cmpt dett)
+{
+    return cof(t)/dett;
 }
 
+
 //- Return the inverse of a tensor
 template <class Cmpt>
 inline Tensor2D<Cmpt> inv(const Tensor2D<Cmpt>& t)