始めに
N2S 接触を使っていると、設定上、当たるはずと思っているのに、角部がすり抜けてしまうときがあります。
どうして起きるのか、例題を通じて説明します。
例題
ダウンロード:
モデルは単純で、ビーム要素の 1節点を、2枚のシェル要素に接触させる設定です。
ビーム要素を下に下げても右に動かしてもシェルにぶつかりそうですが、実は、どちらかはすり抜けます。
なぜかと言いうと、ここにちょっと分かりにくく書いてあるのですが、これは 1個の節点は 1個の要素面としかペアになれない、ということなのです。
https://2025.help.altair.com/2025/hwsolvers/ja_jp/os/topics/solvers/os/contact_os_c.htm#contact_node_to_suface_discretization_c
ですので、例題の中で CONTPRM, CONTGAP, YES として、実際に OptiStruct が内部で作成している接触要素を出力してみます。
https://2025.help.altair.com/2025/hwsolvers/ja_jp/os/topics/solvers/os/contprm_bulk_r.htm
実行すると .contgap.fem というファイルができています。この中には CGAPG という要素が 1個だけ書かれています。
1個しかない時点で、察しがつくと思いますが、HyperMesh に .contgap.fem を追加でインポートすると、このモデルでは、下方向にのみ接触要素ができていました。
ですので、このモデルは右側には当たらないことになります。
回避策
私が思いつく回避策は 3個です。
- 自動接触を使う
- https://community.altair.com/discussion/62192
- N2S をやめて S2S にする
- 外れている方にも N2S 接触を設定する