setpvec

Измените значения параметров модели

Синтаксис

sys = setpvec(sys0,par)
sys = setpvec(sys0,par,'free')

Описание

sys = setpvec(sys0,par) изменяет значение параметров идентифицированной модели sys0 к значению, заданному par.

par должна иметь длину nparams(sys0). nparams(sys0) возвращает количество всех параметров sys0.

sys = setpvec(sys0,par,'free') изменяет значение всех параметров свободной оценки sys0 к значению, заданному par.

par должна иметь длину nparams(sys0,'free'). nparams(sys0,'free') возвращает количество всех свободных параметров sys0. Для idnlarx и idnlhw модели, все параметры рассматриваются как свободные.

Входные параметры

sys0

Идентифицированная модель, заданная как idtf, idss, idgrey, idpoly, idproc, idnlarx, idnlhw, или idnlgrey объект.

par

Значение замены для параметров идентифицированной модели sys0.

Для получения синтаксиса sys = setpvec(sys0,par), par должна иметь длину nparams(sys0). nparams(sys0) возвращает количество всех параметров sys0.

Для получения синтаксиса sys = setpvec(sys0,par,'free'), par должна иметь длину nparams(sys0,'free'). nparams(sys0,'free') возвращает количество всех свободных параметров sys0.

Использование NaN для обозначения неизвестных значений параметров.

Если sys0 - массив моделей, затем задайте par как массив ячеек с записью, соответствующей каждой модели в sys0.

Выходные аргументы

sys

Идентифицированная модель, полученная из sys0 путем обновления значений заданных параметров.

Примеры

свернуть все

Создайте модель передаточной функции.

sys0 = idtf(1,[1 2]);

Задайте вектор параметра и используйте его, чтобы задать параметры модели. Второй параметр установлен в NaN, что указывает, что его значение неизвестно.

par = [1;NaN;0];
sys = setpvec(sys0,par);

Построенная модель, sys, может использоваться, чтобы инициализировать оценку модели.

Создайте модель передаточной функции.

sys0 = idtf([1 0],[1 2 0]);

Установите первые три параметра sys0 как свободные параметры.

sys0 = setpar(sys0,'free',[1 1 1 0 0]);

Задайте вектор параметра и используйте его, чтобы задать параметры свободной модели.

par = [1;2;1];
sys = setpvec(sys0,par,'free');

См. также

| |

Введенный в R2012a