Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Df parameter of Low models is replaced by weight because it means the same to maxmin...
[simgrid.git] / testsuite / surf / lmm_usage.c
index 346d073..3b534d9 100644 (file)
@@ -54,26 +54,36 @@ static double dichotomy(double func(double), double min, double max,
   if ((min_func > 0 && max_func < 0))
     abort();
 
+  SHOW_EXPR(min_error);
+
   while (overall_error > min_error) {
+    SHOW_EXPR(overall_error);
     if ((min_func > 0 && max_func > 0) ||
        (min_func < 0 && max_func < 0) || (min_func > 0 && max_func < 0)) {
       abort();
     }
 
+    SHOW_EXPR(min);
+    SHOW_EXPR(min_func);
+    SHOW_EXPR(max);
+    SHOW_EXPR(max_func);
+
     middle = (max + min) / 2.0;
     if ((min == middle) || (max == middle)) {
       break;
     }
     middle_func = func(middle);
+    SHOW_EXPR(middle);
+    SHOW_EXPR(middle_func);
 
     if (middle_func < 0) {
       min = middle;
       min_func = middle_func;
-      overall_error = max - middle_func;
+      overall_error = max_func - middle_func;
     } else if (middle_func > 0) {
       max = middle;
       max_func = middle_func;
-      overall_error = max - middle_func;
+      overall_error = middle_func-min_func;
     } else {
       overall_error = 0;
     }
@@ -124,10 +134,10 @@ void test1(method_t method)
   R_2 = lmm_variable_new(Sys, (void *) "R 2", 1.0, -1.0, 1);
   R_3 = lmm_variable_new(Sys, (void *) "R 3", 1.0, -1.0, 1);
 
-  lmm_update_variable_latency(Sys, R_1_2_3, 1.0);
-  lmm_update_variable_latency(Sys, R_1, 1.0);
-  lmm_update_variable_latency(Sys, R_2, 1.0);
-  lmm_update_variable_latency(Sys, R_3, 1.0);
+  lmm_update_variable_weight(Sys, R_1_2_3, 1.0);
+  lmm_update_variable_weight(Sys, R_1, 1.0);
+  lmm_update_variable_weight(Sys, R_2, 1.0);
+  lmm_update_variable_weight(Sys, R_3, 1.0);
 
   lmm_expand(Sys, L1, R_1_2_3, 1.0);
   lmm_expand(Sys, L2, R_1_2_3, 1.0);
@@ -187,7 +197,7 @@ void test1(method_t method)
 
     a_test_1 = a;
     b_test_1 = b;
-    x = dichotomy(diff_lagrange_test_1, 0, a, 1e-8);
+    x = dichotomy(diff_lagrange_test_1, 0, a, 1e-13);
 
     if (x < 0)
       x = 0;
@@ -253,8 +263,8 @@ void test2(method_t method)
   T1 = lmm_variable_new(Sys, (void *) "T1", 1.0, -1.0, 1);
   T2 = lmm_variable_new(Sys, (void *) "T2", 1.0, -1.0, 1);
 
-  lmm_update_variable_latency(Sys, T1, 1.0);
-  lmm_update_variable_latency(Sys, T2, 1.0);
+  lmm_update_variable_weight(Sys, T1, 1.0);
+  lmm_update_variable_weight(Sys, T2, 1.0);
 
 
   lmm_expand(Sys, CPU1, T1, 1.0);
@@ -422,7 +432,7 @@ void test3(method_t method)
     tmp_name[i + j] = bprintf("X_%03d", j);
     tmp_var[j] =
        lmm_variable_new(Sys, (void *) tmp_name[i + j], 1.0, -1.0, 15);
-    lmm_update_variable_latency(Sys, tmp_var[j], 1.0);
+    lmm_update_variable_weight(Sys, tmp_var[j], 1.0);
   }
 
   /*