Критерий устойчивости Гурвица

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Критерий устойчивости Гурвица — один из способов анализа линейной стационарной динамической системы на устойчивость, разработанный немецким математиком Адольфом Гурвицом. Наряду с критерием Рауса является представителем семейства алгебраических критериев устойчивости, в отличие от частотных критериев, таких, как критерий устойчивости Найквиста — Михайлова. Достоинством метода является принципиальная простота, недостатком - необходимость выполнения операции вычисления определителя, которая связана с определенными вычислительными тонкостями (например, для больших матриц может появиться значительная вычислительная ошибка).

Формулировка[править | править вики-текст]

Метод работает с коэффициентами характеристического уравнения системы. Пусть  W(s) = \frac{Y(s)} {U(s)} передаточная функция системы, а  \ U(s) = 0 — характеристическое уравнение системы. Представим характеристический полином  \ U(s) в виде

 \ U(s) = a_0 s^n + a_1 s^{n-1} + ... + a_n

где s - оператор Лапласа.

Из коэффициентов характеристического уравнения строится определитель Гурвица  \Delta по алгоритму:

1) по главной диагонали слева направо выставляются все коэффициенты характеристического уравнения от  \ a_1 до  \ a_n ;

2) от каждого элемента диагонали вверх и вниз достраиваются столбцы определителя так, чтобы индексы убывали сверху вниз;

3) на место коэффициентов с индексами меньше нуля или больше  \ n ставятся нули.


Тогда согласно критерию Гурвица:

Для того, чтобы динамическая система была устойчива, необходимо и достаточно, чтобы все  \ n диагональных миноров определителя Гурвица были положительны. Эти миноры называются определителями Гурвица.

Анализируя условие критерия Гурвица, можно заметить его избыточность. Число неравенств можно уменьшить в два раза, используя теорему Льенара — Шипара. Впрочем, в вычислительном отношении сложность критерия уменьшается не существенно, так как при вычислении минора высокого порядка чаще всего необходимо вычисление миноров низших порядков.

К вопросу об автоматизации метода[править | править вики-текст]

Метод Гурвица, который часто называют методом Рауса — Гурвица, очень удобен для определения устойчивости звеньев при помощи ЭВМ.

Ниже приведён пример автоматизации работы метода с использованием одного из самых распространённых языков для технических вычислений MATLAB версии 5.3 с его синтаксисом.

Представленная ниже функция выполняет все необходимые вычисления. Для работы её необходимо поместить в текстовый файл с расширением .m и именем, совпадающим с именем самой функции, в данном случае имя файла должно быть raus_gur.m.

function [Ust, Mnrs, Mtrx] = raus_gur(D)
% Определение устойчивости системы методом Рауса-Гурвица, заданной при
% помощи следующей передаточной функции.
% 
%          B(s)   
%   W(s) = ----,
%          D(s)     
% 
% Здесь D(s) - характеристический полином.
% 
% D(s) = a0*s^n + a1*s^(n-1) + a2*s^(n-2) + ... + an 
%  
%   a0, a1, a2, ..., an - коэффициенты полинома D.
% 
% 
% Обращение к функции RAUS_GUR может быть выполнено двумя способами:
% 
%   Способ 1.
% 
%   [Ust, Mnrs, Mtrx]  = RAUS_GUR(D);
% 
%   Входные параметры:
% D - вектор коэффициентов знаменателя (характеристический полином)
% 
%   Выходные параметры:
% Ust - логический параметр, характеризующий результат работы функции:
%   Ust = 1 - система устойчива
%   Ust = 0 - система не устойчива
%  
% Mnrs - вектор значений миноров от меньшего размера к большему,
% которые необходимо вычислить для оценки устойчивости по методу Рауса-Гурвица.
% Согласно методу Рауса-Гурвица, система устойчива, если все миноры положительны.
% Вычисления значения внешнего минора не имеют смысла, так как его знак
% всегда будет совпадать со знаком предыдущего минора.
% 
% Mtrx - полная матрица Рауса-Гурвица для данного полинома.
% 
%   Способ 2.
% 
%   [Ust, Mnrs, Mtrx]  = RAUS_GUR(W);
% 
%   Входные параметры:
% W - объект класса LTI (см. описание Control System Toolbox)  
% 
% Выходные параметры аналогичны вышеописанным.
% 
% 
% Если размер характеристического полинома три и менее коэффициентов, 
% то значения выходных параметрв Mnrs и Mtrx принимают значение NaN.
% 
% Ориентирована на работу в версии MATLAB 5.3
 
if isa(D, 'lti')
   [B, D] = tfdata(D, 'v');
end
Ust = 1; 
if length(D(:)) < 4
    Mtrx = NaN; Mnrs = NaN;
    if any(D(:) <= 0)
        Ust = 0;
    end
    return
end
D = D(:);
n = length(D) - 1; % Размеры матрицы Гурвица
A = [zeros(n-1, 1); D(end:-1:1); zeros(n-2, 1)];
Mtrx = zeros(n, n); % Заготовка матрицы Гурвица
Mnrs = zeros(n-2, 1); % Вектор миноров
for i = 1:n
    Mtrx(:, i) = A((n - i)*2 + 1:3*n - 2*i);   
end
for i = 2:n-1
    Mnrs(i-1) = det(Mtrx(1:i,1:i));
end
if any([D(:); Mnrs(:)] <= 0)
    Ust = 0;
end

Пример[править | править вики-текст]

Пусть дана передаточная функция:

\text{W}\left( s \right)=\frac{Y\left( s \right)}{U\left( s \right)}=\frac{5\cdot s+4}{{{s}^{5}}+16\cdot {{s}^{4}}+95\cdot {{s}^{3}}+260\cdot {{s}^{2}}+324\cdot s+144}

Тогда вызов приведенной выше функции будет выглядеть следующим образом:

[A, B, C] = raus_gur([1 16 95 260 324 144])
А результат вычислений:
A =

    1

B =

       1260
     246960
   63504000

C =

   16   260   144     0     0
    1    95   324     0     0
    0    16   260   144     0
    0     1    95   324     0
    0     0    16   260   144

Так как A = 1, то система устойчива.

Вектор В содержит значения диагональных определителей от 2×2 до 4×4, первый элемент не имеет значения, а значение внешнего определителя всегда будет иметь тот же знак, что и предыдущий. Согласно методу Гурвица, чтобы система была устойчива, все эти определители должны оказаться положительными.

Матрица С - сам определитель Гурвица.

Эту функцию вполне можно использовать в математических пакетах, имеющих схожий с MATLAB синтаксис или после небольшой переделки.

Система находится на границе апериодической устойчивости, если a_n = 0. Система находится на границе колебательной устойчивости, если определитель Гурвица с индексом (n-1) будет равным 0.

См. также[править | править вики-текст]

Литература[править | править вики-текст]

Четаев Н. Г. Устойчивость движения. — М: Наука, 1965. — 234 с.