summaryrefslogtreecommitdiffstats
path: root/scripts/ref_results/index_calculation.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/ref_results/index_calculation.py')
-rw-r--r--scripts/ref_results/index_calculation.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/scripts/ref_results/index_calculation.py b/scripts/ref_results/index_calculation.py
new file mode 100644
index 00000000..5ca4a46e
--- /dev/null
+++ b/scripts/ref_results/index_calculation.py
@@ -0,0 +1,41 @@
+import json
+
+
+def compute_index(total_measured, ref_result, count):
+ try:
+ average = float(total_measured / count)
+
+ except ZeroDivisionError:
+ average = 0
+ index = average / ref_result
+ return index
+
+
+def get_reference(*args):
+
+ with open('data/ref_results/reference.json') as reference_file:
+ reference_djson = json.load(reference_file)
+ for arg in args:
+ ref_n = reference_djson.get(str(arg))
+ reference_djson = reference_djson.get(str(arg))
+ return ref_n
+
+
+def generic_index(dict_gen, testcase, reference_num, *args):
+ c = len(args)
+ count = 0
+ total = 0
+ result = 0
+ for k, v in dict_gen.iteritems():
+ dict_temp = dict_gen[k]
+ if dict_gen[k]['name'] == str(testcase):
+ count = count + 1
+ for arg in args:
+ if arg == args[c - 1]:
+ try:
+ result = float(dict_temp.get(str(arg)))
+ except ValueError:
+ result = float(dict_temp.get(str(arg))[:-1]) * 1000
+ dict_temp = dict_temp.get(str(arg))
+ total = total + result
+ return compute_index(total, reference_num, count)