Каждая неопределенная модель или матрица (такие как uss, genss, ufrd, или umat,) - обобщенное соединение обратной связи (lft) не неопределенного объекта (например, double, ss, frd) с диагональным увеличением неопределенных элементов (ureal, ultidyn, umargin, ucomplex, ucomplexm, udyn). В устойчивом управляющем жаргоне, если неопределенные элементы нормализованы, это разложение часто называют «формой M/D».
Назначение неопределенных объектов (ureal, ultidyn, umat, uss, и т.д.) - скрывать это базовое разложение, и позволять пользователю фокусироваться на моделировании и анализе неопределенных систем, а не на деталях правильного распространения представления M/D в манипуляциях. Тем не менее, продвинутые пользователи могут захотеть получить доступ к привычной форме M/D. Команда lftdata выполняет это разложение.
С тех пор ureal, umargin, ucomplex и ucomplexm не имеют своих NominalValue обязательно в нуле, и в случае ureal и umargin объекты, не обязательно симметричны относительно NominalValue, некоторые детали требуются при описании разложения.
Сопоставленный с каждым неопределенным элементом является нормирующей функцией. Нормализующая функция преобразует неопределенный элемент в нормализованный неопределенный элемент. Независимо от типа элемента, поскольку неопределенный элемент изменяется в своей области значений, абсолютное значение нормализующей функции (или нормы, в матричном случае) варьируется от 0 до 1.
ureal)Если и является неопределенным вещественным параметром, с [L R] области значений и номинальное значение N, тогда нормирующая функция F
со свойством это для всего ρ удовлетворяющий <reservedrangesplaceholder9> ≤ <reservedrangesplaceholder8> ≤ <reservedrangesplaceholder7> , из этого следует, что-1 ≤ <reservedrangesplaceholder6> (ρ) ≤ 1, кроме того, F (<reservedrangesplaceholder4>) =-1, F (<reservedrangesplaceholder2>) = 0, и F (<reservedrangesplaceholder0>) = 1. Если номинальное значение сосредоточено в области значений, то легко сделать вывод, что
Оно остается в качестве алгебры для пользователя, чтобы выработать различные значения для A, B, C и D когда номинальное значение не центрировано.
)Если E - неопределенная динамическая неопределенность с ограничением по усилению, линейная, инвариантная по времени, с ограничением по усилению β, то нормализующая функция F является
Если E - неопределенная положительно-действительная, линейная, инвариантная по времени динамическая неопределенность, с положительностью, связанной β, то нормализующая функция F является
где α = 2|<reservedrangesplaceholder0>| + 1.
umargin)Для umargin блок Q (s), нормированное значение F (Q (s)) = δ (s), где δ (s) - динамическая неопределенность с ограничением по усилению, нормированная так, что она всегда изменяется внутри единичного диска (||<reservedrangesplaceholder3>||∞ < 1). Другими словами, F (Q) является единичным усилением ultidyn неопределенный элемент.
Фактические значения Q сопоставления с единичным усилением δ посредством параметризации
Для получения дополнительной информации об этой параметризации см. umargin.
ucomplex)Нормализующая функция для неопределенного ξ комплексного параметра с номинальными значениями C и γ радиуса
umat)Нормализующая функция для неопределенных комплексных матриц H с номинальными значениями N и весами WL и WR,
Примите неопределенный A объекта, зависимый от:
Неопределенные действительные параметры ρ 1,..., ρNρ
Неопределенные комплексные параметры ξ 1,..., ξNξ
Неопределенные комплексные матрицы H 1,..., HNH
Неопределенная линейная, инвариантная по времени динамика E 1,..., ENE
Неопределенная положительно-действительная линейная, инвариантная по времени динамика P 1,..., PNP
Неопределенный коэффициент усиления и фазовый Q 1,..., QNQ
Напишите A (ρ, ξ, H, E, P, Q), чтобы указать на эту зависимость. Используяlftdata, A может быть разложен на две отдельных части: M и Δ (ρ, ξ, H, E, P, Q) со следующими свойствами :
M точно (то есть, если A uss, тогда M ss; если A является umat, тогда M double; если A является ufrd, тогда M frd).
.R- это всегда umat, в зависимости от тех же неопределенных элементов, что и A, с областями значений, границами, весами и т.д., неизменными.
Форма И блока диагонали с элементами, состоящими из нормализующих функций, действующих на индивидуума неопределенные элементы:
A (ρ, ξ, H, E, P, Q) дан линейным фракционным преобразованием M и Δ (ρ, ξ, H, E, P, Q),
Порядок нормированных элементов, составляющих A не является простым порядком, показанным выше. Это на самом деле тот же порядок, что и по команде fieldnames(M.Uncertainty), как показано в следующем примере.
Вы разлагаете неопределенную модель на фиксированную определенную часть и нормализовали неопределенную часть, используя lftdata команда. Чтобы увидеть, как эта команда работает, создайте неопределенную матрицу 2 на 2 (umat) с использованием трех неопределенных реальных параметров.
delta = ureal('delta',2); eta = ureal('eta',6); rho = ureal('rho',-1); A = [3+delta+eta delta/eta;7+rho rho+delta*eta]
A =
Uncertain matrix with 2 rows and 2 columns.
The uncertainty consists of the following blocks:
delta: Uncertain real, nominal = 2, variability = [-1,1], 2 occurrences
eta: Uncertain real, nominal = 6, variability = [-1,1], 3 occurrences
rho: Uncertain real, nominal = -1, variability = [-1,1], 1 occurrences
Type "A.NominalValue" to see the nominal value, "get(A)" to see all properties, and "A.Uncertainty" to interact with the uncertain elements.
The umat A зависит от двух вхождений delta, три вхождений eta, и одно вхождение rho.
Разложение A в M и Delta.
[M,Delta] = lftdata(A);
M является числовой матрицей.
M
M = 8×8
0 0 0 -0.1667 0 0 1.0000 0.1667
0 0 0 0 1.0000 0 0 6.0000
0 0 0 0 0 0 1.0000 0
0 0 0 -0.1667 0 0 0 0.1667
0 0 0 0 0 0 0 1.0000
0 0 0 0 0 0 1.0000 1.0000
1.0000 0 1.0000 -0.3333 0 0 11.0000 0.3333
0 1.0000 0 0 2.0000 1.0000 6.0000 11.0000
Delta является umat с такой же зависимостью неопределенности, как и A.
Delta
Delta =
Uncertain matrix with 6 rows and 6 columns.
The uncertainty consists of the following blocks:
delta: Uncertain real, nominal = 2, variability = [-1,1], 2 occurrences
eta: Uncertain real, nominal = 6, variability = [-1,1], 3 occurrences
rho: Uncertain real, nominal = -1, variability = [-1,1], 1 occurrences
Type "Delta.NominalValue" to see the nominal value, "get(Delta)" to see all properties, and "Delta.Uncertainty" to interact with the uncertain elements.
Чтобы изучить некоторые характеристики Delta, дискретизируйте его в трех точках. Обратите внимание, что:
Дискретизированное значение Delta всегда диагональный.
Дискретизированные значения всегда варьируются от -1 до 1, потому что Delta нормирована.
Каждая из выборочных матриц содержит три независимых значения. Дублирование записей согласуется с зависимостью Delta и A по трем неопределенным вещественным параметрам.
usample(Delta,3)
ans =
ans(:,:,1) =
0.6294 0 0 0 0 0
0 0.6294 0 0 0 0
0 0 0.8268 0 0 0
0 0 0 0.8268 0 0
0 0 0 0 0.8268 0
0 0 0 0 0 -0.4430
ans(:,:,2) =
0.8116 0 0 0 0 0
0 0.8116 0 0 0 0
0 0 0.2647 0 0 0
0 0 0 0.2647 0 0
0 0 0 0 0.2647 0
0 0 0 0 0 0.0938
ans(:,:,3) =
-0.7460 0 0 0 0 0
0 -0.7460 0 0 0 0
0 0 -0.8049 0 0 0
0 0 0 -0.8049 0 0
0 0 0 0 -0.8049 0
0 0 0 0 0 0.9150
Проверьте, что максимальное усиление Delta равен 1.
maxnorm = wcnorm(Delta)
maxnorm = struct with fields:
LowerBound: 0
UpperBound: 1.0008
Наконец, проверьте, что lft(Delta,M) то же, что и A. Для этого берите различие и используйте 'full' опция в simplify для удаления избыточных зависимостей от неопределенных элементов.
simplify(lft(Delta,M)-A,'full')ans = 2×2
10-18 ×
0 0.3955
0 0
Расширенный синтаксис lftdata
Даже для расширенного пользователя переменная Delta на самом деле не будет таким полезным, так как это все еще сложный объект. С другой стороны, его внутренняя структура описывается полностью с помощью 3-го (и 4-го) выходного аргумента.
[M,Delta,BlkStruct,NormUnc] = lftdata(A);
Строки BlkStruct соответствуют неопределенным элементам, названным в fieldnames(A.Uncertainty). Элементы BlkStruct описывать размер, тип и количество копий неопределенных элементов в A, и неявно разграничить точную блок-диагональную структуру Delta. Обратите внимание, что информация о диапазоне/привязке каждого неопределенного элемента не включена в BlkStruct.
BlkStruct(1)
ans = struct with fields:
Name: 'delta'
Size: [1 1]
Type: 'ureal'
Occurrences: 2
Simplify: 2
BlkStruct(2)
ans = struct with fields:
Name: 'eta'
Size: [1 1]
Type: 'ureal'
Occurrences: 3
Simplify: 2
BlkStruct(3)
ans = struct with fields:
Name: 'rho'
Size: [1 1]
Type: 'ureal'
Occurrences: 1
Simplify: 2
Вместе эти записи означают, что Delta является блок диагонали увеличением нормализованного варианта трех неопределенных элементов.
Первый элемент имеет имя 'delta'. Это 1 на 1; это класс ureal; и есть две дополненные по диагонали копии.
Второй элемент имеет имя 'eta'. Это 1 на 1; это класс ureal; и существует три дополненные по диагонали копии.
Третий элемент имеет имя 'rho'. Это 1 на 1; это класс ureal; и есть одна копия,
Четвертый выходной аргумент lftdata содержит массив ячеек из нормализованных неопределенных элементов. Массив ячеек содержит столько вхождения каждого элемента, сколько вхождения в исходном неопределенном объекте A.
size(NormUnc)
ans = 1×2
6 1
NormUnc{1} ans = Uncertain real parameter "deltaNormalized" with nominal value 0 and variability [-1,1].
isequal(NormUnc{2},NormUnc{1}) ans = logical
1
NormUnc{3} ans = Uncertain real parameter "etaNormalized" with nominal value 0 and variability [-1,1].
isequal(NormUnc{4},NormUnc{3}) ans = logical
1
isequal(NormUnc{5},NormUnc{3}) ans = logical
1
NormUnc{6} ans = Uncertain real parameter "rhoNormalized" with nominal value 0 and variability [-1,1].
Каждый нормированный элемент имеет 'Normalized' прилагается к его первоначальному имени во избежание путаницы. При нормализации,
ureal объекты имеют номинальное значение 0 и варьируются от -1 до 1.
ultidyn объекты ограничены нормой, с нормой ограничена 1.
umargin объекты преобразуются в ограниченные нормами ultidyn объекты с нормальной границей 1.
ucomplex объекты имеют номинальное значение 0 и радиус 1.
ucomplexm объекты имеют номинальное значение 0, и единичные матрицы для каждого из WL и WR веса.
Возможное поведение Delta и blkdiag(NormUnc{:}) те же самые. Следовательно, возможное поведение A и lft(blkdiag(NormUnc{:}),M) те же самые.
Следовательно, манипулируя M, BlkStruct и NormUnc, a вы можете иметь прямой доступ ко всем деталям линейного дробного преобразования, и можете работать на уровне теорем и алгоритмов, которые лежат в основе методов.
actual2normalized | lftdata | normalized2actual | uscale