Линеаризуйте модель при удалении вклада заданных блоков
lin_fixed = linlft(sys,io,blocks)
[lin_fixed,lin_blocks] = linlft(___)
[___] = linlft(___,opt)
lin_fixed = linlft(sys,io,blocks)
линеаризует модель Simulink® под названием sys
при удалении вклада определенных блоков. Задайте sys
как вектор символов или строка. Задайте полный блок path блоков, чтобы проигнорировать в массиве ячеек из символьных векторов или массиве строк под названием blocks
. Линеаризация происходит в рабочей точке, заданной в модели Simulink, которая включает проигнорированные блоки. Можно опционально задать точки линеаризации (линейные аналитические точки) в объекте I/O io
. Получившаяся линейная модель lin_fixed
имеет эту форму:
Главные каналы В и соответствуют точкам линеаризации, что вы задаете в объекте I/O io
. Остающиеся каналы соответствуют связи с проигнорированными блоками.
Когда вы используете linlft
и задайте 'block-by-block'
алгоритм линеаризации в linearizeOptions
, можно использовать все изменения входных параметров для linearize
.
Можно линеаризовать проигнорированные блоки отдельно с помощью linearize
, и затем объедините результаты линеаризации с помощью linlftfold
.
[lin_fixed,lin_blocks] = linlft(___)
возвращает линеаризацию для каждого из блоков, заданных в blocks
. Если blocks
содержит один блок path, lin_blocks
одно пространство состояний (ss
) модель. Если blocks
массив, идентифицирующий несколько блоков, lin_blocks
массив ячеек моделей в пространстве состояний. Полный блок path для каждого блока в lin_blocks
хранится в Notes
свойство модели в пространстве состояний.
[___] = linlft(___,opt)
использует дополнительные опции линеаризации в виде linearizeOptions
опция установлена.
Линеаризуйте следующие части scdtopmdl
Модель Simulink отдельно, и затем комбинирует результаты:
Фиксированный фрагмент, который содержит все кроме модели - ссылки Parameter Varying Controller
Модель - ссылка Parameter Varying Controller, которая ссылается на scdrefmdl
модель
% Open the Simulink model topmdl = 'scdtopmdl'; % Linearize the model without the Parameter Varying Controller io = getlinio(topmdl); blocks = {'scdtopmdl/Parameter Varying Controller'}; sys_fixed = linlft(topmdl,io,blocks); % Linearize the Parameter Varying Controller refmdl = 'scdrefmdl'; sys_pv = linearize(refmdl); % Combine the results BlockSubs(1) = struct('Name',blocks{1},'Value',sys_pv); sys_fold = linlftfold(sys_fixed,BlockSubs);
getlinio
| linearize
| linearizeOptions
| linio
| linlftfold
| operpoint