Твердая сборка компонентов модели

В этом примере показано, как задать жесткое физическое соединение между компонентами несущей модели. Рассмотрим структуру, которая состоит из двух квадратных пластин, соединенных столбами в каждой вершине, как показано на рисунке ниже. Нижняя пластина жестко соединена с землей, а стойки - с каждой вершиной квадратных пластин.

Для получения дополнительной информации о разреженных моделях см. «Разреженные основы модели».

platePillarModel.mat содержит разреженные матрицы для модели стойки и пластины. Загрузите матрицы модели конечного элемента, содержащиеся в 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')
Sparse continuous-time second-order model with 1 outputs, 1 inputs, and 5820 nodes.

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 имеет 5820 узлов, где каждый узел имеет две степени свободы (DoF), которые [q,q˙]q и q-точка.

Использование 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

Именованные компоненты перечислены в командном окне с соответствующими размерами узлов.

Теперь загрузите интерфейсные данные индекса узла из nodeData.mat и использовать interface для создания физических соединений между двумя пластинами и четырьмя столбами. nodes является 6x7 массив ячеек, где первые две строки содержат данные индекса узла для первой и второй пластины, в то время как остальные четыре строки содержат данные индекса для четырех столбцов.

load('nodeData.mat','nodes')

Теперь задайте жесткие муфты между пластинами и столбами.

for i=3:6
   sys = interface(sys,"Plate1",nodes{1,i},"Pillar"+i,nodes{i,1});
   sys = interface(sys,"Plate2",nodes{2,i},"Pillar"+i,nodes{i,2});
end

Задайте жесткое соединение между нижней пластиной и землей.

sysCon = interface(sys,"Plate2",nodes{2,7})
Sparse continuous-time second-order model with 1 outputs, 1 inputs, and 5922 nodes.

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.

Заметьте, что модель теперь содержит 5922 узла. Дополнительные узлы являются результатом определенных жестких интерфейсов.

interface использует формулировку 'dual assembly', чтобы соединить компоненты. В концепции двойной сборки глобальный набор степеней свободы (DoFs) q сохраняется, и физическая связь выражается как согласованность и равновесные ограничения на границе раздела. Для жестких соединений эти ограничения имеют форму:

Bq=0,g=-BTλограничения, накладываемые на жесткие соединения

где g - вектор внутренних сил на интерфейсе и матрица B перестановка в [I-I]. Для пары совпадающих узлов с индексами ii, i2 где ii выбирает узел в первом компоненте, i2 выбирает соответствующий узел во втором компоненте, Bq=0ограничение жесткого соединения обеспечивает согласованность перемещений:

q(i1)=q(i2)непротиворечивость перемещений

в то время как g=-BTλжесткое ограничение обеспечивает равновесие внутренних сил g на границе раздела:

g(i1)+g(i2)=0равновесие внутренних сил.

Объединение этих ограничений с отцепленными уравнениями Mq¨+Cq˙+Kq=f+gнесвязанные уравнения приводит к следующей модели двойной сборки для сопряженной системы:

[M000][q¨λ]+[C000][q˙λ]+[KBTB0][qλ]=[f0]матрица двойной сборки

Для получения дополнительной информации смотрите interface.

Использование 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)

Figure contains an axes. The axes with title nnz: M=95256, K=249052, B=1, F=1. contains 37 objects of type line. These objects represent K, B, F, D.

Выражение признательности

Набор данных для этого примера был предоставлен Виктором Долком из ASML.

См. также

| | | |

Похожие темы