diff --git a/src/elasticity/assemble/IElasticity.hpp b/src/elasticity/assemble/IElasticity.hpp
index 10ef031c12bd0aa6b098b73a2c67fd1d9ee29270..4dd180902aa6369ca6e2985703530efa35489181 100644
--- a/src/elasticity/assemble/IElasticity.hpp
+++ b/src/elasticity/assemble/IElasticity.hpp
@@ -76,6 +76,7 @@ public:
 
   double Residual(const Vector &u, Vector &r) const override {
     r = *Prestress;
+    r = 0;
     for (cell ce = u.cells(); ce != u.cells_end(); ++ce)
       Residual(ce, u, r);
     r.ClearDirichletValues();