Объекты являются экземплярами классов модели. Каждый класс является проектом, который задает следующую информацию о вашей модели:
Как данные об объектно-ориентированной памяти
Какие операции можно выполнить на объекте
Этот тулбокс включает девять классов для представления моделей. Например, 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) |