Сортировка состояний на основе раздела состояния
сортирует xsys = xsort(sys)x или q вектор на основе раздела состояния. Основанные на сигнале связи и физические интерфейсы между компонентами модели дают начало моделям дифференциального алгебраического уравнения (DAE), где некоторые внутренние сигналы и обеспечивают, становятся дополнительными состояниями. StateInfo свойство sparss и mechss объекты модели отслеживают раздел состояния в субкомпоненты, интерфейсные переменные и переменные сигнала.
В данном примере рассмотрите sparseSOSignal.mat это содержит разреженную модель второго порядка. Задайте привод, датчик и контроллер и соедините их вместе с объектом в обратной связи.
Загрузите разреженные матрицы и создайте mechss объект.
load sparseSOSignal.mat plant = mechss(M,C,K,B,F,[],[],'Name','Plant');
Затем создайте привод и датчик с помощью передаточных функций.
act = tf(1,[1 0.5 3],'Name','Actuator'); sen = tf(1,[0.02 7],'Name','Sensor');
Создайте объект ПИД-регулятора для объекта.
con = pid(1,1,0.1,0.01,'Name','Controller');
Используйте feedback команда, чтобы соединить объект, датчик, привод и контроллер в обратной связи.
sys = feedback(sen*plant*act*con,1)
Sparse continuous-time second-order model with 1 outputs, 1 inputs, and 7111 degrees of freedom.
Use "spy" and "showStateInfo" to inspect model structure.
Type "properties('mechss')" for a list of model properties.
Type "help mechssOptions" for available solver options for this model.
Результирующая система sys mechss объект начиная с mechss объекты более приоритетны по сравнению со всеми другими типами объекта модели.
Используйте showStateInfo просмотреть группы сигнала и компонента.
showStateInfo(sys)
The state groups are:
Type Name Size
-------------------------------
Component Sensor 1
Component Plant 7102
Signal 1
Component Actuator 2
Signal 1
Component Controller 2
Signal 1
Signal 1
Используйте xsort отсортировать компоненты и сигналы, и затем просмотреть группы сигнала и компонента.
sysSort = xsort(sys); showStateInfo(sysSort)
The state groups are:
Type Name Size
-------------------------------
Component Sensor 1
Component Plant 7102
Component Actuator 2
Component Controller 2
Signal 4
Заметьте, что компоненты теперь упорядочены перед разделом сигнала. Сигналы теперь сортируются и группировались в одном разделе.
Можно также визуализировать шаблон разреженности результирующей системы с помощью spy.
spy(sysSort)

В данном примере рассмотрите структурную модель, которая состоит из двух квадратных пластин, соединенных со столбами в каждой вершине, как изображено в рисунке ниже. Более низкая пластина присоединяется твердо к земле, в то время как столбы присоединяются твердо к каждой вершине квадратной пластины.

Загрузите матрицы модели конечного элемента, содержавшиеся в platePillarModel.mat и создайте разреженную модель второго порядка, представляющую вышеупомянутую систему.
load('platePillarModel.mat') sys = ... mechss(M1,[],K1,B1,F1,'Name','Plate1') + ... mechss(M2,[],K2,B2,F2,'Name','Plate2') + ... mechss(Mp,[],Kp,Bp,Fp,'Name','Pillar3') + ... mechss(Mp,[],Kp,Bp,Fp,'Name','Pillar4') + ... mechss(Mp,[],Kp,Bp,Fp,'Name','Pillar5') + ... mechss(Mp,[],Kp,Bp,Fp,'Name','Pillar6');
Используйте showStateInfo исследовать компоненты mechss объект модели.
showStateInfo(sys)
The state groups are:
Type Name Size
----------------------------
Component Plate1 2646
Component Plate2 2646
Component Pillar3 132
Component Pillar4 132
Component Pillar5 132
Component Pillar6 132
Теперь загрузите данные об индексе степеней свободы (DOF), с которыми соединяют интерфейсом, из dofData.mat и используйте interface создать физические соединения между этими двумя пластинами и этими четырьмя столбами. dofs 6x7 массив ячеек, где первые две строки содержат данные об индексе степени свободы для первых и вторых пластин, в то время как остающиеся четыре строки содержат данные об индексе для этих четырех столбов.
load('dofData.mat','dofs') for i=3:6 sys = interface(sys,"Plate1",dofs{1,i},"Pillar"+i,dofs{i,1}); sys = interface(sys,"Plate2",dofs{2,i},"Pillar"+i,dofs{i,2}); end
Задайте связь между подопочным щитком и землей.
sysCon = interface(sys,"Plate2",dofs{2,7});Используйте showStateInfo подтвердить физические интерфейсы.
showStateInfo(sysCon)
The state groups are:
Type Name Size
-----------------------------------
Component Plate1 2646
Component Plate2 2646
Component Pillar3 132
Component Pillar4 132
Component Pillar5 132
Component Pillar6 132
Interface Plate1-Pillar3 12
Interface Plate2-Pillar3 12
Interface Plate1-Pillar4 12
Interface Plate2-Pillar4 12
Interface Plate1-Pillar5 12
Interface Plate2-Pillar5 12
Interface Plate1-Pillar6 12
Interface Plate2-Pillar6 12
Interface Plate2-Ground 6
Можно использовать spy визуализировать разреженные матрицы в итоговой модели.
spy(sysCon)

Набор данных для этого примера был обеспечен Виктором Долком от ASML.
xsys — Разреженная модель в пространстве состояний с отсортированными компонентамиsparss объект модели | mechss объект моделиРазреженная модель в пространстве состояний с отсортированными компонентами, возвращенными как a sparss или mechss объект модели. В отсортированном xsys, все компоненты появляются первыми, сопровождаемые интерфейсами, и затем сопровождаемые одной группой всех внутренних сигналов. Матрицы и имейте следующую структуру фигурной стрелки:

Здесь, каждый диагональный блок является субкомпонентом sys. Последняя строка и столбец комбинирует Interface и Signal группы, чтобы получить все связи и связи между компонентами.
sparss | mechss | interface | showStateInfo
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.