From 7a9097bd4ca9178fc89bb9008ee01f29f857a976 Mon Sep 17 00:00:00 2001 From: Furong Ye Date: Thu, 17 Sep 2020 19:51:13 +0200 Subject: [PATCH] correction of ising models --- src/Problems/PBO/f_ising_ring.hpp | 6 +++--- src/Problems/PBO/f_ising_torus.hpp | 2 +- src/Problems/PBO/f_ising_triangular.hpp | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Problems/PBO/f_ising_ring.hpp b/src/Problems/PBO/f_ising_ring.hpp index 3c1ecf9da..c3f20655d 100644 --- a/src/Problems/PBO/f_ising_ring.hpp +++ b/src/Problems/PBO/f_ising_ring.hpp @@ -32,10 +32,10 @@ class Ising_Ring : public IOHprofiler_problem { double internal_evaluate(const std::vector &x) { int result = 0, n = x.size(); - int neig; + int neighbor; for (int i = 0; i < n; ++i) { - neig = x[modulo_ising_ring((i - 1) , n)]; - result += (x[i] * neig) - ((1 - x[i]) * (1 - neig)); + neighbor = x[modulo_ising_ring((i - 1) , n)]; + result += (x[i] * neighbor) + ((1 - x[i]) * (1 - neighbor)); } return (double)result; } diff --git a/src/Problems/PBO/f_ising_torus.hpp b/src/Problems/PBO/f_ising_torus.hpp index 26c97cc2c..e1d1a0a12 100644 --- a/src/Problems/PBO/f_ising_torus.hpp +++ b/src/Problems/PBO/f_ising_torus.hpp @@ -45,7 +45,7 @@ class Ising_Torus : public IOHprofiler_problem { neighbors[0] = x[modulo_ising_torus(i + 1, lattice_size) * lattice_size + j]; neighbors[1] = x[i * lattice_size + modulo_ising_torus((j + 1) , lattice_size)]; for (neig = 0; neig < 2; neig++) { - result += (x[i*lattice_size + j] * neighbors[neig]) - ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig])); + result += (x[i*lattice_size + j] * neighbors[neig]) + ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig])); } } } diff --git a/src/Problems/PBO/f_ising_triangular.hpp b/src/Problems/PBO/f_ising_triangular.hpp index 8c89efc3f..9f0a1be4f 100644 --- a/src/Problems/PBO/f_ising_triangular.hpp +++ b/src/Problems/PBO/f_ising_triangular.hpp @@ -45,7 +45,7 @@ class Ising_Triangular : public IOHprofiler_problem { neighbors[2] = x[modulo_ising_triangular((i + 1) , lattice_size) * lattice_size + modulo_ising_triangular((j + 1), lattice_size)]; for (neig=0; neig < 3; neig++) { - result += (x[i * lattice_size + j] * neighbors[neig]) - ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig])); + result += (x[i * lattice_size + j] * neighbors[neig]) + ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig])); } } }