Каждая неопределенная модель или матрица (такие как 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