diff --git a/main.py b/main.py old mode 100644 new mode 100755 index d56dcd7..9ab7de4 --- a/main.py +++ b/main.py @@ -58,7 +58,7 @@ def generate_data(matrix_path, epsilon, alpha_values): diff_norms = [] for alpha in alpha_values: - print(f"Running for alpha={alpha:.3f}") + print(f"Running for alpha={alpha:.6f}") data = run_pagerank(matrix_path, epsilon, alpha) if data: pagerank_iterations.append(data["pagerank_iterations"]) @@ -67,7 +67,7 @@ def generate_data(matrix_path, epsilon, alpha_values): gauss_seidel_times.append(data["gauss_seidel_time"]) diff_norms.append(data["diff_norm"]) else: - print(f"Skipping alpha={alpha:.3f} due to error") + print(f"Skipping alpha={alpha:.6f} due to error") pagerank_iterations.append(None) gauss_seidel_iterations.append(None) pagerank_times.append(None) @@ -111,11 +111,12 @@ def plot_curves(alpha_values, pagerank_iterations, gauss_seidel_iterations, page def main(): parser = argparse.ArgumentParser(description='Pagerank vs Gauß Seidel execution time depending on α') parser.add_argument('--alpha', type=int, default=10, help='number of alpha to test in the range (0,1)') + parser.add_argument('--max_alpha', type=float, default=1, help='stay strictly below this alpha') parser.add_argument('--epsilon', type=float, default=1e-7, help='epsilon value for the convergence') parser.add_argument('--matrix', type=str, default="out/input.mtx", help='path to the matrix file') args = parser.parse_args() - alpha_values = np.arange(0, 1, (1/args.alpha)) + alpha_values = np.arange(0, args.max_alpha, (1/args.alpha)) (pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms) = generate_data(args.matrix, args.epsilon, alpha_values) plot_curves(alpha_values, pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms)