EDEM API - 接触モデルの例:粒子の除去


この記事は下記リンクを翻訳したものです。

https://community.altair.com/csm?sys_kb_id=baaaf37e1b5fa110507ca6442a4bcb88&id=kb_article_view&sysparm_rank=4&sysparm_tsqueryId=5d6269a61b732190c4dfdbd9dc4bcbba

EDEM APIのパーティクルマネージャー機能を使用すると、スケール、粒子総数、およびマルチスフィア粒子要素にアクセスできます。また、シミュレーションから粒子を削除する機能も含まれています。

この例は、ソルトスプレッダーシミュレーションに適用される粒子除去機能を示しています。塩粒子は、粒子の通過を追跡するように配置された平面に当たると除去されます。除去は、粒子が「トラッカー」と呼ばれるジオメトリセクションに接触するときに発生します。コードが「tracker」という名前と明確に照合するため、ジオメトリの名前は重要です。追跡面は、衝撃の数に応じて、黄色から赤色に着色されます。トラッキングプレーンの色付けは、APIカスタムジオメトリプロパティを使用して設定されます。

この例で必要な出力は、異なる平面にわたる塩の総分布です。平面ごとに材料を削除して記録すると、個々の粒子を追跡する場合と比較して、シミュレーション時間が大幅に短縮されます。これにより、下の画像の視覚化からわかるように、ポスト処理能力も向上します。同じ機能を他のシミュレーションや産業に適用できます。たとえば、農業産業の肥料散布機をシミュレートする場合、化学または鉄鋼製造での化学反応中に材料を除去する場合、または材料破損モデルの一部として使用できます。

2022年1月更新 - このモデルは、CPU用のEDEM APIバージョン3.3に更新され、GPU処理にCUDA APIを使用するようにも更新されました。

実行するには:

RemoveParticles.dll for WindowsまたはRemoveParticles.so for Linuxを、必要なシミュレーション.demファイルと同じフォルダに配置します。

シミュレーションをCUDA GPUで実行する場合は、RemoveParticles_v3_3_0.cuを追加します

EDEM Creatorを開き、Geometriesセクションに移動します。「トラッカー」と呼ばれるジオメトリがあることを確認します。 

[物理]> [粒子からジオメトリ]セクションに移動し、コンタクトチェーンを編集します。 プラグインモデル領域からRemoveParticlesを追加します(これは、提供された例ですでに行われていることに注意してください) 

その後、モデルはCPUまたはCUDA GPUのトラッカーコードを使用して実行できます。 

ご自身のプロジェクトで使用するコードをご覧ください。他のユーザーを支援するために、独自の変更やコードスニペットを投稿していただければ幸いです。この接触モデルについて質問する際は、このフォーラムを自由に使用してください。