Создайте массив моделей путем укладки моделей или массивов моделей вдоль измерений массива
sys = stack(arraydim,sys1,sys2,...)
sys = stack(arraydim,sys1,sys2,...)
производит массив моделей sys
динамической системы путем укладки (конкатенация) моделей (или массивы)
sys1
, sys2
,...
вдоль измерения массива arraydim
. Все модели должны иметь то же количество вводов и выводов (те же размерности ввода-вывода), но количество состояний может варьироваться. Размерности ввода-вывода не считаются в измерениях массива. Для получения дополнительной информации о массивах моделей и измерениях массива, смотрите Массивы моделей (Control System Toolbox).
Для массивов моделей в пространстве состояний с переменным порядком вы не можете использовать точечный оператор (например, sys.A
) к массивам доступа. Используйте синтаксис
[A,B,C,D] = ssdata(sys,'cell')
извлекать матрицы пространства состояний каждой модели как отдельные ячейки в массивах ячеек A
B
C
, и D
.
Если sys1
и sys2
две модели:
stack(1,sys1,sys2)
производит 2 1 массив моделей.
stack(2,sys1,sys2)
производит 1 2 массив моделей.
stack(3,sys1,sys2)
производит 1 1 2 массивами моделей.
Сложите идентифицированные модели в пространстве состояний, выведенные из тех же данных об оценке, и сравните их предвещать ответы.
load iddata1 z1 sysc = cell(1,5); opt = ssestOptions('Focus','simulation'); for i = 1:5 sysc{i} = ssest(z1,i-1,opt); end sysArray = stack(1, sysc{:}); bode(sysArray);