exponenta event banner

Поиск точек устойчивого состояния

Симулинк ®trim функция использует модель для определения стационарных точек динамической системы, удовлетворяющих заданным условиям ввода, вывода и состояния. Рассмотрим, например, эту модель, называемую ex_lmod.

Вы можете использовать trim для поиска значений входного сигнала и состояний, которые устанавливают оба выходных сигнала в 1. Сначала сделайте начальные догадки для переменных состояния (x) и входные значения (u), затем установите требуемое значение для выхода (y).

x = [0; 0; 0];
u = 0;
y = [1; 1];

Используйте индексные переменные, чтобы указать, какие переменные являются фиксированными, а какие могут отличаться.

ix = [];      % Don't fix any of the states
iu = [];      % Don't fix the input
iy = [1;2];   % Fix both output 1 and output 2

Призыв trim возвращает решение. Результаты могут отличаться из-за ошибки округления.

[x,u,y,dx] = trim('lmod',x,u,y,ix,iu,iy)

x =
   0.0000
   1.0000
   1.0000
u =
   2
y =
   1.0000
   1.0000
dx =
   1.0e-015 *
    -0.2220
    -0.0227
     0.3331

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

См. также