From 554542681a91f6e2f03abc8e08cba77f487f993d Mon Sep 17 00:00:00 2001 From: velho Date: Wed, 4 Jul 2007 15:05:47 +0000 Subject: [PATCH] Using relative error to approximate the values of lambda and mu. In other words: error = (new_value - old_value) / new_value. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3658 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/surf/lagrange.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/surf/lagrange.c b/src/surf/lagrange.c index af1b2f9ae3..8190dfba33 100644 --- a/src/surf/lagrange.c +++ b/src/surf/lagrange.c @@ -41,7 +41,7 @@ void lagrange_solve(lmm_system_t sys) * Lagrange Variables. */ int max_iterations= 10000; - double epsilon_min_error = 1e-4; + double epsilon_min_error = 1e-4; double dicotomi_min_error = 1e-8; double overall_error = 1; @@ -153,9 +153,9 @@ void lagrange_solve(lmm_system_t sys) //uses the partial differential inverse function tmp = var->func_fpi(var, tmp); - //computes de overall_error - if(overall_error < fabs(var->value - tmp)){ - overall_error = fabs(var->value - tmp); + //computes de overall_error using normalized value + if(overall_error < (fabs(var->value - tmp)/tmp) ){ + overall_error = (fabs(var->value - tmp)/tmp); } var->value = tmp; -- 2.20.1