hankelmr

Минимальное приближение степени (MDA) Ганкеля без балансировки

Синтаксис

GRED = hankelmr(G)
GRED = hankelmr(G,order)
[GRED,redinfo] = hankelmr(G,key1,value1,...)
[GRED,redinfo] = hankelmr(G,order,key1,value1,...)

Описание

hankelmr возвращает уменьшаемую модель GRED порядка G и массива структур redinfo, содержащий ошибку, связанную упрощенной модели и сингулярных значений Ганкеля исходной системы.

Связанная ошибка вычисляется на основе сингулярных значений Ганкеля G. Для устойчивой системы сингулярные значения Ганкеля указывают на соответствующую энергию состояния системы. Следовательно, уменьшаемый порядок может быть непосредственно определен путем исследования системы Ганкель СВ, σ ι.

Только с одним входным параметром G функция покажет график сингулярного значения Ганкеля исходной модели и запросит образцовый номер заказа, чтобы уменьшать.

Этот метод гарантирует, что ошибка привязала норму бесконечности аддитивной ошибкиG-GRED ∥ ∞ для уменьшаемых проблем хорошо подготовленной модели [1]:

GGred2k+1nσi

Примечание

Кажется, что этот метод подобен аддитивным стандартным программам снижения сложности модели balancmr и schurmr, но на самом деле это может произвести более надежную уменьшаемую модель порядка, когда желаемая упрощенная модель имеет почти управляемые и/или заметные состояния (имеет сингулярные значения Ганкеля близко к точности машины). hankelmr затем выберет оптимальную уменьшаемую систему, чтобы удовлетворить, ошибка связала критерий независимо порядок, каждый является наивно избранным вначале.

Эта таблица описывает входные параметры для hankelmr.

Аргумент

Описание

G

Модель LTI, которая будет уменьшаться (без любых других входных параметров построит ее сингулярные значения Ганкеля и запросит уменьшаемый порядок),

ORDER

(Необязательно) целое число для желаемого порядка упрощенной модели, или опционально вектор упаковывается желаемыми порядками для пакетных выполнений

Пакетное выполнение сериала различных уменьшаемых моделей порядка может быть сгенерировано путем определения order = x:y, or a vector of integers. По умолчанию вся антистабильная часть системы сохранена, потому что с точки зрения устойчивости управления, избавление от нестабильного состояния (состояний) опасно, чтобы смоделировать систему.

' MaxError ' может быть задан тем же способом как альтернатива для ' ORDER'. В этом случае уменьшаемый порядок будет определен когда сумма хвостов пределов sv Ганкеля 'MaxError'.

Аргумент

Значение

Описание

'MaxError'

Вещественное число или вектор различных ошибок

Уменьшайте, чтобы достигнуть H ошибка.

Когда существующий, ' MaxError ' заменяет вход ORDER.

'Weights'

Массив ячеек {Wout,Win}

Оптимальный 1x2 массив ячеек весов LTI Wout (вывод) и Win (вводится). Значением по умолчанию для обоих является идентичность. Веса должны быть обратимыми.

'Display'

'on' или 'off'

Отобразите сингулярные графики Ганкеля ('off' по умолчанию).

'Order'

Целое число, векторный или массив ячеек

Порядок упрощенной модели. Используйте только если не заданный в качестве 2-го аргумента.

Веса на исходном образцовом входе и/или выводе могут заставить алгоритм снижения сложности модели фокусироваться на некотором частотном диапазоне интересов. Но веса должны быть стабильной, минимальной фазой и обратимый.

Эта таблица описывает выходные аргументы.

Аргумент

Описание

GRED

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

REDINFO

Массив структур с 4 полями:

  • REDINFO.ErrorBound (привязал ∥ G-GRED ∥∞),

  • REDINFO.StabSV (Ганкель СВ стабильной части G)

  • REDINFO.UnstabSV (Ганкель СВ нестабильной части G)

  • REDINFO.Ganticausal (Антипричинная часть MDA Ганкеля)

G может быть стабильным или нестабильным, непрерывным или дискретным.

