接触計算でメッシングのエラーが発生した場合の対処方法


本記事では、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

よくあるエンジニアからの質問はこちら