Объедините результаты линеаризации заданных блоков и модели
lin = linlftfold(lin_fixed,blocksubs)
lin = linlftfold(lin_fixed,blocksubs)
комбинирует следующие результаты линеаризации в одну линейную модель lin
:
Линейная модель lin_fixed
, который не включает вклад заданных блоков в вашей модели Simulink®.
Вычислите lin_fixed
использование linlft
.
Блокируйте линеаризацию для блоков, исключенных из lin_fixed
Вы задаете линеаризацию блока в массиве структур blocksubs
, который содержит два поля:
'Name'
вектор символов или строка, задающая блок path блока Simulink, чтобы заменить.
'Value'
значение линеаризации для каждого блока.
Линеаризуйте следующие части 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);