Доступ к данным о передаточной функции
[num,den] = tfdata(sys)
[num,den,Ts] = tfdata(sys)
[num,den,Ts,sdnum,sdden]=tfdata(sys)
[num,den,Ts,...]=tfdata(sys,J1,...,Jn)
[num,den] = tfdata(sys)
возвращает числитель (числители) и знаменатель (знаменатели) передаточной функции для TF, модель SS или ZPK (или массив LTI TF, моделей SS или ZPK) sys
. Для одной моделей LTI, выходных параметров num
и den
из tfdata
массивы ячеек со следующими характеристиками:
num
и den
имейте столько же строк сколько выходные параметры и столько же столбцов сколько входные параметры.
(i,j)
записи num{i,j}
и den{i,j}
векторы-строки, задающие числитель и коэффициенты знаменателя передаточной функции от входа j
к выходу i
. Эти коэффициенты упорядочены в убывающих степенях s или z.
Для массивов sys
из моделей LTI, num
и den
многомерные массивы ячеек с теми же размерами как sys
.
Если sys
пространство состояний или модель нулей, полюсов и усиления, это сначала преобразовано в форму передаточной функции с помощью tf
. Для получения дополнительной информации о формате данных модели передаточной функции смотрите tf
страница с описанием.
Для передаточных функций SISO, синтаксиса
[num,den] = tfdata(sys,'v')
силы tfdata
возвратить числитель и знаменатель непосредственно как векторы-строки, а не как массивы ячеек (см. пример ниже).
[num,den,Ts] = tfdata(sys)
также возвращает шаг расчета Ts
.
[num,den,Ts,sdnum,sdden]=tfdata(sys)
также возвращает неопределенность в числителе и коэффициентах знаменателя идентифицированной системы sys
. sdnum{i,j}(k)
1 стандартная неопределенность в значении num{i,j}(k)
и sdden{i,j}(k)
1 стандартная неопределенность в значении den{i,j}(k)
. Если sys
не содержит информацию о неопределенности, sdnum
и sdden
пусты ([]
).
[num,den,Ts,...]=tfdata(sys,J1,...,Jn)
извлекает данные для (J1,...,JN)
запись в массиве моделей sys
.
Можно получить доступ к остающимся свойствам LTI sys
с get
или прямой ссылкой, например,
sys.Ts sys.variable
Учитывая передаточную функцию SISO
h = tf([1 1],[1 2 5])
можно извлечь числитель и коэффициенты знаменателя путем ввода
[num,den] = tfdata(h,'v') num = 0 1 1 den = 1 2 5
Этот синтаксис возвращает два вектора-строки.
Если вы поворачиваете h
в передаточную функцию MIMO путем ввода
H = [h ; tf(1,[1 1])]
команда
[num,den] = tfdata(H)
теперь возвращает два массива ячеек с данными о числителе/знаменателе для каждой записи SISO. Используйте celldisp
визуализировать эти данные. Ввод
celldisp(num)
Эта команда возвращает векторы числителя записей H
.
num{1} = 0 1 1 num{2} = 0 1
Точно так же для знаменателей, ввести
celldisp(den) den{1} = 1 2 5 den{2} = 1 1
Извлеките числитель, знаменатель и их стандартные отклонения для с 2 входами, 1 выход идентифицировал передаточную функцию.
load iddata7
модель передаточной функции
sys1 = tfest(z7, 2, 1, 'InputDelay',[1 0]);
эквивалентная модель процесса
sys2 = procest(z7, {'P2UZ', 'P2UZ'}, 'InputDelay',[1 0]); [num1, den1, ~, dnum1, dden1] = tfdata(sys1); [num2, den2, ~, dnum2, dden2] = tfdata(sys2);