On this page |
MPM ¶
MPMとは、Material Point Methodの略で、FLIP Solverを固体力学に拡張したものです。 これによって、雪、土、泥、コンクリート、金属、ゼリー、ゴム、水、蜂蜜、砂などの複数のマテリアルのシミュレーションが可能です。 この実装は、たいていのマシンに搭載されている強力なGPUを活用するOpenCLがベースになっています。 バックグラウンドグリッドには、デフォルトでSparseのNanoVDBが使用されています。
MPMは、力学的な粉砕をリアル且つ簡単に行なうことができますが、結局のところすべてをバラバラにすることができます。 MPMは、(すべてがMPMである場合に)マルチフィジックスを使用することができ、塊状/肉厚なマテリアルのシミュレーションが本当に得意です。 MPMはSOPベースのワークフローを使用し、Dive Targeによって(ノードの中に入って)ユーザ定義のフォースを追加することができます。 典型的なノードツリーは、以下のパーツで構成されています。 Tabメニューから MPM Configure 系ツールを選択することで、単純なセットアップのサンプルを配置することができます。
MPMシミュレーションに注入されるマテリアルポイントを定義します。
このノードは、ポイントを生成し、MPM Solverに進む前にポイント単位でバリエーションを加えるのに制御可能なマテリアルポイント系アトリビュートを設定します。
入力にはメッシュまたはボリュームが必要で、そのオブジェクトにはそのマテリアルポイント系アトリビュートを含んだパーティクルが充填されます。
たくさんのMPM Sourceノードは、MPM Solverに渡す前にマージすることができます。
シミュレーションで使用されるコライダーを定義します。 VDBコライダーのみがサポートされています。 このノードは、メッシュからVDB表現を生成したり、直接VDBを接続することができます。 3つのタイプのコライダーがサポートされています: Static、Animated(Rigid)、Animated(Deforming)。 たくさんのMPM Colliderノードは、MPM Solverに渡す前にマージすることができます。
MPMシミュレーションの解像度と開始フレームを定義します。
こういった理由で、MPM Containerは、MPM計算に関係するすべてのMPMノードに接続しなければなりません。
MPM Source、
MPM Collider、
MPM Solverには、どれもこのノードに接続するための入力が用意されています。
必要に応じて、シミュレーションコンテナに境界を追加することができます。
デフォルトでは、コンテナには境界がありませんが、境界を定義することで、マテリアルパーティクルがその境界に接触した時に跳ね返ったり削除されるようにすることができて便利です。
1番目の入力と2番目の入力のそれぞれに渡されたソースとコライダーに基づいて、シーンを計算する実作業を行ないます。 マルチフィジックスコンテキスト内でたくさんのマテリアルタイプをシミュレーションすることができます。 MPMとはFLIPを固体力学に拡張したものであり、当初は雪のシミュレーションをするために導入されました。 雪や土のように塊が引っ付いて大きな塊になっていくような弾塑性の“塊状”のマテリアルを計算するのが特に効果的です。 また、水が土やコンクリートの大きな塊を運ぶといった複雑な相互作用をシミュレーションすることもできます。
Note
MPMはSOPになっていますが、それを使用するにはDOPレベルの権限が必要です。 つまり、MPMは、Houdini FX、Houdini Apprentice、Houdini Indie、Houdini Educationで利用可能です。 Houdini Coreでは利用できません。
MPMマテリアル ¶
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
他のダイナミクス ¶
POP Curve Incompressible Flowノードは、コントロールカーブに沿って、与えられた線形速度、角速度、または両方から非圧縮性Velocityフィールドを計算し、パーティクルに対して線形速度と角速度を設定します。