From be5e12fcdb1b7e4ba5e692c0e83a332f15a7457c Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Thu, 9 Jan 2014 14:51:19 +0100
Subject: [PATCH] [Algorit] (minor) Rescale for numerical stability

---
 dune/tectonic/minimisation.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dune/tectonic/minimisation.hh b/dune/tectonic/minimisation.hh
index 71edb09b..5bf0888b 100644
--- a/dune/tectonic/minimisation.hh
+++ b/dune/tectonic/minimisation.hh
@@ -36,7 +36,7 @@ void minimise(Functional const &J, typename Functional::LocalVector &x,
     double const vnorm = v.two_norm();
     if (vnorm <= 0.0)
       return;
-    v *= -1;
+    v /= -vnorm; // normalise for numerical stability; note the minus
 
     double const alpha = lineSearch(J, x, v, bisection);
     Arithmetic::addProduct(x, alpha, v);
-- 
GitLab