diff --git a/src/rodsolver.cc b/src/rodsolver.cc
index 869f4549cfc0e2320d71dda61b9db8def7fd6058..5654066e31d6b0cc18724683b6eec66d496691e2 100644
--- a/src/rodsolver.cc
+++ b/src/rodsolver.cc
@@ -49,6 +49,7 @@ template <class GridType>
 void RodSolver<GridType>::setup(const GridType& grid,
                                 const RodAssembler<GridType>* rodAssembler,
                                 const SolutionType& x,
+                                double tolerance,
                                 int maxTrustRegionSteps,
                                 double initialTrustRegionRadius,
                                 int multigridIterations,
@@ -65,6 +66,7 @@ void RodSolver<GridType>::setup(const GridType& grid,
     grid_ = &grid;
     rodAssembler_             = rodAssembler;
     x_                        = x;
+    tolerance_                = tolerance;
     maxTrustRegionSteps_      = maxTrustRegionSteps;
     initialTrustRegionRadius_ = initialTrustRegionRadius;
     multigridIterations_      = multigridIterations;
@@ -322,7 +324,7 @@ void RodSolver<GridType>::solve()
 
 
         printf("infinity norm of the correction: %g\n", corr.infinity_norm());
-        if (corr.infinity_norm() < 1e-5) {
+        if (corr.infinity_norm() < tolerance_) {
             std::cout << "CORRECTION IS SMALL ENOUGH" << std::endl;
             break;
         }
@@ -344,12 +346,6 @@ void RodSolver<GridType>::solve()
             
         }
         
-#if 0
-        std::cout << "newIterate: \n";
-        for (int j=0; j<newIterate.size(); j++)
-            std::cout << newIterate[j] << std::endl;
-#endif     
-        
         /** \todo Don't always recompute oldEnergy */
         double oldEnergy = rodAssembler_->computeEnergy(x_);
         double energy    = rodAssembler_->computeEnergy(newIterate); 
diff --git a/src/rodsolver.hh b/src/rodsolver.hh
index 4b8dcc496b87fba2daad1ac3754170127c24672e..ffe9b6b78606129ce8fa26f197909cf95ce4fc62 100644
--- a/src/rodsolver.hh
+++ b/src/rodsolver.hh
@@ -35,6 +35,7 @@ public:
     void setup(const GridType& grid, 
                const RodAssembler<GridType>* rodAssembler,
                const SolutionType& x,
+               double tolerance,
                int maxTrustRegionSteps,
                double initialTrustRegionRadius,
                int multigridIterations,
@@ -65,6 +66,9 @@ protected:
     /** \brief The initial trust-region radius in the maximum-norm */
     double initialTrustRegionRadius_;
 
+    /** \brief Tolerance of the trust-region solver */
+    double tolerance_;
+
     /** \brief Maximum number of trust-region steps */
     int maxTrustRegionSteps_;