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-by-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-by-1 вектор действительных конечных начальных значений, InParameters.
Данные преобразованы в структуру со значениями по умолчанию для полей Name, Unit, Minimum, Maximum и Fixed. Value присвоен значение InParameters(i), где i является целым числом в [1,Np]
Np-by-1 массив ячеек, содержащий конечные действительные скаляры, конечные вектора действительных чисел или конечные действительные двумерные матрицы начальных значений.
Структура создается со значениями по умолчанию для полей Name, Unit, Minimum, Maximum и Fixed.
Используйте запись через точку, чтобы получить доступ к подполям i th параметр. Например, для модели idnlgrey M, к i th параметр получает доступ через M.Parameters(i) и его подполе Fixed M.Parameters(i).Fixed.
|
InitialStates
|
Начальные состояния параметров модели, заданных как одно из следующего:
Nx-by-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-by-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-by-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.
Значение по умолчанию: [] |