diff --git a/src/pe/cr/HCSITS.impl.h b/src/pe/cr/HCSITS.impl.h
index a6d6258b5ca1fbe10212d08c061cfd4dc979b08c..314b3d1c1dae7313d706053d66011ebf62b7e540 100644
--- a/src/pe/cr/HCSITS.impl.h
+++ b/src/pe/cr/HCSITS.impl.h
@@ -154,6 +154,7 @@ inline void HardContactSemiImplicitTimesteppingSolvers::timestep( const real_t d
 
    numContacts_        = 0;
    numContactsTreated_ = 0;
+   maximumPenetration_ = 0;
 
    if (tt_ != NULL) tt_->start("Simulation Step");
 
@@ -210,7 +211,6 @@ inline void HardContactSemiImplicitTimesteppingSolvers::timestep( const real_t d
       contactCache.resize( numContactsMasked );
 
       {
-         maximumPenetration_ = 0;
 
          size_t j = 0;
          for( size_t i = 0; i < numContacts; ++i )