From 7c0716d930adf6bb5eed375951fd9e10c2bb57cd Mon Sep 17 00:00:00 2001
From: Matthieu Schaller <matthieu.schaller@durham.ac.uk>
Date: Mon, 17 Apr 2017 17:11:07 +0100
Subject: [PATCH] Simpler periodicity switch in M2L

---
 src/multipole.h | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/src/multipole.h b/src/multipole.h
index e7864c97de..df3ecfc906 100644
--- a/src/multipole.h
+++ b/src/multipole.h
@@ -1494,16 +1494,14 @@ INLINE static void gravity_M2L(struct grav_tensor *l_b,
                                int periodic) {
 
   /* Compute distance vector */
-  double dx, dy, dz;
-  if (periodic) {
-    dx = box_wrap(pos_b[0] - pos_a[0], 0., 1.);
-    dy = box_wrap(pos_b[1] - pos_a[1], 0., 1.);
-    dz = box_wrap(pos_b[2] - pos_a[2], 0., 1.);
-  } else {
-    dx = pos_b[0] - pos_a[0];
-    dy = pos_b[1] - pos_a[1];
-    dz = pos_b[2] - pos_a[2];
-  }
+  const double dx =
+      periodic ? box_wrap(pos_b[0] - pos_a[0], 0., 1.) : pos_b[0] - pos_a[0];
+  const double dy =
+      periodic ? box_wrap(pos_b[1] - pos_a[1], 0., 1.) : pos_b[1] - pos_a[1];
+  const double dz =
+      periodic ? box_wrap(pos_b[2] - pos_a[2], 0., 1.) : pos_b[2] - pos_a[2];
+
+  /* Compute distance */
   const double r2 = dx * dx + dy * dy + dz * dz;
   const double r_inv = 1. / sqrt(r2);
 
-- 
GitLab