From db72459430f866831d935f64ca12d26f1a9a597d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Oberhuber?= <oberhuber.tomas@gmail.com>
Date: Tue, 5 Dec 2017 19:41:26 +0100
Subject: [PATCH] Default value of the convergence residue threshold was set to
 zero.

---
 src/TNL/Solvers/IterativeSolver_impl.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/TNL/Solvers/IterativeSolver_impl.h b/src/TNL/Solvers/IterativeSolver_impl.h
index 9b98dbea3d..5af0c8e5bf 100644
--- a/src/TNL/Solvers/IterativeSolver_impl.h
+++ b/src/TNL/Solvers/IterativeSolver_impl.h
@@ -37,7 +37,11 @@ void IterativeSolver< Real, Index> :: configSetup( Config::ConfigDescription& co
 {
    config.addEntry< int >   ( prefix + "max-iterations", "Maximal number of iterations the solver may perform.", 1000000000 );
    config.addEntry< int >   ( prefix + "min-iterations", "Minimal number of iterations the solver must perform.", 0 );
-   config.addEntry< double >( prefix + "convergence-residue", "Convergence occurs when the residue drops bellow this limit.", 1.0e-6 );
+   
+   // The default value for the convergence residue MUST be zero since not in all problems we want to stop the solver
+   // when we reach a state near a steady state. This can be only temporary if, for example, when the boundary conditions
+   // are time dependent (growing velocity at inlet starting from 0).
+   config.addEntry< double >( prefix + "convergence-residue", "Convergence occurs when the residue drops bellow this limit.", 0.0 );
    config.addEntry< double >( prefix + "divergence-residue", "Divergence occurs when the residue exceeds given limit.", DBL_MAX );
    // TODO: setting refresh rate should be done in SolverStarter::setup (it's not a parameter of the IterativeSolver)
    config.addEntry< int >   ( prefix + "refresh-rate", "Number of iterations between solver monitor refreshes.", 1 );
-- 
GitLab