filt

Задайте дискретные передаточные функции в формате DSP

Синтаксис

sys = filt(num,den)
sys = filt(num,den,Ts)
sys = filt(M)

Описание

В цифровой обработке сигналов (DSP) принято записывать передаточные функции как рациональные выражения в z−1 и упорядочить числитель и знаменатель терминов в возрастающих степенях z−1. Для примера:

H(z1)=2+z11+0.4z1+2z2

Функция filt предусмотрена для облегчения спецификации передаточных функций в формате DSP.

sys = filt(num,den) создает передаточную функцию в дискретном времени sys с числителем (ами) num и знаменатель (ы) den. Значение шага расчета остается неопределенным (sys.Ts = -1) и выхода sys является объектом TF.

sys = filt(num,den,Ts) далее определяет значение шага расчета Ts (в секундах).

sys = filt(M) задает статический фильтр с матрицей усиления M.

За любым из предыдущих синтаксисов могут следовать пары имя/значение свойства вида

'Property',Value

Каждая пара задает конкретное свойство модели, например, входные имена или переменную передаточной функции. Для получения информации о доступных свойствах и их значениях смотрите tf страница с описанием.

Аргументы

Для передаточных функций SISO, num и den Векторы-строки содержат коэффициенты числителя и знаменателя, упорядоченные в возрастающих степенях z−1. Для примера, den = [1 0.4 2] представляет полином 1 + 0,4 z−1 + 2 z−2.

Передаточные функции MIMO рассматриваются как массивы передаточных функций SISO (по одному на канал ввода-вывода), каждая из которых характеризуется числителем и знаменателем. Входные параметры num и den являются тогда массивами ячеек векторов-строк, так что:

  • num и den иметь столько строк, сколько выходов, и столько столбцов, сколько входов.

  • Их (ij) значения num{i,j} и den{i,j} задайте числитель и знаменатель передаточной функции от входа j для вывода i.

Если все записи SISO имеют одинаковый знаменатель, можно также установить den в представление векторов-строк этого общего знаменателя.

Примеры

Создайте цифровой фильтр с двумя входами с входными именами 'channel1' и 'channel2':

num = {1 , [1 0.3]};
den = {[1 1 2] ,[5 2]};
H = filt(num,den,'inputname',{'channel1' 'channel2'})

Этот синтаксис возвращает:

Transfer function from input "channel1" to output:
        1
-----------------
1 + z^-1 + 2 z^-2
 
Transfer function from input "channel2" to output:
1 + 0.3 z^-1
------------
 5 + 2 z^-1
 
Sample time: unspecified

Совет

filt ведет себя как tf с Variable значение свойства установлено в 'z^-1'. См. tf запись ниже для получения дополнительной информации.

См. также

| |

Представлено до R2006a