diff --git a/src/OpenFOAM/primitives/Vector/Vector.H b/src/OpenFOAM/primitives/Vector/Vector.H
index d80e5790fc1bb1c7e1397acffecf31b05bb17b64..6a6495c249b2689b5b220aebc844aee3a0179ad1 100644
--- a/src/OpenFOAM/primitives/Vector/Vector.H
+++ b/src/OpenFOAM/primitives/Vector/Vector.H
@@ -81,6 +81,9 @@ public:
         //- Construct null
         inline Vector();
 
+        //- Construct initialized to zero
+        inline explicit Vector(const Foam::zero);
+
         //- Construct given VectorSpace of the same rank
         template<class Cmpt2>
         inline Vector(const VectorSpace<Vector<Cmpt2>, Cmpt2, 3>&);
diff --git a/src/OpenFOAM/primitives/Vector/VectorI.H b/src/OpenFOAM/primitives/Vector/VectorI.H
index 4d598dea3682b9aa491520a4876f5f41a6248ac8..e6d72fa6b255ea5cf1d590903b4f4b4183b11851 100644
--- a/src/OpenFOAM/primitives/Vector/VectorI.H
+++ b/src/OpenFOAM/primitives/Vector/VectorI.H
@@ -30,6 +30,13 @@ inline Foam::Vector<Cmpt>::Vector()
 {}
 
 
+template<class Cmpt>
+inline Foam::Vector<Cmpt>::Vector(const Foam::zero z)
+:
+    Vector::vsType(z)
+{}
+
+
 template<class Cmpt>
 template<class Cmpt2>
 inline Foam::Vector<Cmpt>::Vector