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

Из Википедии, бесплатной энциклопедии

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

Формулировка

[править | править код]

Метод работает с коэффициентами характеристического уравнения системы. Пусть  — передаточная функция системы, а  — характеристическое уравнение системы. Представим характеристический полином в виде

где  — комплексный аргумент.

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

  1. по главной диагонали слева направо выставляются все коэффициенты характеристического уравнения от до ;
  2. от каждого элемента диагонали вверх и вниз достраиваются столбцы определителя так, чтобы индексы убывали сверху вниз;
  3. на место коэффициентов с индексами меньше нуля или больше ставятся нули.

Размерность матрицы Гурвица определяется максимальной степенью при s в характеристическом уравнении (то есть n).

Или явно[1]

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

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

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

Достоинства и недостатки

[править | править код]

Недостаток критерия Гурвица — малая наглядность. Достоинство — удобен для реализации на ЭВМ. Его часто используют для определения влияния одного из параметров САУ на ее устойчивость. Так равенство нулю главного определителя говорит о том, что система находится на границе устойчивости. При этом либо  — при выполнении остальных условий система находится на границе апериодической устойчивости, либо предпоследний минор  — при положительности всех остальных миноров система находится на границе колебательной устойчивости. Параметры САУ определяют значения коэффициентов уравнения динамики, следовательно изменение любого параметра влияет на значение определителя . Исследуя это влияние можно найти, при каком значении определитель станет равен нулю, а потом — отрицательным. Это и будет предельное значение исследуемого параметра, после которого система становится неустойчивой.

К вопросу об автоматизации метода

[править | править код]

Метод Гурвица достаточно удобен для определения устойчивости звеньев при помощи ЭВМ. При этом, однако, следует учитывать, что применение критерия для систем с порядком выше 5 может привести к значительным ошибкам, поскольку вычисление определителей высоких порядков является достаточно сложной операцией и приводит к накоплению ошибок вычислений.

Ниже приведён пример автоматизации работы метода с использованием одного из самых распространённых языков для технических вычислений 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 - строковое значение, сообщающее устойчива система или неустойчива %   % Mnrs - вектор значений миноров от меньшего размера к большему, % которые необходимо вычислить для оценки устойчивости по методу Рауса-Гурвица. % Согласно методу Рауса-Гурвица, система устойчива, если все миноры положительны. % Вычисления значения внешнего минора не имеют смысла, так как его знак % всегда будет совпадать со знаком предыдущего минора. %  % Mtrx - полная матрица Рауса-Гурвица для данного полинома. %  %   Способ 2. %  %   [Ust, Mnrs, Mtrx]  = raus_gur(W); %  %   Входные параметры: % W - объект класса LTI (см. описание Control System Toolbox)   %  % Выходные параметры аналогичны вышеописанным. %  %  % Ориентирована на работу в версии MATLAB 2022a  if isa(D,'tf')    [~,D]=tfdata(D,'v'); end n=length(D)-2; Dr=[D zeros(1,n)]; A=flipud(reshape(Dr,2,[])); Mtrx=cell2mat(arrayfun(@(x)(circshift(A',x))',(0:n/2)',"UniformOutput",false)); Mnrs=cell2mat(arrayfun(@(x)det(Mtrx(1:x,1:x)),(2:n)',"UniformOutput",false)); Z=''; if any(Mnrs<0)     Z='не '; end Ust=['система ',Z,'устойчива']; end 

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

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

format shortG

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

    'система устойчива'

B =

   1260

   2.4696e+05

   6.3504e+07

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

     0     0     1    95   324


A сообщает, что система устойчива.

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

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

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

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

Примечания

[править | править код]
  1. Гантмахер Ф. Р. Теория матриц. — 5-е изд. — М.: Физматлит, 2010. — С. 463. — 560 с. — ISBN 978-5-9221-0524-8.

Литература

[править | править код]

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