Объекты являются экземплярами классов модели. Каждый класс представляет собой проект, определяющий следующую информацию о модели:
Как объект хранит данные
Операции, которые можно выполнить с объектом
Эта панель инструментов включает девять классов для представления моделей. Например, idss представляет линейные модели состояния-пространства и idnlarx представляет нелинейные модели ARX. Полный список доступных объектов модели см. в разделах Доступные линейные модели и Доступные нелинейные модели.
Свойства модели определяют способ хранения информации объектом модели. Объекты модели хранят информацию о модели, такую как математическая форма модели, имена входных и выходных каналов, единицы, имена и значения оценочных параметров, неопределенности параметров и отчет об оценке. Например, idss модель имеет InputName свойство для хранения одного или нескольких имен входных каналов.
Разрешенные операции с объектом называются методами. В программном обеспечении System Identification Toolbox™ некоторые методы имеют одно и то же имя, но применяются к нескольким объектам модели. Например, step создает график ответа на шаг для всех динамических системных объектов. Однако другие методы уникальны для конкретного объекта модели. Например, canon уникален для состояния-пространства idss модели и linearize к нелинейным моделям черного ящика.
Каждый класс имеет специальный метод, называемый конструктором, для создания объектов этого класса. С помощью конструктора создается экземпляр соответствующего класса или создается экземпляр объекта. Имя конструктора совпадает с именем класса. Например, idss и idnlarx являются как именем класса, так и именем конструктора для создания экземпляров линейных моделей состояния-пространства и нелинейных моделей ARX соответственно.
Конструкторы модели используются для создания объекта модели в командной строке путем явного указания всех требуемых свойств модели.
При необходимости необходимо создать объект модели независимо от оценки.
Моделирование или анализ влияния параметров модели на ее отклик, независимо от оценки.
Укажите начальное предположение для определенных значений параметров модели перед оценкой. Можно задать границы для значений параметров или настроить информацию о вспомогательной модели заранее, или и то и другое. Информация о вспомогательной модели включает в себя указание имен ввода/вывода, единиц измерения, примечаний, пользовательских данных и т.д.
В большинстве случаев команды оценки можно использовать как для построения, так и для оценки модели - без необходимости независимого построения объекта модели. Например, команда оценкиtfest создает модель передаточной функции с использованием данных и количества полюсов и нулей модели. Аналогично, nlarx создает нелинейную модель ARX, используя порядки и задержки данных и моделей, определяющие конфигурацию регрессора. Сведения о том, как создавать и оценивать модели с помощью одной команды, см. в разделе Команды оценки модели.
В случае серых моделей сначала необходимо построить объект модели, а затем оценить параметры обычного дифференциального или дифференциального уравнения.
В следующей таблице представлены конструкторы моделей, доступные в изделии System Identification Toolbox для представления различных типов нелинейных моделей.
После оценки модели можно распознать соответствующие объекты модели в браузере MATLAB ® Workspace по именам классов. Имя конструктора совпадает с именем создаваемого объекта.
Сведения о том, как создавать и оценивать модели с помощью одной команды, см. в разделе Команды оценки модели.
Сводка по конструкторам моделей
| Конструктор модели | Результирующий класс модели |
|---|---|
idnlgrey | Нелинейное обыкновенное дифференциальное или дифференциальное уравнение (серые модели). Вы пишете функцию или MEX-файл для представления управляющих уравнений. |
idnlarx | Нелинейные модели ARX, которые определяют прогнозируемый выход как нелинейную функцию прошлых входов и выходов. |
idnlhw | Нелинейные модели Хаммерштейна - Винера, включающие линейную динамическую систему с нелинейными статическими преобразованиями входов и выходов. |
Дополнительные сведения об использовании этих команд см. в разделе Когда создавать структуру модели независимо от оценки.
Объект модели хранит информацию в свойствах соответствующего класса модели.
Нелинейные модели idnlarx, idnlhw, и idnlgrey основаны на idnlmodel суперкласс и наследуют все idnlmodel свойства.
Как правило, все объекты модели имеют свойства, относящиеся к следующим категориям:
Названия входных и выходных каналов, например InputName и OutputName
Время выборки модели, например Ts
Единицы времени
Порядок модели и математическая структура (например, ОДУ или нелинейности)
Свойства, хранящие результаты оценки (Report)
Комментарии пользователя, например Notes и Userdata
Сведения о получении справки по свойствам объекта см. на страницах ссылок на модель.
В следующей таблице представлены команды для просмотра и изменения значений свойств модели. Имена свойств не чувствительны к регистру. Если первые несколько букв однозначно идентифицируют свойство, вводить полное имя свойства не требуется.
| Задача | Команда | Пример |
|---|---|---|
| Просмотр всех свойств модели и их значений | Использовать get. |
Загрузите данные образца, вычислите нелинейную модель ARX и перечислите свойства модели. load iddata1
sys = nlarx(z1,[4 4 1]);
get(sys) |
| Доступ к определенному свойству модели | Используйте точечную нотацию. | Просмотрите функцию вывода в предыдущей модели. sys.OutputFcn |
Для свойств, таких как Report, которые сконфигурированы как структуры, используйте точечное представление формы model.PropertyName.FieldName.FieldName - имя любого поля свойства. |
Просмотрите опции, используемые при нелинейной оценке модели ARX. sys.Report.OptionsUsed | |
| Изменение значений свойств модели | Используйте точечную нотацию. | Измените функцию нелинейного отображения, используемую функцией вывода. sys.OutputFcn = 'sigmoidnet'; |
| Доступ к значениям параметров модели и информации о неопределенности | Использовать getpvec и getcov (для idnlgrey только модели). |
Параметры модели и связанные с ними данные неопределенности. getpvec(sys) |
| Установка значений параметров модели и информации о неопределенности | Использовать setpar и setcov (для idnlgrey только модели). |
Задайте вектор параметра. sys = setpar(sys,'Value',parlist) |
| Получение количества параметров | Использовать nparams. |
Получение количества параметров. nparams(sys) |