Оцените нелинейные параметры модели серого поля
sys= nlgreyest(data,init_sys)
sys= nlgreyest(data,init_sys,options)
Загрузка данных.
load(fullfile(matlabroot,'toolbox','ident','iddemos','data','twotankdata')); z = iddata(y,u,0.2,'Name','Two tanks');
Данные содержат 3 000 выборок данных ввода - вывода двух систем корпуса. Вход является напряжением, применился к насосу, и вывод является уровнем жидкости более низкого корпуса.
Задайте файл, описывающий образцовую структуру для системы 2D корпуса. Файл задает производные состояния и образцовые выходные параметры как функция времени, состояний, входных параметров и параметров модели.
FileName = 'twotanks_c';
Задайте порядки модели [число выходов число входов число переменных состояния].
Order = [1 1 2];
Задайте начальные параметры (Np = 6).
Parameters = {0.5;0.0035;0.019; ...
9.81;0.25;0.016};
Задайте начальные начальные состояния.
InitialStates = [0;0.1];
Задайте как непрерывная система.
Ts = 0;
Создайте объект модели idnlgrey
.
nlgr = idnlgrey(FileName,Order,Parameters,InitialStates,Ts, ... 'Name','Two tanks');
Установите некоторые параметры как постоянные.
nlgr.Parameters(1).Fixed = true; nlgr.Parameters(4).Fixed = true; nlgr.Parameters(5).Fixed = true;
Оцените параметры модели.
nlgr = nlgreyest(z,nlgr);
Создайте набор опции оценки для nlgreyest
, чтобы просмотреть прогресс оценки и установить максимальные шаги итерации на 50.
opt = nlgreyestOptions;
opt.Display = 'on';
opt.SearchOptions.MaxIterations = 50;
Загрузка данных.
load(fullfile(matlabroot,'toolbox','ident','iddemos','data','dcmotordata')); z = iddata(y,u,0.1,'Name','DC-motor');
Данные от линейного двигателя постоянного тока с одним входом (напряжение) и два выходных параметров (угловое положение и угловая скорость). Структура модели задана файлом dcmotor_m.m
.
Создайте нелинейную модель серого поля.
file_name = 'dcmotor_m'; Order = [2 1 2]; Parameters = [1;0.28]; InitialStates = [0;0]; init_sys = idnlgrey(file_name,Order,Parameters,InitialStates,0, ... 'Name','DC-motor');
Оцените параметры модели с помощью опций оценки.
sys = nlgreyest(z,init_sys,opt);
данные
Данные об области времениiddata
Данные об оценке временного интервала, заданные как объект iddata
. data
имеет те же размерности ввода и вывода как init_sys
.
Если вы задаете свойство InterSample
data
как (ограниченный полосой) 'bl'
, и модель является непрерывно-разовой, программное обеспечение обрабатывает данные, как содержат первый порядок (foh), интерполированный для оценки.
опции
Опции оценкиnlgreyestOptions
установленаУстановлены опции оценки для нелинейной идентификации модели серого поля, заданной как опция nlgreyestOptions
.
sys
— Предполагаемая нелинейная модель серого поляidnlgrey
Нелинейная модель серого поля с той же структурой как init_sys
, возвращенный как объект idnlgrey
. Параметры sys
оцениваются таким образом, что ответ sys
совпадает с выходным сигналом в данных об оценке.
Информация о результатах оценки и используемых опциях хранится в свойстве Report
модели. Report
имеет следующие поля:
Сообщите о поле | Описание | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Status | Сводные данные состояния модели, которое указывает, была ли модель создана конструкцией или получена оценкой. | ||||||||||||||||||
Method | Имя решателя симуляции и метода поиска используется во время оценки. | ||||||||||||||||||
Fit | Количественная оценка оценки, возвращенной как структура. Смотрите Функцию потерь и Образцовые Метрики качества для получения дополнительной информации об этих метриках качества. Структура имеет следующие поля:
| ||||||||||||||||||
Parameters | Ориентировочные стоимости параметров модели. Структура со следующими полями:
| ||||||||||||||||||
OptionsUsed | Набор опции используется для оценки. Если никакие пользовательские опции не были сконфигурированы, это - набор опций по умолчанию. Смотрите | ||||||||||||||||||
RandState | Состояние потока случайных чисел в начале оценки. Пустой, | ||||||||||||||||||
DataUsed | Атрибуты данных, используемых для оценки — Структура со следующими полями:
| ||||||||||||||||||
Termination | Условия завершения для итеративного поиска используются для ошибочной минимизации прогноза. Структура со следующими полями:
Для методов оценки, которые не требуют числовой оптимизации поиска, не использовано поле |
Для получения дополнительной информации см. Отчет Оценки.
Поддержка параллельных вычислений доступна для оценки с помощью метода поиска lsqnonlin
(требует Optimization Toolbox™). Чтобы включить параллельные вычисления, используйте nlgreyestOptions
, установите SearchMethod
на 'lsqnonlin'
и установите SearchOptions.Advanced.UseParallel
на true
.
Например:
opt = nlgreyestOptions;
opt.SearchMethod = 'lsqnonlin';
opt.SearchOptions.Advanced.UseParallel = true;
aic
| fpe
| goodnessofFit
| idnlgrey
| nlgreyestOptions
| pem
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.