Используйте 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
Дополнительные сведения о выборке неопределенных объектов см. в разделе Примеры неопределенных элементов для создания массивов.
При выборке ultidyn элемент или неопределенный объект, содержащий ultidyn элемент, результатом всегда является state-space (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.