Master/Slave面の不整合

カテゴリ: エラー対策 | 2026-02-01
CAE visualization for master slave inconsistency - technical simulation diagram

Master/Slave面の不整合とは

🧑‍🎓

先生、接触ペアのmasterとslaveの割り当てを間違えると、どんな問題が起きるんですか?


理論と物理

Master/Slaveの物理的意味

🧑‍🎓

接触解析で出てくるMaster面とSlave面って、具体的に何が違うんですか? どっちが上とか下とか、物理的な意味があるんですか?

🎓

良い質問だ。物理的な上下ではなく、数値積分の「探査点」と「ターゲット面」の関係だ。一般的に、Slave面のガウス積分点がMaster面を探査し、貫入がないかチェックする。例えばAbaqusでは、より粗いメッシュや剛性の高い部材の面をMasterに設定することを推奨している。剛性比が100倍以上ある場合、硬い側をMasterにすると収束性が向上する。

🧑‍🎓

「探査する」というのは、具体的にどういう計算が行われるんですか? 単に距離を測るだけ?

🎓

もっと積極的な計算だ。Slave点

$$ \mathbf{x}_s $$
が、Master面
$$ \Gamma_m $$
上の最近接点
$$ \mathbf{x}_m $$
を見つけ、その法線方向の距離(ギャップ
$$ g_N $$
)と接線方向の滑りを計算する。接触力は、このギャップが負(貫入)になった時に、ペナルティ法なら
$$ \mathbf{F}_c = \epsilon_N g_N \mathbf{n} $$
$$ \epsilon_N $$
はペナルティ剛性)のように発生する。

🧑‍🎓

Master面の法線方向が計算に影響するってことですか? 部品をひっくり返してモデリングしたら結果が変わる可能性がある?

🎓

その通り。多くのソルバー(Ansys Mechanical, LS-DYNA)では、接触面の法線は部品の外向きを正と定義する。Slave点がMaster面の「正」の法線方向から接近した時のみ接触が有効になる。つまり、部品の内向きに面が定義されていると、接触が検知されずに貫通する「不整合」エラーの原因になる。メッシュ生成時は面の向きを統一することが重要だ。

数値解法と実装

離散化とサーチアルゴリズム

🧑‍🎓

不整合エラーが出る具体的な数値的な条件は何ですか? メッシュサイズが違うだけではダメなんですか?

🎓

メッシュサイズの違いは一因だが、本質は「サーチアルゴリズムの失敗」だ。例えば、Slave点から最も近いMaster面のセグメントを見つけるバケットサーチで、サーチ距離(ピン球半径)をデフォルト値のままにしていると、メッシュサイズ差が大きい場合に対応セグメントを見失う。Ansysではこのピン球半径は要素サイズに基づいて自動設定されるが、手動で調整する場合は、最大メッシュサイズの2〜3倍に設定することがガイドラインにある。

🧑‍🎓

サーチが失敗すると、具体的にソルバー内部では何が起こるんですか?

🎓

Slave点がどのMasterセグメントにも属さない「孤児点」として扱われ、接触拘束が生成されない。その結果、その点での貫入を抑制する剛性マトリクスが追加されず、見かけ上は部品がすり抜ける。収束判定では大きな残差が生じ、解析が停止したり、「接触が突然開く」という非物理的な挙動として現れる。

🧑‍🎓

メッシュの位置が完全に一致していれば問題ないんですか? CAD上で同じ面を共有している場合とか。

🎓

それでも問題は起こりうる。数値的に「完全に一致」することは稀で、節点座標に微小な差(1e-6 mmオーダー)があれば、別の面と判定される。この「数値的ノイズ」を扱うために、接触設定には「調整許容値」や「ピン球係数」といったパラメータが存在する。COMSOLでは「ペアの検索許容値」をデフォルトの「自動」から「手動」に切り替え、モデル全体サイズに対する相対値(例: 1e-5)を設定することを推奨している。

実践ガイド

モデル構築時のチェックリスト

🧑‍🎓

不整合エラーを未然に防ぐための、モデリング時の具体的な手順はありますか?

🎓

まずは「接触面の候補ペア作成」の前に、以下の事前チェックを行う。1. 面の法線方向を可視化して全て外向きか確認(Pre/Postソフトの基本機能)、2. 接触予定領域のメッシュサイズ比を3倍以内に収める、3. シャープなエッジや極端に細長い要素(アスペクト比20以上)を接触面から除外する。Abaqus/CAEなら「Mesh」モジュールで「Verify Mesh」を実行し、歪んだ要素を洗い出せる。

🧑‍🎓

メッシュサイズ比を3倍以内にできない場合はどうすれば? 大きな構造物と小さなボルトの頭の接触など。

🎓

その場合は、接触定義の方法を変える。Ansys Workbenchでは、「Bonded」接触で「Adjust to Touch」オプションを有効にすると、初期ギャップ/オーバーラップを自動修正する。あるいは、メッシュサイズの小さい面(ボルト頭)をSlave、大きい面をMasterに設定し、さらに「Contact Tool」で接触面の拡張係数(「Pinball Region」)を「Radius」モードで明示的に指定する。経験則では、粗いメッシュの要素辺長の1.5倍を初期値として試す。

🧑‍🎓

接触ペアを手動で選ぶのと、自動で選ばせるのと、どちらが安定しますか?

🎓

