diff --git a/src/compute-disc-error.cc b/src/compute-disc-error.cc
index 7f3cde11bbcf42466581f94f7cb77c1b89413e24..2ae7ec0db214d36a5ccc94bb72b3e8cb02421638 100644
--- a/src/compute-disc-error.cc
+++ b/src/compute-disc-error.cc
@@ -317,8 +317,8 @@ void measureDiscreteEOC(const GridView gridView,
             for (int k=0; k<dim; k++)
               for (int l=0; l<4; l++)
               {
-                refDerivative[i][j][k] = derivativeQuaternionToMatrixRef[i][j][l] * referenceDerQuat[l][k];
-                numDerivative[i][j][k] = derivativeQuaternionToMatrixNum[i][j][l] * numericalDerQuat[l][k];
+                refDerivative[i][j][k] += derivativeQuaternionToMatrixRef[i][j][l] * referenceDerQuat[l][k];
+                numDerivative[i][j][k] += derivativeQuaternionToMatrixNum[i][j][l] * numericalDerQuat[l][k];
               }
 
         auto derDiff = refDerivative - numDerivative;  // compute the difference
@@ -511,8 +511,8 @@ void measureAnalyticalEOC(const GridView gridView,
             for (int k=0; k<dim; k++)
               for (int l=0; l<blocksize; l++)
               {
-                numDerivative[i][j][k] = derivativeQuaternionToMatrixNum[i][j][l] * num_di[l][k];
-                refDerivative[i][j][k] = derivativeQuaternionToMatrixRef[i][j][l] * ref_di[l][k];
+                numDerivative[i][j][k] += derivativeQuaternionToMatrixNum[i][j][l] * num_di[l][k];
+                refDerivative[i][j][k] += derivativeQuaternionToMatrixRef[i][j][l] * ref_di[l][k];
               }
 
         // integrate error