diff --git a/mbtrack2/impedance/resistive_wall.py b/mbtrack2/impedance/resistive_wall.py
index 91fa7e1e1093fc4fcb2b8f5929b852d2dcb4b491..3d63d329266a485f79f29055309af85ed90d8ee7 100644
--- a/mbtrack2/impedance/resistive_wall.py
+++ b/mbtrack2/impedance/resistive_wall.py
@@ -163,18 +163,17 @@ class CircularResistiveWall(WakeField):
         in high-energy particle accelerators. World Scientific.
         """
         wl = np.zeros_like(time)
-        idx1 = time < 0
         if exact == True:
+            idx1 = time > 0
             idx2 = time == 0
-            idx3 = np.logical_not(np.logical_or(idx1, idx2))
             factor = (self.Z0 * c / (3 * np.pi * self.radius**2) * self.length)
-            if np.any(idx2):
-                # fundamental theorem of beam loading
-                wl[idx2] = 3 * factor / 2
-            wl[idx3] = self.__LongWakeExact(time[idx3], factor)
+            wl[idx1] = self.__LongWakeExact(time[idx1], factor)
+
+            # fundamental theorem of beam loading
+            wl[idx2] = 3 * factor / 2
         else:
-            idx2 = np.logical_not(idx1)
-            wl[idx2] = self.__LongWakeApprox(time[idx2])
+            idx = time >= 0
+            wl[idx] = self.__LongWakeApprox(time[idx])
         return wl
 
     def TransverseWakeFunction(self, time, exact=True):
@@ -220,16 +219,14 @@ class CircularResistiveWall(WakeField):
         Detectors and Associated Equipment 806 (2016): 221-230.
         """
         wt = np.zeros_like(time)
-        idx1 = time < 0
         if exact == True:
-            idx2 = time == 0
-            idx3 = np.logical_not(np.logical_or(idx1, idx2))
+            idx = time > 0
             factor = ((self.Z0 * c**2 * self.t0) /
                       (3 * np.pi * self.radius**4) * self.length)
-            wt[idx3] = self.__TransWakeExact(time[idx3], factor)
+            wt[idx] = self.__TransWakeExact(time[idx], factor)
         else:
-            idx2 = np.logical_not(idx1)
-            wt[idx2] = self.__TransWakeApprox(time[idx2])
+            idx = time >= 0
+            wt[idx] = self.__TransWakeApprox(time[idx])
         return wt
 
     def __LongWakeExact(self, t, factor):