Создайте модель данных частотной характеристики, преобразуйте в модель данных частотной характеристики
sys = frd(response,frequency)
sys = frd(response,frequency,Ts)
sys = frd
sysfrd = frd(sys,frequency)
sysfrd = frd(sys,frequency,units)
sys = frd(response,frequency)
создает данные частотной характеристики (frd
) объект модели sys
из данных частотной характеристики, хранимых в многомерном массиве response
. Векторная frequency
представляет базовые частоты для данных частотной характеристики. Смотрите Формат данных для Ответа Аргумента в Моделях FRD для списка форматов данных отклика.
sys = frd(response,frequency,Ts)
создает frd в дискретном времени
объект модели sys
со скалярным шагом расчета Ts
. Задайте Ts
= -1, чтобы создать frd в дискретном времени
объект модели без определения шага расчета.
sys = frd
создает пустой frd
объект модели.
Список входного параметра для любого из этих синтаксисов может сопровождаться именем/свойством значения парами вида
'PropertyName',PropertyValue
Можно использовать эти дополнительные аргументы, чтобы задать различные свойства модели. Для получения дополнительной информации о доступных свойствах frd
модели, см. Свойства.
Чтобы форсировать модель FRD sys
унаследовать все его родовые свойства LTI от любой существующей модели LTI refsys
, используйте синтаксис
sys = frd(response,frequency,ltisys)
sysfrd = frd(sys,frequency)
преобразует модель динамической системы sys
в форму данных частотной характеристики. Частотная характеристика вычисляется на частотах, предоставляемых вектором frequency
, в rad/TimeUnit
, где TimeUnit
- временные модули входа динамической системы, заданная в TimeUnit
свойство sys
.
sysfrd = frd(sys,frequency,units)
преобразует модель динамической системы в модель frd
моделирует и интерпретирует частоты в frequency
вектор, для которого модули задаются как units
. Для получения списка значений, которые units
может взять, увидеть FrequencyUnit
свойство в свойствах.
Когда вы задаете модель SISO или MIMO FRD или массив моделей FRD, входного параметра frequency
всегда является вектором длины Nf
, где Nf
- количество точек частотных данных в FRD. Спецификация входного параметра response
приведено в следующей таблице.
Формат данных для ответа аргумента в моделях FRD
Форма модели | Формат данных отклика |
---|---|
SISO модель | Вектор длины |
Модель MIMO с |
|
| Многомерный массив размера [ |
frd
объекты имеют следующие свойства:
|
Частотные точки данных частотной характеристики. Задайте |
|
Частотные модули модели.
Единицы модулей Изменение этого свойства изменяет общее поведение системы. Использовать По умолчанию: |
|
Данные частотной характеристики. The |
|
Задержки на транспорте. Для систем непрерывного времени задайте задержки транспорта в модуле времени, сохраненной в Для системы MIMO с По умолчанию: |
|
Входная задержка для каждого входного канала, заданная как скалярное значение или числовой вектор. Для систем непрерывного времени задайте задержки на входе в модуле времени, сохраненной в Для системы с Можно также задать По умолчанию: 0 |
|
Выходные задержки. Для системы с По умолчанию 0 для всех выходных каналов |
|
Шаг расчета. Для моделей в непрерывном времени, Изменение этого свойства не дискретизирует и не переопределяет модель. По умолчанию: |
|
Модули измерения для временной переменной, шага расчета
Изменение этого свойства не влияет на другие свойства и, следовательно, изменяет общее поведение системы. Использовать По умолчанию: |
|
Входные имена каналов, заданные как одно из следующих:
Кроме того, используйте автоматическое расширение вектора, чтобы назначить входные имена для мультивходов. Для примера, если sys.InputName = 'controls'; Имена входа автоматически расширяются на Можно использовать сокращённое обозначение Входные имена каналов имеют несколько применений, включая:
По умолчанию: |
|
Входные модули канала, заданные как один из следующих:
Использование По умолчанию: |
|
Входные группы каналов. The sys.InputGroup.controls = [1 2]; sys.InputGroup.noise = [3 5]; создает входные группы с именем sys(:,'controls') По умолчанию: Struct без полей |
|
Выходы каналов, заданные как одно из следующих:
Кроме того, используйте автоматическое расширение вектора, чтобы назначить имена выходов для мультивыходов. Для примера, если sys.OutputName = 'measurements'; Выходы данных автоматически расширяются на Можно использовать сокращённое обозначение Имена выходных каналов имеют несколько применений, включая:
По умолчанию: |
|
Выход модулей канала, заданный как один из следующих:
Использование По умолчанию: |
|
Выходы каналов. The sys.OutputGroup.temperature = [1]; sys.InputGroup.measurement = [3 5]; создает выходные группы с именем sys('measurement',:) По умолчанию: Struct без полей |
|
Имя системы, заданное как вектор символов. Для примера, По умолчанию: |
|
Любой текст, который вы хотите связать с системой, сохраненный как строка или массив ячеек из векторов символов. Свойство сохраняет любой тип данных, которые вы предоставляете. Для образца, если sys1.Notes = "sys1 has a string."; sys2.Notes = 'sys2 has a character vector.'; sys1.Notes sys2.Notes ans = "sys1 has a string." ans = 'sys2 has a character vector.' По умолчанию: |
|
Любой тип данных, которые вы хотите связать с системой, заданный как любой MATLAB® тип данных. По умолчанию: |
|
Сетка дискретизации для массивов моделей, заданная как структура данных. Для массивов моделей, которые получают путем выборки одной или нескольких независимых переменных, это свойство отслеживает значения переменных, сопоставленные с каждой моделью в массиве. Эта информация появляется при отображении или построении графика массива моделей. Используйте эту информацию для отслеживания результатов к независимым переменным. Установите имена полей структуры данных в имена переменных выборки. Установите значения полей к выборочным значениям переменных, сопоставленным с каждой моделью в массиве. Все переменные выборки должны быть числовыми и скалярными, а все массивы выборочных значений должны совпадать с размерностями массива моделей. Например, предположим, что вы создадите массив линейных моделей 11 на 1, sysarr.SamplingGrid = struct('time',0:10) Точно так же предположим, что вы создадите массив моделей 6 на 9, [zeta,w] = ndgrid(<6 values of zeta>,<9 values of w>) M.SamplingGrid = struct('zeta',zeta,'w',w) Когда вы отображаете M M(:,:,1,1) [zeta=0.3, w=5] = 25 -------------- s^2 + 3 s + 25 M(:,:,2,1) [zeta=0.35, w=5] = 25 ---------------- s^2 + 3.5 s + 25 ... Для массивов моделей, сгенерированных линеаризацией Simulink® моделируйте в нескольких значениях параметров или рабочих точках, программное обеспечение заполняет По умолчанию: |
Создайте модель частотной характеристики
Создайте модель SISO FRD из вектора частоты и данных отклика:
% generate a frequency vector and response data freq = logspace(1,2); resp = .05*(freq).*exp(i*2*freq); % Create a FRD model sys = frd(resp,freq);
chgFreqUnit
| chgTimeUnit
| frdata
| frdfun
| set
| ss
| tf
| zpk
| idfrd
(System Identification Toolbox)