Примечание

Если size(GRED) не равен порядку, вы задали. Оптимальный алгоритм MDA Ганкеля выбрал лучшую Минимальную Степень, Аппроксимированную, это может найти в допустимой точности машины.

Примеры

Учитывая непрерывную или дискретную, стабильную или нестабильную систему, G, следующие команды могут получить набор уменьшаемых моделей порядка на основе ваших выборов:

rng(1234,'twister'); 
G = rss(30,5,4);
[g1, redinfo1] = hankelmr(G); % display Hankel SV plot
							 % and prompt for order (try 15:20)
[g2, redinfo2] = hankelmr(G,20); 
[g3, redinfo3] = hankelmr(G,[10:2:18]);
[g4, redinfo4] = hankelmr(G,'MaxError',[0.01, 0.05]);
for i = 1:4
	figure(i); eval(['sigma(G,g' num2str(i) ');']);
end

Диаграмма Боде Сингулярного значения G (с 30 состояниями, 5 выходных параметров, 4 входных параметров) показывает Диаграмму Боде сингулярного значения случайной системы G с 20 состояниями, 5 выводами и 4 входными параметрами. Ошибочная система между G и его Нулевым порядком, MDA Ганкеля имеет его норма бесконечности, равняется всей функции передачи, как показано в Ошибочной Системе все-Передачи Между G и Нулевым Антипричинным Порядком G.

Нулевой порядок MDA Ганкеля и его ошибочный системный график сигмы получен через команды

[g0,redinfo0] = hankelmr(G,0);
sigma(G-redinfo0.Ganticausal)

Это интересное свойство все-передачи уникально в снижении сложности модели MDA Ганкеля.

Диаграмма Боде Сингулярного значения G (с 30 состояниями, 5 выходных параметров, 4 входных параметров)

Все-передайте ошибочную систему между G и нулевым антипричинным порядком G

Алгоритмы

Учитывая пространство состояний (A,B,C,D) системы и k, желаемого уменьшаемого порядка, следующие шаги произведут преобразование подобия, чтобы обрезать исходную систему пространства состояний до упрощенной модели порядка kth.

  1. Найдите управляемость и наблюдаемость grammians P и Q.

  2. Сформируйте дескриптор

    E=QPρ2I

    где σk>ρσk+1, и пространство состояний дескриптора

    Возьмите SVD дескриптора E и разделите результат в форму усечения порядка kth

    [EsA¯B¯C¯D¯]=[ρ2AT+QAPQBCPD]E=[UE1,UE2][ΣE0000][VE1TVE2T]

  3. Примените преобразование к системе пространства состояний дескриптора выше, мы имеем

    [A11A12A21A22]=[UE1TUE2T](ρ2AT+QAP)[VE1VE2][B1B2]=[UE1TUE2T][QBCT][C1C2]=[CPρBT][VE1VE2]D1=D

  4. Сформируйте эквивалентную модель в пространстве состояний.

    [A˜B˜C˜D˜]=[E1(A11A12A22A21)E1(B1A12A22B2)C1C2A22A21D1C2A22B2]

    Итоговый kth приказывает, чтобы MDA Ганкеля был стабильной частью вышеупомянутой реализации пространства состояний. Его антипричинная часть хранится в redinfo.Ganticausal.

Доказательство алгоритма MDA Ганкеля может быть найдено в [2]. Ошибочная система между исходной системой G и Нулевым Порядком MDA Ганкеля G0 является функцией все-передачи [1].

Ссылки

[1] Перчаточник, К., “Все Оптимальное Приближение Нормы Ганкеля Линейных Многомерных Систем и Их -ошибочные Границы L”, Int J. Управление, издание 39, № 6, стр 1145-1193, 1984.

[2] Сафонов, M.G., Р.И. Чанг и D.J.N. Limebeer, “Оптимальное Снижение сложности модели Ганкеля для Неминимальных Систем”, Сделка IEEE на Автомате. Противоречие, издание 35, № 4, апрель 1990, стр 496-502.

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

| | | | |

Представлено до R2006a