Добрый день!
Пример.
У фильтра только один ноль, равный +1j*0.5. Если создадим эти условия в fdatool и перейдем на вкладку FilterCoefficients, то увидим FIR фильтр с коэффициентами: [1, -0.5j]. Как FDATool это делает?
Проверим, получим нули и полюса от numerator: tf2zpk([1, -0.5j],1) выдаст ноль +1j*0.5. Правильно!
Теперь я хочу в m-коде, используя zp2tf() получить numerator, как в fdatool.
[a,b] = zp2tf((1j*0.5),0,1); не выдает комплексный numerator.
zp2tf использую не по правилам? Других функций, подходящих по смыслу, не наше.
Не понимаю, что творю, заблудился?!
Update: реализовал tf2zpk через функцию poly. Все равно интересно, почему tf2zpk не выдает комплексных чисел.