FileName
|
Имя функции или файл MEX, хранящий структуру модели в виде вектора символов (без расширения) или указатель на функцию для вычисления состояний и выходных параметров. Если FileName вектор символов, например, 'twotanks_c' , затем это должно указать на файл MATLAB, Pcode-файл или файл MEX. Для получения дополнительной информации о файловых переменных, смотрите Определение Нелинейной Структуры модели Серого ящика.
|
Order
|
Количество выходных параметров, входных параметров и состояний модели в виде одного из следующего:
Векторный [Ny Nu Nx] , определение количества выходных параметров Ny модели , входные параметры Nu , и состояния Nx . Структура с fields'Ny' \nu , и 'Nx' .
Для временных рядов, Nu установлен в 0 , и для статических структур модели, Nx установлен в 0 .
|
Parameters
|
Параметры модели в виде одного из следующего:
Np - 1 массив структур, где Np количество параметров. Структура содержит следующие поля:
Поле | Описание | Значение по умолчанию |
---|
Name | Имя параметра в виде вектора символов. Например, 'pressure' . | 'pi' , где i целое число в [1,Np] | Unit | Модуль параметра в виде вектора символов. | '' | Value |
Начальное значение параметра в виде:
Конечный действительный скаляр Конечный действительный вектор-столбец Двумерная действительная матрица
| | Minimum |
Минимальное значение параметра в виде действительного скаляра, вектор-столбца или матрицы одного размера с Value .
Minimum > = Value для всех компонентов.
| -Inf(size(Value)) | Maximum |
Максимальное значение параметра в виде действительного скаляра, вектор-столбца или матрицы одного размера с Value .
Value <= Maximum для всех компонентов.
| Inf(size(Value)) | Fixed | Задает, фиксируется ли параметр к их начальным значениям в виде булева скаляра, вектор-столбца или матрицы одного размера с Value . |
false(size(Value))
Подразумевает, оцените все параметры
|
Np - 1 вектор действительных конечных начальных значений, InParameters .
Данные преобразованы в структуру со значениями по умолчанию для полей Name , Unit , Minimum , Maximum , и Fixed . Value присвоен значение InParameters(i) , где i целое число в [1,Np]
Np - 1 массив ячеек, содержащий конечные действительные скаляры, конечные вектора действительных чисел или конечные действительные двумерные матрицы начальных значений.
Структура создается со значениями по умолчанию для полей Name , Unit , Minimum , Maximum , и Fixed .
Используйте запись через точку, чтобы получить доступ к подполям i параметр th. Например, для idnlgrey модель M , i к параметру th получают доступ через M.Parameters(i) и его подполе Fixed M.Parameters(i).Fixed .
|
InitialStates
|
Начальные состояния параметров модели, заданных как одно из следующего:
Nx - 1 массив структур, где Nx количество состояний. Структура содержит следующие поля:
Поле | Описание | Значение по умолчанию |
---|
Name | Имя состояний в виде вектора символов. | 'xi' , где i целое число в [1,Nx] | Unit | Модуль состояний в виде вектора символов. | '' | Value |
Начальное значение начальных состояний в виде:
Конечный действительный скаляр Конечный действительный 1 Ne вектор, где Ne количество экспериментов в наборе данных, который будет использоваться в оценке
| | Minimum |
Минимальное значение начальных состояний в виде действительного скаляра или 1 Ne вектор одного размера с Value .
Minimum > = Value для всех компонентов.
| -Inf(size(Value)) | Maximum |
Максимальное значение параметров в виде действительного скаляра или 1 Ne вектор одного размера с Value .
Value <= Maximum для всех компонентов.
| Inf(size(Value)) | Fixed | Задает, фиксируются ли начальные состояния к их начальным значениям в виде булева скаляра или 1 Ne вектор одного размера с Value |
true(size(Value))
Подразумевает, не оценивайте начальные состояния.
|
[] .
Структура создается со значениями по умолчанию для полей Name , Unit , Minimum , Maximum , и Fixed . Value присвоен значение 0 .
Действительный конечный Nx - Ne матрица (InitStates ). Value из i элементом массива структур th является InitStates(i,Ne) , вектор-строка с Ne элементы. Minimum , Maximum , и Fixed будет -Inf Inf и true векторы-строки одного размера с InitStates(i,Ne) .
Массив ячеек с конечными векторами действительных чисел размера 1 Ne или {} (то же самое как [] ). Структура создается со значениями по умолчанию для полей Name , Unit , Minimum , Maximum , и Fixed .
Используйте запись через точку, чтобы получить доступ к подполям i начальное состояние th. Например, для idnlgrey модель M , i к начальному состоянию th получают доступ через M.InitialStates(i) и его подполе Fixed M.InitialStates(i).Fixed .
|
FileArgument
|
Содержит вспомогательные переменные, переданные файлу ОДУ (функция или файл MEX) заданный в FileName В виде массива ячеек. Эти переменные используются в качестве дополнительных входных параметров для определения выходные уравнения и/или состояние. Значение по умолчанию: {} .
|
SimulationOptions
|
Структура, которая задает метод симуляции и связанные опции, содержа следующие поля:
Поле | Описание | Значение по умолчанию |
---|
AbsTol | Допуск абсолютной погрешности. Этот скаляр применяется ко всем компонентам вектора состояния.
Применимый к: Переменные решатели шага.
Присваиваемое значение: положительное действительное значение. | 1e-6 | FixedStep | Размер шага используется решателем.
Применимый к: фиксированный шаг непрерывные решатели.
Присваиваемые значения: 'Auto' — Автоматически выбирает начальный шаг.
Действительное значение, таким образом, что 0<FixedStep<=1 .
|
'Auto'
Автоматически выбирает начальный шаг.
| InitialStep | Задает начальный шаг, на котором запускается решатель ОДУ.
Применимый к: переменный шаг, непрерывные решатели.
Присваиваемые значения: 'Auto' — Автоматически выбирает начальный шаг.
Положительное действительное значение, таким образом, что MinStep<=InitialStep<=MaxStep .
|
'Auto'
Автоматически выбирает начальный шаг.
| MaxOrder | Задает порядок Числовых формул дифференцирования (NDF).
Применимый к: ode15s.
Присваиваемые значения: 1, 2, 3, 4 или 5. | 5
| MaxStep | Задает самый большой временной шаг решателя ОДУ.
Применимый к: переменный шаг, непрерывные решатели.
Присваиваемые значения: |
'Auto'
Автоматически выбирает временной шаг.
| MinStep | Задает самый маленький временной шаг решателя ОДУ.
Применимый к: переменный шаг, непрерывные решатели.
Присваиваемые значения: |
'Auto'
Автоматически выбирает временной шаг.
| RelTol | Допуск относительной погрешности, который применяется ко всем компонентам вектора состояния. Предполагаемая ошибка в каждом этапе интеграции удовлетворяет |e(i)| <= max(RelTol*abs(x(i)), AbsTol(i)) .
Применимый к: переменный шаг, непрерывные решатели.
Присваиваемое значение: положительное действительное значение. |
1e-3
(точность на 0,1%).
| Solver | ОДУ (Полный дифференциал / Разностное уравнение) решатель для решения уравнений пространства состояний. Решатели переменного шага для непрерывного idnlgrey модели: 'ode45' — Рунге-Кутта (4,5) решатель для нежестких проблем.
'ode23' — Рунге-Кутта (2,3) решатель для нежестких проблем.
'ode113' — Решатель Адамса-Бэшфорта-Маултона для нежестких проблем.
'ode15s' — Числовой Дифференциальный решатель Формулы для жестких проблем.
'ode23s' — Модифицированный решатель Розенброка для жестких проблем.
'ode23t' — Трапециевидный решатель для умеренно жестких проблем.
'ode23tb' — Неявный решатель Рунге-Кутта для жестких проблем.
Решатели фиксированного шага для непрерывного idnlgrey модели: 'ode5' — Решатель Dormand-принца.
'ode4' — Четвертый порядок решатель Рунге-Кутта.
'ode3' — Решатель Шемпина Богацков.
'ode2' — Heun или улучшенный Эйлеров решатель.
'ode1' — Эйлеров решатель.
Решатели фиксированного шага для дискретного временем idnlgrey модели: 'FixedStepDiscrete' Общий: 'Auto' — Автоматически выбирает один из предыдущих решателей.
|
'Auto'
Автоматически выбирает один из решателей.
|
|
Report
|
Сводный отчет, который содержит информацию об опциях оценки и результатах, когда модель оценивается с помощью nlgreyest команда. Используйте Report чтобы запросить модель для того, как это было оценено, включая:
Содержимое Report не важны, если модель была создана конструкцией.
Если вы используете nlgreyest оценить модель, поля Report содержите информацию о данных об оценке, опциях и результатах.
load(fullfile(matlabroot,'toolbox','ident','iddemos','data','dcmotordata'));
z = iddata(y,u,0.1,'Name','DC-motor');
nlgr = idnlgrey('dcmotor_m',[2,1,2],[1;0.28],[0;0],0,'Name','DC-motor');
nlgr = nlgreyest(z,nlgr);
nlgr.Report.OptionsUsed
Option set for the nlgreyest command:
GradientOptions: [1x1 struct]
EstimateCovariance: 1
Display: 'off'
Regularization: [1x1 struct]
SearchMethod: 'auto'
SearchOptions: [1x1 idoptions.search.lsqnonlin]
OutputWeight: []
Advanced: [1x1 struct]
Report свойство только для чтения.
Для получения дополнительной информации об этом свойстве и как использовать его, см. Выходные аргументы в nlgreyest страница с описанием и Отчет Оценки.
|
TimeVariable
|
Независимая переменная для входных параметров, выходных параметров, и — когда доступный — внутренние состояния в виде вектора символов.
Значение по умолчанию: 't' |
NoiseVariance
|
Шумовое отклонение (ковариационная матрица) инноваций модели e. Присваиваемым значением является ny - ny матрица. Обычно устанавливайте автоматически алгоритмом оценки.
|
Ts
|
'SampleTime' . Ts положительная скалярная величина, представляющая период выборки. Это значение выражается в модуле, заданном TimeUnit свойство модели. Для непрерывной модели времени, Ts равно 0 (значение по умолчанию).
Изменение этого свойства не дискретизирует или передискретизирует модель.
Значение по умолчанию: 0 |
TimeUnit
|
Модули для переменной времени, шаг расчета Ts , и любые задержки модели в виде одного из следующих значений: 'nanoseconds'
'microseconds'
'milliseconds'
'seconds'
'minutes'
'hours'
'days'
'weeks'
'months'
'years'
Изменение этого свойства не оказывает влияния на другие свойства, и поэтому изменяет полное поведение системы. Используйте chgTimeUnit преобразовывать между единицами измерения времени, не изменяя поведение системы.
Значение по умолчанию: 'seconds' |
InputName
|
Введите названия канала в виде одного из следующего:
Вектор символов — Для моделей одно входа, например, 'controls' . Массив ячеек из символьных векторов Модели мультивхода For.
В качестве альтернативы используйте автоматическое векторное расширение, чтобы присвоить входные имена для мультивходных моделей. Например, если sys 2D входная модель, введите:
sys.InputName = 'controls';
Входные имена автоматически расширяются до {'controls(1)';'controls(2)'} .
Когда вы оцениваете модель с помощью iddata объект, data , программное обеспечение автоматически устанавливает InputName к data.InputName .
Можно использовать краткое обозначение u относиться к InputName свойство. Например, sys.u эквивалентно sys.InputName .
Входные названия канала имеют несколько использования, включая:
Идентификация каналов на отображении модели и графиках Извлечение подсистем систем MIMO Определение точек контакта, когда взаимосвязанные модели
Значение по умолчанию: '' для всех входных каналов |
InputUnit
|
Введите модули канала в виде одного из следующего:
Вектор символов — Для моделей одно входа, например, 'seconds' . Массив ячеек из символьных векторов Модели мультивхода For.
Используйте InputUnit отслеживать модули входного сигнала. InputUnit не оказывает влияния на поведение системы.
Значение по умолчанию: '' для всех входных каналов |
InputGroup
|
Введите группы канала. InputGroup свойство позволяет вам присвоить входные каналы систем MIMO в группы и обратиться к каждой группе по наименованию. Задайте входные группы как структуру. В этой структуре имена полей являются названиями группы, и значения полей являются входными каналами, принадлежащими каждой группе. Например:
sys.InputGroup.controls = [1 2];
sys.InputGroup.noise = [3 5];
создает входные группы под названием controls и noise это включает входные каналы 1, 2 и 3, 5, соответственно. Можно затем извлечь подсистему из controls входные параметры ко всему выходному использованию:
Значение по умолчанию: Struct без полей |
OutputName
|
Выведите названия канала в виде одного из следующего:
Вектор символов — Для моделей одно выхода. Например, 'measurements' . Массив ячеек из символьных векторов For модели мультивыхода.
В качестве альтернативы используйте автоматическое векторное расширение, чтобы присвоить выходные имена для мультивыходных моделей. Например, если sys 2D выходная модель, введите:
sys.OutputName = 'measurements';
Выходные имена автоматически расширяются до {'measurements(1)';'measurements(2)'} .
Когда вы оцениваете модель с помощью iddata объект, data , программное обеспечение автоматически устанавливает OutputName к data.OutputName .
Можно использовать краткое обозначение y относиться к OutputName свойство. Например, sys.y эквивалентно sys.OutputName .
Выходные названия канала имеют несколько использования, включая:
Идентификация каналов на отображении модели и графиках Извлечение подсистем систем MIMO Определение точек контакта, когда взаимосвязанные модели
Значение по умолчанию: '' для всех выходных каналов |
OutputUnit
|
Выведите модули канала в виде одного из следующего:
Вектор символов — Для моделей одно выхода. Например, 'seconds' . Массив ячеек из символьных векторов For модели мультивыхода.
Используйте OutputUnit отслеживать модули выходного сигнала. OutputUnit не оказывает влияния на поведение системы.
Значение по умолчанию: '' для всех выходных каналов |
OutputGroup
|
Выведите группы канала. OutputGroup свойство позволяет вам присвоить выходные каналы систем MIMO в группы и обратиться к каждой группе по наименованию. Задайте выходные группы как структуру. В этой структуре имена полей являются названиями группы, и значения полей являются выходными каналами, принадлежащими каждой группе. Например:
sys.OutputGroup.temperature = [1];
sys.InputGroup.measurement = [3 5];
создает выходные группы под названием temperature и measurement это включает выходные каналы 1, и 3, 5, соответственно. Можно затем извлечь подсистему от всех входных параметров до measurement выходное использование:
Значение по умолчанию: Struct без полей |
Name
|
Имя системы в виде вектора символов. Например, 'system_1' .
Значение по умолчанию: '' |
Notes
|
Любой текст, который вы хотите сопоставить с системой, сохраненной как строка или массив ячеек из символьных векторов. Свойство хранит, какой бы ни тип данных вы обеспечиваете. Например, если sys1 и sys2 модели динамической системы, можно установить их Notes свойства можно следующим образом:
ans =
"sys1 has a string."
ans =
'sys2 has a character vector.'
Значение по умолчанию: [0×1 string] |
UserData
|
Любой тип данных вы хотите сопоставить с системой в виде любого типа данных MATLAB.
Значение по умолчанию: [] |