diff --git a/cosserat-continuum.cc b/cosserat-continuum.cc
index ca6f472b4fd7910ec6136348e7d36ea4477739dd..45a8d91d66a093f8e25a8105f08fd10d8d644d8b 100644
--- a/cosserat-continuum.cc
+++ b/cosserat-continuum.cc
@@ -197,6 +197,9 @@ int main (int argc, char *argv[]) try
     BitSetVector<1> dirichletNodes(feBasis.size(), false);
     constructBoundaryDofs(dirichletBoundary,feBasis,dirichletNodes);
 
+    BitSetVector<1> neumannNodes(feBasis.size(), false);
+    constructBoundaryDofs(neumannBoundary,feBasis,neumannNodes);
+
     BitSetVector<blocksize> dirichletDofs(feBasis.size(), false);
     for (size_t i=0; i<feBasis.size(); i++)
       if (dirichletNodes[i][0])
@@ -336,9 +339,9 @@ int main (int argc, char *argv[]) try
     // That is what we need for the locking tests
     FieldVector<double,3> averageDef(0);
     for (size_t i=0; i<x.size(); i++)
-        if (neumannVertices[i][0])
+        if (neumannNodes[i][0])
             averageDef += x[i].r;
-    averageDef /= neumannVertices.count();
+    averageDef /= neumannNodes.count();
 
     if (mpiHelper.rank()==0)
     {