Simulink® 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
.