diff --git a/dumux/boxmodels/common/boxmodel.hh b/dumux/boxmodels/common/boxmodel.hh
index 7ee2d0fa82344d78ab09a2136ba2a5e766871e7d..9e6d4d197f8d1ad366fcd1c999d1cd465ad5a81a 100644
--- a/dumux/boxmodels/common/boxmodel.hh
+++ b/dumux/boxmodels/common/boxmodel.hh
@@ -284,7 +284,7 @@ public:
      */
     Scalar primaryVarWeight(int vertIdx, int pvIdx) const
     {
-        return std::min(1.0/this->prevSol()[vertIdx][pvIdx], 1.0);
+        return 1.0/std::max(std::abs(this->prevSol()[vertIdx][pvIdx]), 1.0);
     }
 
     /*!