接触計算でメッシングのエラーが発生した場合の対処方法
本記事では、Altair MotionView / MotionSolveの接触計算でメッシングのエラーが発生した場合の対処方法を説明します。
接触計算が失敗したケースでMotionSolveの.logファイルを見ると、下記のようなメッセージが表示されているケースがあります。
「FATAL ERROR: Post_Graphic/100 3-manifold edge detected!
Please check your mesh for errors.
One issue found between face id 100 and 200.」
これは、CADグラフィックを用いた接触計算を設定して場合に、計算前のメッシングがうまくいかず、接触計算に使用するグラフィックにエラーがあることを示しています。
面IDの確認方法
この時に、面のIDが表示されるのですが、その面がどこなのかは、HyperViewで確認できます。
HyperViewにて、MotionViewが生成した接触用のメッシュファイル「ファイル名_MS_contact_gra_graphic.h3d」を開きます。
Tableをクリックし、画面下パネルにてElementを選択します。
Elementの黄色ボタンをクリックし、開いたメニューにてBy IDを選択します。
By Element IDとし、エラーの出た面のIDをタイプし、Addをクリックします。
Applyをクリックすると、要素情報がテーブルに追加され、グラフィックエリアで要素がハイライトされます。
対処法:手動メッシング
該当箇所のCADを見直し、CADを修正することで改善できることもありますが、HyperMeshを用いて、手動でメッシングしたグラフィックを使用することでも本エラーを回避できます。
HyperMeshで元のCADデータを開き、メッシングします。
ValidateのEdgesでフリーエッジやT-コネクションが無いことを確認します。
File -> Export -> H3Dでデータを書き出します。
FE onlyでメッシングしたメッシュのみ書き出します。
MotionViewにてグラフィックをType: Fileで追加します。先に出力した.h3dを選択します。
追加したGraphicのBodyをGround Bodyから修正します。
Contactにて使用するグラフィックをCADグラフィックから追加したH3Dのグラフィックに変更します。
元のCADグラフィックは無効にしてもよいですが、Derive From GraphicsによりCADグラフィックを用いてBodyの質量、慣性モーメント、重心位置を計算している場合は残しておいてください。
無効にすると、各値が0になります。H3Dのグラフィックは質量、慣性モーメント、重心位置の計算には使用できません。
以上で、手動でメッシングしたグラフィックへの差し替えは完了です。MotionSolveの解析を再度実行して、エラーが無くなっていることを確認してください。
使用製品:Altair MotionSolve/MotionView
よくあるエンジニアからの質問はこちら