diff --git a/lisainstrument/shift_inversion_numpy.py b/lisainstrument/shift_inversion_numpy.py
index 30dcd2f9f919de341bc0c1c6dfb434337788153a..57ad25cf5bd9992da236453c456f7498c21e6d87 100644
--- a/lisainstrument/shift_inversion_numpy.py
+++ b/lisainstrument/shift_inversion_numpy.py
@@ -79,6 +79,11 @@ class ShiftInverseNumpy:  # pylint: disable=too-few-public-methods
             tolerance: Maximum absolute error of result
         """
         self._max_abs_shift: Final = int(np.ceil(max_abs_shift))
+        
+        if self._max_abs_shift < 0:
+            msg = f"ShiftInverseNumpy: max_abs_shift must be positive, got {max_abs_shift}"
+            raise ValueError(msg)
+            
         self._interp_np: Final = interp
         self._max_iter = int(max_iter)
         self._tolerance = float(tolerance)