FileName
|
Имя функции или MEX-файла, хранящего структуру модели, указанное как символьный вектор (без расширения) или дескриптор функции для вычисления состояний и выходных данных. Если FileName - символьный вектор, например, 'twotanks_c', то он должен указывать на файл MATLAB, файл P-кода или файл MEX. Дополнительные сведения о переменных файла см. в разделе Определение нелинейной структуры модели «серый ящик».
|
Order
|
Количество выходов, входов и состояний модели, указанных как одно из следующих:
Вектор [Ny Nu Nx], указание количества выходов модели Ny, входы Nu, и состояния Nx. Структура с полями'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-на-1 вектор вещественных конечных начальных значений, InParameters.
Данные преобразуются в структуру со значениями по умолчанию для полей. Name, Unit, Minimum, Maximum, и Fixed. Value присваивается значение InParameters(i), где i является целым числом в [1,Np]
Np-by-1 клеточный массив, содержащий конечные вещественные скаляры, конечные вещественные векторы или конечные вещественные двумерные матрицы начальных значений.
Создается структура со значениями по умолчанию для полей. Name, Unit, Minimum, Maximum, и Fixed.
Используйте точечную нотацию для доступа к подполям i-й параметр. Например, для idnlgrey модель M, iДоступ к шестому параметру осуществляется через M.Parameters(i) и его подраздела Fixed около M.Parameters(i).Fixed.
|
InitialStates
|
Начальные состояния параметров модели указаны как одно из следующих:
Nx-by-1 структурный массив, где Nx - количество состояний. Структура содержит следующие поля:
| Область | Описание | Дефолт |
|---|
Name | Имя состояний, указанное как символьный вектор. | 'xi', где i является целым числом в [1,Nx] | Unit | Единица состояний, заданная как символьный вектор. | '' | Value |
Начальное значение начальных состояний, указанное как:
Конечный вещественный скаляр Конечное вещественное 1-by-Ne вектор, где Ne - количество экспериментов в наборе данных, используемых для оценки;
| | Minimum |
Минимальное значение начальных состояний, указанное как вещественный скаляр или 1-by-Ne вектор того же размера, что и Value.
Minimum >= Value для всех компонентов.
| -Inf(size(Value)) | Maximum |
Максимальное значение параметров, указанное как вещественный скаляр или 1-by-Ne вектор того же размера, что и Value.
Value <= Maximum для всех компонентов.
| Inf(size(Value)) | Fixed | Указывает, фиксированы ли начальные состояния к их начальным значениям, указанным как логический скаляр или 1-by-Ne вектор того же размера, что и Value |
true(size(Value))
Подразумевает, не оценивать начальные состояния.
|
[].
Создается структура со значениями по умолчанию для полей. Name, Unit, Minimum, Maximum, и Fixed. Value присваивается значение 0.
Действительный конечный Nxоколо-Ne матрица (InitStates). Value из iЭлемент массива структуры является InitStates(i,Ne), вектор строки с Ne элементы. Minimum, Maximum, и Fixed будет -Inf, Inf и true векторы строк того же размера, что и InitStates(i,Ne).
Массив ячеек с конечными вещественными векторами размера 1-by-Ne или {} (то же, что и []). Создается структура со значениями по умолчанию для полей. Name, Unit, Minimum, Maximum, и Fixed.
Используйте точечную нотацию для доступа к подполям iТретье исходное состояние. Например, для idnlgrey модель M, iДоступ к первому начальному состоянию осуществляется через M.InitialStates(i) и его подраздела Fixed около M.InitialStates(i).Fixed.
|
FileArgument
|
Содержит вспомогательные переменные, передаваемые в файл ODE (функция или MEX-файл), указанный в FileName, задается как массив ячеек. Эти переменные используются в качестве дополнительных входных данных для задания состояний и/или выходных уравнений. По умолчанию: {}.
|
SimulationOptions
|
Структура, определяющая метод моделирования и связанные опции, содержащая следующие поля:
| Область | Описание | Дефолт |
|---|
AbsTol | Абсолютный допуск ошибки. Этот скаляр применяется ко всем компонентам вектора состояния.
Применимо к решателям переменных шагов.
Присваиваемое значение: положительное действительное значение. | 1e-6 | FixedStep | Размер шага, используемый решателем.
Применимо к решателям с фиксированным шагом и непрерывным временем.
Присваиваемые значения: 'Auto' - автоматически выбирает начальный шаг.
Реальная ценность, такая, что 0<FixedStep<=1.
|
'Auto'
Автоматически выбирает начальный шаг.
| InitialStep | Указывает начальный шаг, на котором запускается решатель ODE.
Применимо к: Решателям с переменным шагом, непрерывным по времени.
Присваиваемые значения: 'Auto' - автоматически выбирает начальный шаг.
Положительное реальное значение, такое, что MinStep<=InitialStep<=MaxStep.
|
'Auto'
Автоматически выбирает начальный шаг.
| MaxOrder | Определяет порядок формул числового дифференцирования (NDF).
Применимо к: ode15.
Присваиваемые значения: 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' - Решатель Runge-Kutta (4,5) для нетипичных задач.
'ode23' - Решатель Runge-Kutta (2,3) для нетипичных задач.
'ode113' - решатель Адамса-Башфорта-Мултона для решения проблем, связанных с несоответствием требованиям.
'ode15s' - Решатель числовых дифференциальных формул для жестких задач.
'ode23s' - Модифицированный решатель Rosenbrock для жестких задач.
'ode23t' - Трапециевидный решатель для умеренно жестких задач.
'ode23tb' - неявный решатель Runge-Kutta для жестких задач.
Решатели с фиксированным шагом для непрерывного времени idnlgrey модели: 'ode5' - решатель Дорманд-Принс.
'ode4' - решатель Runge-Kutta четвертого порядка.
'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
|
Время выборки. Ts - положительный скаляр, представляющий период выборки. Это значение выражается в единицах, указанных TimeUnit свойство модели. Для модели непрерывного времени Ts равно 0 (по умолчанию).
Изменение этого свойства не дискретизирует и не выполняет повторную выборку модели.
По умолчанию: 0 |
TimeUnit
|
Единицы измерения для переменной времени, времени выборки Tsи любые временные задержки в модели, указанные как одно из следующих значений: 'nanoseconds'
'microseconds'
'milliseconds'
'seconds'
'minutes'
'hours'
'days'
'weeks'
'months'
'years'
Изменение этого свойства не влияет на другие свойства и, следовательно, изменяет общее поведение системы. Использовать chgTimeUnit(Панель инструментов системы управления) для преобразования единиц времени без изменения поведения системы.
По умолчанию: 'seconds' |
InputName
|
Имена входных каналов, указанные как одно из следующих:
Символьный вектор - для моделей с одним входом, например, 'controls'. Массив ячеек символьных векторов - для моделей с несколькими входами.
Можно также использовать автоматическое векторное расширение для назначения входных имен для моделей с несколькими входами. Например, если sys является моделью с двумя входами, введите:
sys.InputName = 'controls';
Имена вводимых данных автоматически расширяются до {'controls(1)';'controls(2)'}.
При оценке модели с использованием iddata объект, data, программное обеспечение устанавливается автоматически InputName кому data.InputName.
Можно использовать сокращенную нотацию u см. InputName собственность. Например, sys.u эквивалентно sys.InputName.
Имена входных каналов имеют несколько применений, в том числе:
Идентификация каналов на дисплее модели и графиках Извлечение подсистем систем MIMO Указание точек соединения при соединении моделей
По умолчанию: '' для всех входных каналов |
InputUnit
|
Блоки входных каналов, указанные как одно из следующих:
Символьный вектор - для моделей с одним входом, например, 'seconds'. Массив ячеек символьных векторов - для моделей с несколькими входами.
Использовать InputUnit отслеживание блоков входных сигналов. InputUnit не влияет на поведение системы.
По умолчанию: '' для всех входных каналов |
InputGroup
|
Группы входных каналов. InputGroup позволяет назначать входные каналы систем MIMO в группы и ссылаться на каждую группу по имени. Укажите входные группы как структуру. В этой структуре имена полей являются именами групп, а значения полей - входными каналами, принадлежащими каждой группе. Например:
sys.InputGroup.controls = [1 2];
sys.InputGroup.noise = [3 5];
создает входные группы с именем controls и noise которые включают в себя входные каналы 1, 2 и 3, 5 соответственно. Затем можно извлечь подсистему из controls входы на все выходы с использованием:
По умолчанию: структура без полей |
OutputName
|
Имена выходных каналов, указанные как одно из следующих:
Символьный вектор - для моделей с одним выходом. Например, 'measurements'. Массив ячеек символьных векторов - для моделей с несколькими выходами.
Можно также использовать автоматическое векторное расширение для назначения выходных имен для моделей с несколькими выходами. Например, если sys является моделью с двумя выходами, введите:
sys.OutputName = 'measurements';
Имена вывода автоматически расширяются до {'measurements(1)';'measurements(2)'}.
При оценке модели с использованием iddata объект, data, программное обеспечение устанавливается автоматически OutputName кому data.OutputName.
Можно использовать сокращенную нотацию y см. OutputName собственность. Например, sys.y эквивалентно sys.OutputName.
Имена выходных каналов имеют несколько применений, в том числе:
Идентификация каналов на дисплее модели и графиках Извлечение подсистем систем MIMO Указание точек соединения при соединении моделей
По умолчанию: '' для всех выходных каналов |
OutputUnit
|
Единицы выходного канала, указанные как одно из следующих:
Символьный вектор - для моделей с одним выходом. Например, 'seconds'. Массив ячеек символьных векторов - для моделей с несколькими выходами.
Использовать OutputUnit отслеживание блоков выходного сигнала. OutputUnit не влияет на поведение системы.
По умолчанию: '' для всех выходных каналов |
OutputGroup
|
Группы выходных каналов. OutputGroup позволяет назначать выходные каналы систем MIMO в группы и ссылаться на каждую группу по имени. Укажите группы вывода в качестве структуры. В этой структуре имена полей являются именами групп, а значения полей - выходными каналами, принадлежащими каждой группе. Например:
sys.OutputGroup.temperature = [1];
sys.InputGroup.measurement = [3 5];
создает выходные группы с именем temperature и measurement которые включают в себя выходные каналы 1 и 3, 5 соответственно. Затем можно извлечь подсистему из всех входов в measurement вывод с использованием:
По умолчанию: структура без полей |
Name
|
Имя системы, указанное как символьный вектор. Например, 'system_1'.
По умолчанию: '' |
Notes
|
Любой текст, который требуется связать с системой, хранится в виде строки или массива ячеек символьных векторов. Свойство хранит данные любого типа. Например, если sys1 и sys2 являются динамическими моделями систем, можно задать их Notes следующие свойства:
ans =
"sys1 has a string."
ans =
'sys2 has a character vector.'
По умолчанию: [0×1 string] |
UserData
|
Любой тип данных, который требуется связать с системой, указанный как любой тип данных MATLAB.
По умолчанию: [] |