Функция 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
.