exponenta event banner

isPassive

Проверить пассивность линейных систем

Описание

пример

pf = isPassive(G) возвращает логическое значение 1 (true), если динамическая модель системы G является пассивным и логическое значение 0 (false) в противном случае. Система пассивна, если все ее траектории ввода-вывода (u (t), y (t)) удовлетворяют:

∫0Ty (t) Tu (t) dt > 0,

для всех T > 0. Эквивалентно, система пассивна, если её частотный отклик является положительным вещественным, что означает, что для всех λ > 0,

G () + G () H > 0

(или дискретный временной эквивалент). Если G является массивом модели, то isPassive возвращает логический массив с теми же измерениями массива, что и G, где каждая запись в массиве отражает пассивность соответствующей записи в G.

Дополнительные сведения о понятии пассивности см. в разделе Об индексах пассивности и пассивности.

пример

pf = isPassive(G,nu,rho) возвращает 1 (true), если G пассивен с индексом nu на входах и индекс rho на выходах. Такие системы удовлетворяют:

∫0Ty (t) Tu (t) dt>ν∫0Tu (t) Tu (t) dt+ρ∫0Ty (t) Ty (t) dt,

для всех T > 0.

  • Использовать rho = 0, чтобы проверить, является ли система входящей пассивной с индексом nu на входах.

  • Использовать nu = 0 для проверки пассивности вывода системы с индексом rho на выходах.

Дополнительные сведения о пассивности ввода и вывода см. в разделе Об индексах пассивности и пассивности.

пример

[pf,R] = isPassive(G,___) также возвращает относительный индекс для соответствующей границы пассивности (см. getPassiveIndex). R измеряет величину, на которую удовлетворяется свойство пассивности (R < 1) или нарушен (R > 1). Этот синтаксис можно использовать с любой из предыдущих комбинаций входных аргументов.

Примеры

свернуть все

Проверьте, является ли следующая передаточная функция пассивной:

G (s) = s + 1s + 2.

G = tf([1,1],[1,2]);
[pf,R] = isPassive(G)
pf = logical
   1

R = 0.3333

pf = 1 указывает, что G является пассивным. R = 0.3333 указывает, что R имеет относительный избыток пассивности.

Проверка функции переноса G является входным пассивным с индексом 0,25. Для этого используйте nu = 0,25 и rho = 0.

G = tf([1,1],[1,2]);
[pfin,Rin] = isPassive(G,0.25,0)
pfin = logical
   1

Rin = 0.6096

Результат показывает, что G является входным пассивным с этим nu значение и имеет некоторую избыточную пассивность.

Проверить, G является выходной пассивной с индексом 2.

[pfout,Rout] = isPassive(G,0,2)
pfout = logical
   0

Rout = 2.6180

Вот, результат pfout = 0 показывает, что G не является пассивным выводом с этим rho значение. R значение дает относительную меру дефицита пассивности.

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

G = rss(3,1,1,1,5);

G представляет собой массив SISO с тремя состояниями: 1 на 5. Проверьте пассивность всех моделей в G.

[pf,R] = isPassive(G)
pf = 1x5 logical array

   0   0   0   1   0

R = 1×5

   35.3759       Inf       Inf    0.1130    4.3096

pf и R также являются массивами 1 на 5. Каждый pf указывает, соответствует ли соответствующая модель в G является пассивным. Аналогично, каждый R значение дает относительное превышение или дефицит пассивности в соответствующей модели в G. Например, изучить пассивность второй записи в Gи сравните результат со вторыми записями в pf и R.

[pf2,R2] = isPassive(G(:,:,2))
pf2 = logical
   0

R2 = Inf

Входные аргументы

свернуть все

Модель для анализа пассивности, заданная как динамическая системная модель, например tf, ss, или genss модель. G может быть MIMO, если количество входов равно количеству выходов. G может быть непрерывным или дискретным. Если G - обобщенная модель с настраиваемыми или неопределенными блоками, isPassive оценивает пассивность текущего, номинального значения G.

Входной индекс пассивности, заданный как действительное скалярное значение. Использовать nu и rho для указания конкретных границ пассивности. Для проверки пассивности системы с определенным индексом на входе установите nu к этому значению и установить rho = 0.

Выходной индекс пассивности, заданный как действительное скалярное значение. Использовать nu и rho для указания конкретных границ пассивности. Для проверки пассивности системы с определенным индексом пассивности на выходах установите rho к этому значению и установить nu = 0.

Выходные аргументы

свернуть все

Индикатор пассивности, возвращаемый как логическое значение:

  • 1 (true), если G является пассивным.

  • 0 (false), если G не является пассивным.

Если указаны индексы пассивности ввода и вывода nu и rho, то pf указывает пассивность по отношению к соответствующей связанной пассивности.

Если G является массивом модели, то pf - массив одинакового размера, где pf(k) указывает на пассивность kтретья запись в G, G(:,:,k).

Индекс относительной пассивности, возвращаемый как положительный действительный скаляр. R измеряет превышение (R < 1) или нехватка (R > 1) пассивности в системе.

При указании nu ≠ 0 или rho ≠ 0, затем R измеряет, насколько удовлетворяются или нарушаются указанные свойства пассивности.

Дополнительную информацию о понятии индекса относительной пассивности см. в разделе Об индексах пассивности и пассивности.

Представлен в R2016a