Создайте массив модели путем укладки моделей или массивов моделей вдоль измерений массива
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.
Стек идентифицировал модели пространства состояний, выведенные из тех же данных оценки и сравнить их bode-отклики.
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);