diff --git a/src/OpenFOAM/primitives/triad/triad.C b/src/OpenFOAM/primitives/triad/triad.C
index 2382e2c3219c65880c20da4619090aa8d9179266..10c77307b4d47da99fc7d5fb16af48d71077eda7 100644
--- a/src/OpenFOAM/primitives/triad/triad.C
+++ b/src/OpenFOAM/primitives/triad/triad.C
@@ -32,23 +32,48 @@ License
 namespace Foam
 {
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
 template<>
 const char* const triad::Vector<vector>::typeName = "triad";
 
 template<>
 const char* triad::Vector<vector>::componentNames[] = {"x", "y", "z"};
 
-const triad triad::zero(vector::zero, vector::zero, vector::zero);
-
-const triad triad::one(vector::one, vector::one, vector::one);
-
-const triad triad::max(vector::max, vector::max, vector::max);
-
-const triad triad::min(vector::min, vector::min, vector::min);
+const triad triad::zero
+(
+    vector(0, 0, 0),
+    vector(0, 0, 0),
+    vector(0, 0, 0)
+);
+
+const triad triad::one
+(
+    vector(1, 1, 1),
+    vector(1, 1, 1),
+    vector(1, 1, 1)
+);
+
+const triad triad::max
+(
+    vector(VGREAT, VGREAT, VGREAT),
+    vector(VGREAT, VGREAT, VGREAT),
+    vector(VGREAT, VGREAT, VGREAT)
+);
+
+const triad triad::min
+(
+    vector(-VGREAT, -VGREAT, -VGREAT),
+    vector(-VGREAT, -VGREAT, -VGREAT),
+    vector(-VGREAT, -VGREAT, -VGREAT)
+);
+
+const triad triad::unset
+(
+    vector(VGREAT, VGREAT, VGREAT),
+    vector(VGREAT, VGREAT, VGREAT),
+    vector(VGREAT, VGREAT, VGREAT)
+);
 
-const triad triad::unset(triad::max);
+}
 
 
 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
@@ -348,8 +373,4 @@ void Foam::triad::operator=(const tensor& t)
 }
 
 
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
 // ************************************************************************* //