For linear phase FIR filters, each zero at z = z0 will have a matching reciprocal zero at z = 1/zo. And for real-valued coefficients each zero at z = zo will have a matching conjugate zero at z = *zo. Thus for linear phase real-valued coefficients, when you place one zero on the z-plane you determine the location of the other three zeros.


You are missing a couple of zeros. First of all, you must also include the reciprocal of the one located at $z=-2$, that is one at $z=-0.5$ You should also have one more zero coming from the fact that types 3 and 4 are anti-symmetric. This zero must be located at $z=1$, and is responsible for the minus sign in the anti-mirror image polynomial equation: $H(...


Beware of the differences between Matlab's firpm and Scipy.signal's remez. For example, these two statements are equivalent: % Matlab firpm(10,[.2 .8],[1 1],'Hilbert') # Python from scipy.signal import remez remez(11, [0.1, 0.4], [1], type='hilbert')

Only top voted, non community-wiki answers of a minimum length are eligible