Minor quibble: using `flipud` on a 1-D array is overkill.  `taps = np.unique(np.array(taps, int))[::-1]` is simpler.