Main Content

モデル コンポーネントの剛体アセンブリ

この例では、構造モデルのコンポーネント間に剛体の物理結合を指定する方法を説明します。下の図に示すように、各頂点で支柱に連結された 2 枚の正方形のプレートで構成される構造について考えます。下部のプレートは地面に剛結合されていますが、支柱は正方形のプレートの各頂点に剛結合されています。

スパース モデルの詳細については、スパース モデルの基礎を参照してください。

plate_pillar_assembled-01-01.png

platePillarModel.mat には支柱とプレートのモデルのスパース行列が含まれています。platePillarModel.mat に含まれている有限要素モデル行列を読み込み、上記システムを表すスパース 2 次状態空間モデルを作成します。

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 degrees of freedom.

Use "spy" and "showStateInfo" to inspect model structure. 
Type "help mechssOptions" for available solver options for this model.

結果のモデル sys は 5820 自由度、1 つの入力と 1 つの出力をもちます。

mechss モデル オブジェクトのコンポーネントを確認するには showStateInfo を使用します。

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を使用して 2 枚のプレートと 4 本の支柱間の物理接続を作成します。dofs は、最初の 2 つの行に 1 枚目と 2 枚目のプレートの DOF インデックス データを含み、他の 4 つの行に 4 本の支柱のインデックス データを含む 6x7 cell 配列です。

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})
Sparse continuous-time second-order model with 1 outputs, 1 inputs, and 5922 degrees of freedom.

Use "spy" and "showStateInfo" to inspect model structure. 
Type "help mechssOptions" for available solver options for this model.

これで、モデルに 5922 自由度が含まれるようになったことに注意してください。追加の DOF は特定の剛体のインターフェイスによる結果です。

interfaceは 'デュアル アセンブリ' の定式化を使用してコンポーネントに接続します。デュアル アセンブリの概念では、自由度 (DoF) のグローバル セット q が維持され、物理結合は、インターフェイスにおける整合性と平衡拘束として表されます。剛結合の場合、これらの制約は次の形式になります。

Bq=0,g=-BTλrigid connection constraints

ここで g はインターフェイスにおける内力のベクトルであり、行列 B[I -I] に並べ替えることができます。インデックス iii2 をもつ一致する DOF のペアの場合、ii は最初のコンポーネントで DOF を選択する一方、i2 は 2 番目のコンポーネントで一致する DOF を選択し、Bq=0rigid connection constraint は変位の一貫性を強制します。

q(i1)=q(i2)consistency of displacements

g=-BTλrigid constraint はインターフェイスで内力 g の平衡を強制します。

g(i1)+g(i2)=0equilibrium of internal forces.

これらの制約を分離された方程式 Mq¨+Cq˙+Kq=f+guncoupled equations と組み合わせると、連結システムに対して次のデュアル アセンブリ モデルが導かれます。

[M000][q¨λ]+[C000][q˙λ]+[KBTB0][qλ]=[f0]dual assembly matrix form

詳細については、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)

謝辞

この例のデータセットは、ASML の Victor Dolk によって提供されています。

参考

| | | |

関連するトピック