exponenta event banner

rsample

Случайная выборка линейных идентифицированных систем

Синтаксис

sys_array = rsample(sys,N)
sys_array = rsample(sys,N,sd)

Описание

sys_array = rsample(sys,N) создает N случайные выборки идентифицированной линейной системы, sys. sys_array содержит системы с той же структурой, что и sys, параметры которых возмущены относительно их номинальных значений на основе ковариации параметра.

sys_array = rsample(sys,N,sd) задает уровень стандартного отклонения, sd, для возмущения параметров sys.

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

sys

Идентифицируемая система.

N

Количество генерируемых выборок.

По умолчанию: 10

sd

Стандартный уровень отклонения для возмущения идентифицируемых параметров sys.

По умолчанию: 1

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

sys_array

Массив случайных выборок sys.

Если sys является массивом моделей, то размер sys_array равно [size(sys) N]. Есть N рандомизированные выборки для каждой модели в sys.

Параметры образцов в sys_array отличаются от исходной идентифицируемой модели в пределах 1 стандартного отклонения их номинальных значений.

Примеры

свернуть все

Оценка модели третьего порядка, дискретного времени, состояния и пространства.

load iddata2 z2;
sys = n4sid(z2,3);

Случайная выборка оценочной модели.

N = 20;
sys_array = rsample(sys,N);

Анализ неопределенности во времени (шаг) и частоте (Боде) ответов.

opt = bodeoptions;
opt.PhaseMatching = 'on';
figure;
bodeplot(sys_array,'g',sys,'r.',opt)

Figure contains 2 axes. Axes 1 with title From: u1 To: y1 contains 21 objects of type line. These objects represent sys\_array, sys. Axes 2 contains 21 objects of type line. These objects represent sys\_array, sys.

figure;
stepplot(sys_array,'g',sys,'r.-')

Figure contains an axes. The axes with title From: u1 To: y1 contains 21 objects of type line. These objects represent sys\_array, sys.

Оценка модели третьего порядка, дискретного времени, состояния и пространства.

load iddata2 z2;
sys = n4sid(z2,3);

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

N = 20;
sd = 2;
sys_array = rsample(sys,N,sd);

Проанализируйте неопределенность модели.

figure;
bode(sys_array);

Figure contains 2 axes. Axes 1 with title From: u1 To: y1 contains 20 objects of type line. This object represents sys\_array. Axes 2 contains 20 objects of type line. This object represents sys\_array.

Оценка модели ARMAX.

load iddata1 z1
sys = armax(z1,[2 2 2 1]);

Случайная выборка модели ARMAX. Изменение параметров модели до 2 стандартных отклонений.

N = 20;
sd = 2;
sys_array = rsample(sys,N,sd);

Сравните область достоверности частотной характеристики, соответствующую 2 стандартным отклонениям (асимптотическая оценка), с характеристикой массива модели.

opt = bodeoptions; opt.PhaseMatching = 'on';
opt.ConfidenceRegionNumberSD = 2;
bodeplot(sys_array,'g',sys,'r',opt)

Figure contains 2 axes. Axes 1 with title From: u1 To: y1 contains 21 objects of type line. These objects represent sys\_array, sys. Axes 2 contains 21 objects of type line. These objects represent sys\_array, sys.

Для просмотра доверительной области щелкните правой кнопкой мыши график и выберите «Характеристики» > «Доверительная область».

Совет

  • Для систем с большими неопределенностями параметров рандомизированные системы могут содержать нестабильные элементы. Эти нестабильные элементы могут затруднить анализ свойств идентифицированной системы. Выполнение команд анализа, таких как step, bode, simи т.д. в таких системах могут давать ненадежные результаты. Вместо этого используйте специальную команду анализа Монте-Карло, например simsd.

См. также

| | | | | | |

Представлен в R2012a