From: velho Date: Wed, 4 Jul 2007 15:05:47 +0000 (+0000) Subject: Using relative error to approximate the values of lambda and mu. X-Git-Tag: v3.3~1702 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/554542681a91f6e2f03abc8e08cba77f487f993d?hp=abe4718a5d6b036c7ae9684f827f0980d3f91a80 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 --- 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;