状況による。単純な形状で面数が少なければ手動選択が確実だ。しかし、複雑なアセンブリでは自動接触(Ansysの「Automatic Surface-to-Surface」、Abaqusの「General Contact」)が効率的で、不整合リスクも低い。なぜなら、これらの自動接触は内部で面の向きやサーチアルゴリズムを最適化し、かつ「自己接触」も包含できるからだ。ただし、計算コストは増加する。自動接触を使う場合は、その後に「Contact Tool」で生成された接触ペアをレビューする習慣をつけよ。

ソフトウェア比較

各ソルバーのアプローチとパラメータ

🧑‍🎓

Ansys、Abaqus、LS-DYNAで、Master/Slaveの不整合に対するデフォルトの挙動や設定項目に違いはありますか?

🎓

大きな違いがある。まずAbaqus/Standardは非常に厳格で、初期設定で不整合があると警告メッセージ(***WARNING: SLAVE NODE X IS OVERCLOSED BY Y)を大量に出力し、収束不良に直結しやすい。そのため、初期ギャップ調整(「INTERFERENCE FIT」や「CLEARANCE」)の使用がほぼ必須だ。一方、LS-DYNAの自動接触(*CONTACT_AUTOMATIC_SURFACE_TO_SURFACE)は寛容で、初期貫入を自動的に解消する「SOFT」オプションがデフォルトに近い。Ansys Mechanicalはその中間で、「Program Controlled」に任せると内部で調整を試みる。

🧑‍🎓

「面の向き」の問題は、どのソフトでも同じように扱われるんですか?

🎓

扱い方と修正のしやすさが異なる。COMSOL Multiphysicsは「ペア」型接触では、二つの面の法線が「向かい合っている」ことを前提とする。法線が逆の場合は「反転」ボタンで簡単に修正できる。MSC Nastranの面接触(BSURF)では、面を定義する要素の接続順序(右手系)によって法線が決まるので、メッシュ生成段階で意識する必要がある。HyperMeshでメッシュを作成する際は、コンポーネントごとに法線を統一する「Orient Elements」ツールを使うのが定石だ。

🧑‍🎓

自動メッシャー(例えばAnsysのPatch Conforming)を使うと、接触面のメッシュが非整合になることがありますか?

🎓

非整合メッシュそのものは問題ではない。問題は、自動メッシャーが各部品を独立してメッシュするため、接触境界の節点位置が一致しないことだ。これを防ぐには「接触サイズ一致」機能を使う。Ansys Workbenchの「Contact Sizing」、Abaqus/CAEの「Mesh」モジュールにおける「Seed Edges by Size」で、接触面となるエッジに同じサイズのシードを割り当てる。ただし、これで完全に一致するのは1次要素のみで、2次要素では中間節点の位置がずれる可能性がある点に注意。

トラブルシューティング

エラーメッセージ別対策

🧑‍🎓

解析実行中に「Contact pair X has overclosed slave nodes」や「Severe discontinuity」といったエラーが出ました。最初に何を確認すべきですか?

🎓

まずは「初期接触状態」の可視化だ。Abaqusなら.staファイルの最初の方に、各接触ペアの初期開き量/貫入量がリストされる。Ansys Mechanicalでは「Contact Tool」→「Initial Information」で同様の情報が得られる。ここで、想定外の大きな貫入(例えばモデルサイズ1mに対して1mm以上)があれば、それはCADモデルの干渉か、部品配置の誤りが原因だ。微小な貫入(1e-3 mm以下)なら、接触設定の「Adjust to Touch」や「Interface Treatment」で対応可能。

🧑‍🎓

初期状態はOKなのに、解析途中で突然「接触が外れた」というエラーが出ます。これは不整合が原因ですか?

🎓

それこそが「動的不整合」の典型的な症状だ。大きな変形や回転が生じ、初期に設定されたMaster/Slaveのサーチ関係が崩れる。対策は二つ。第一に、Ansysの「Nonlinear Adaptive Region」やLS-DYNAの「*CONTACT_AUTOMATIC_SINGLE_SURFACE」のように、変形に応じて接触面を再定義する機能を使う。第二に、サーチ半径を動的に拡大する。Abaqus/Explicitでは、

$$ \text{スケールファクタ} = 1.0 $$
(デフォルト)を1.5や2.0に増やすことで、変形後も接触を捕捉できる可能性が高まる。

🧑‍🎓

接触圧力の結果を見ると、ムラがあって一部の要素だけ異常に高い値が出ています。これも不整合の影響ですか?

🎓

ほぼ間違いない。それは「点接触」状態になっている証拠だ。本来は面で荷重を受けるべきが、サーチ失敗により1つのSlave節点だけが反力を負担している。数値的には、ペナルティ剛性

$$ \epsilon_N $$
が高すぎる(デフォルトの「プログラム制御」が不適切)場合にも起こる。まずは接触面のメッシュを細かく均一にし、Ansysなら「Normal Stiffness」を「Manual」から「Factor」0.1などに下げて試せ。Abaqusでは「Contact Controls」で「Stiffness Scale Factor」を調整する。

🧑‍🎓

全て試してもダメな場合、最終手段はありますか? Master/Slaveの概念そのものを避ける方法は?

🎓

ある。「対称面接触」または「マルチポイント拘束(MPC)ベースの接触」だ。Ansysの「Pure Penalty」アルゴリズムには「Symmetric」オプションがあり、Master/Slaveを自動で反転させながら計算する。Abaqus/Standardの「Contact Pair」で「Balanced Master-Slave」を指定するか、「General Contact」を使用する。究極的には、面全体を拘束する「Tie」接触や「RBE3/MPC」で近似するという手もあるが、これは面の分離や滑りを表現できないため、適用範囲は限られる。

この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ
プロフィールを見る