Сгенерируйте выборки неопределенных систем

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

Генерация одной выборки

Если A неопределенный объект, затем usample(A) генерирует одну выборку A.

Например, выборка ureal скалярный double.

A = ureal('A',6); 
B = usample(A) 
B = 
    5.7298 

Создайте 1 3 umat с A и неопределенный комплексный параметр C. Одна выборка этого umat 1 3 дважды.

C = ucomplex('C',2+6j); 
M = [A C A*A]; 
usample(M) 
ans = 
   5.9785             1.4375 + 6.0290i  35.7428          

Генерация многих выборок

Если A неопределенный объект, затем usample(A,N) генерирует N выборки A.

Например, 20 выборок ureal дает 1 1 20 double массив.

B = usample(A,20); 
size(B) 
ans = 
     1     1    20 

Точно так же 30 выборок 1 3 umat M дает к 1 3 30 массивами.

size(usample(M,30)) 
ans = 
     1     3    30 

Смотрите Демонстрационные Неопределенные Элементы, чтобы Создать Массивы для получения дополнительной информации о выборке неопределенных объектов.

Выборка неопределенной динамики LTI

При выборке ultidyn элемент или неопределенный объект, который содержит ultidyn элемент, результатом всегда является пространство состояний (ssобъект. Свойство SampleStateDimension из ultidyn класс определяет размерность состояния выборок. То же самое верно при выборке umargin объекты, поскольку это тип динамической неопределенности.

Создайте 1 на 1, получите, ограничил ultidyn объект с усилением связал 4. Проверьте, что размерность состояния по умолчанию для выборок равняется 3.

del = ultidyn('del',[1 1],'Bound',4); 
del.SampleStateDimension
ans = 3

Произведите неопределенный элемент в 30 точках. Проверьте, что это создает 30 1 ss массив 1 входа, 1 выхода, систем с 1 состоянием.

rng(0)  % for reproducibility
delS = usample(del,30); 
size(delS)
30x1 array of state-space models.
Each model has 1 outputs, 1 inputs, and 3 states.

Постройте годограф Найквиста этих выборок и добавьте диск радиуса 4, усиление, связанное del.

nyquist(delS) 
hold on; 
theta = linspace(-pi,pi); 
plot(del.Bound*exp(sqrt(-1)*theta),'r'); 
hold off;

Измените SampleStateDimension к 1, и повторяют целую процедуру. Годографы Найквиста снова удовлетворяют связанному усилению, но годографы Найквиста являются всеми кругами, показательными из 1-х систем порядка.

del.SampleStateDimension = 1; 
delS = usample(del,30);   
nyquist(delS) 
hold on; 
theta = linspace(-pi,pi); 
plot(del.Bound*exp(sqrt(-1)*theta),'r'); 
hold off;

С SampleStateDimension = 1, все годографы Найквиста касаются контура усиления или в (–1,0) или в (1,0) (частота = 0 или Inf). Выше выборка размерности дает к кривой Найквиста, которая достигает усиления, связанного на большем количестве частот, давая к более полному покрытию.

Создайте umargin объект с помощью SampleStateDimension по умолчанию. umargin блокируйте модели неопределенное усиление и фаза. Смоделированные изменения в ограниченных областях значений. Поскольку этот пример использует umargin блокируйтесь, который получает относительные изменения усиления фактора два в любом направлении и изменениях фазы ±30 °.

DGM = getDGM(2,30,'tight');
F = umargin('F')
F = 
  Uncertain gain/phase "F" with relative gain change in [0.5,2] and phase change of ±36.9 degrees.

Выборки umargin блок является также моделями в пространстве состояний.

Fs = usample(F,30);
size(Fs)
30x1 array of state-space models.
Each model has 1 outputs, 1 inputs, and 3 states.

Постройте выборки на плоскости Найквиста.

nyquist(Fs)

Годограф Найквиста любой выборки F остается в диске неопределенности, смоделированной F. Чтобы подтвердить это связало, используйте plot исследовать диск неопределенности. Сравните годограф Найквиста выше с правой стороной следующего графика.

plot(F)

Для получения дальнейшей информации об усилении и модели неопределенности фазы, смотрите umargin.

Смотрите также

|

Похожие темы