Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

interface

mechss モデルのコンポーネント間の物理接続の指定

    説明

    sysCon = interface(sys,C1,IC1,C2,IC2) は、2 次スパース モデル sys のコンポーネント C1C2 間の物理結合を指定します。IC1 および IC2 には、C1 および C2 の自由度 (DOF) を基準とした結合された DOF のインデックスが含まれます。物理インターフェイスは剛体と見なされ、標準の整合性と平衡条件を満たします。sysCon は、指定された物理接続を使用する結果のモデルです。sys の使用可能なすべてのコンポーネントのリストを取得するには showStateInfo を使用します。

    sysCon = interface(sys,C,IC) は、コンポーネント C が地面と接することを指定します。C の自由度 q を地面に接続すると、ゼロの変位拘束 (q(IC) = 0) になります。

    さらに、sysCon = interface(___,KI,CI) は、非剛体インターフェイスの剛性 KI と減衰 CI も指定します。

    すべて折りたたむ

    この例では、下の図に示すように、各頂点の支柱に連結されている 2 枚の四角形のプレートで構成される構造モデルを考えます。下のプレートは地面にしっかり取り付けられ、支柱は四角形のプレートの各頂点にしっかり取り付けられています。

    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');

    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});

    物理インターフェイスを確認するには 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 object. The axes object 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 の Victor Dolk によって提供されています。

    入力引数

    すべて折りたたむ

    スパース 2 次モデル。mechss モデル オブジェクトとして指定します。詳細については、mechss を参照してください。

    接続する sys のコンポーネント。string または文字ベクトルの配列として指定します。sys の使用可能なすべてのコンポーネントのリストを取得するには showStateInfo を使用します。

    接続するコンポーネントのインデックス情報。NcNi 列の cell 配列として指定します。ここで、Nc はコンポーネントの数、Ni は物理インターフェイスの数です。

    剛性行列。NqNq 列のスパース行列として指定します。ここで Nqsys 内の DOF の数です。

    減衰行列。NqNq 列のスパース行列として指定します。ここで Nqsys 内の DOF の数です。

    出力引数

    すべて折りたたむ

    物理インターフェイスをもつ出力システム。mechss モデル オブジェクトとして返されます。システムの物理インターフェイスのリストを確認するには、showStateInfo を使用します。

    アルゴリズム

    デュアル アセンブリ

    interface は、"デュアル アセンブリ" の概念を使用して、モデル コンポーネントの自由度 (DOF) を物理的に接続します。物理領域の n サブ構造体では、ブロック対角的型のスパース行列は次のようになります。

    M  diag(M1,...,Mn)=[M1000000Mn]C  diag(C1,...,Cn)K  diag(K1,...,Kn)q  [q1qn],    B  [B1Bn],    F  [F1Fn],     G  [G1Gn],

    ここで、f は時間に依存する力ベクトル、g はインターフェイスにおける内力のベクトルです。

    相互作用する 2 つのコンポーネントは、グローバル有限要素メッシュ q で一連の DOF を共有します。最初のコンポーネントの DOF のサブセット N1 は、2 番目のコンポーネントの DOF のサブネット N2 と一致しています。2 つのコンポーネント間の結合は、次の場合にのみ剛体になります。

    • 共有された DOF における変位 q がどちらのコンポーネントでも同じ。

      q(N1)=q(N2)

    • 一方のコンポーネントが他方に及ぼす力 g が、(作用/反作用の原理により) 逆になります。

      g(N1)+g(N2)=0

    この関係は、次のように要約できます。

    M q¨+C q˙+K q=B u+g,      H q=0,       g=HTλ,

    ここで、H はエントリ 0、1、または -1 を使用する位置推定行列です。この方程式 Hq = 0 は、q(N1) = q(N2) と等価で、方程式 g = −HT λ は、g(N1) = −λ および g(N2) = λ と等価です。これらの方程式は、次の微分代数方程式 (DAE) で結合できます。

    [M000][q¨λ¨]+[C000][q˙λ˙]+[KHTH0][qλ]=[B0]uy=[F0][qλ]+[G0][q˙λ˙]+Du.

    この DAE モデルは、構造体全体の "デュアル アセンブリ" モデルと呼ばれます。2 つのコンポーネントの原則について説明しましたが、このモデルには、2 つを超えるコンポーネントが関係するインターフェイスを含む複数のインターフェイスを受け入れることができます。

    非剛体インターフェイス

    非剛体インターフェイスでは、変位 q1(N1) および q2(N2) は異なることができ、内力は以下で与えられます。

    λ = Kiδ+Ciδ˙, δHq=q1(N1)q2(N2).

    これで、最初のコンポーネントの DOF N1 と 2 番目のコンポーネントの DOF N2 間のバネ-ダンパー状の接続がモデル化されます。剛体接続から非剛体接続にすることで、代数制約 Hq = 0 が削除され、内力が示されます。λ を削除すると、以下を取得します。

    M q¨+(C+HTCiH)q˙+(K+HTKiH)q=0,      y=Fq+Gq˙+Du.

    これは、分離されたモデルが対称の場合に対称のままになる、非剛体結合形式の一連の "主要アセンブリ" 方程式です。この形式の欠点は、連結項 HTCiH および HTKiH により非スパースが生じる可能性があることです。これを回避するために、interface では、代わりに以下のデュアルアセンブリ形式が作成されます。

    [M00000000][q¨δ¨λ¨]+[C000Ci0000][q˙δ˙λ˙]+[K0HT0KiIHI0][qδλ]=[B00]u.

    バージョン履歴

    R2020b で導入