On this page | |
Since | 20.5 |
概要 ¶
MPM Sourceは、MPMシミュレーションに注入されるマテリアルポイントを定義します。
このノードは、ポイントを生成し、
MPM Solverに進む前にポイント単位でバリエーションを加えるのに制御可能なマテリアルポイント系アトリビュートを設定します。
1番目の入力には、MPMを使ってシミュレーションしたいジオメトリを示したメッシュまたはボリュームが必要です。
入力 ¶
Geometry to Fill with Particles
MPMパーティクルで充填されるメッシュまたはボリュームのソースジオメトリ。
MPM Container
シミュレーションのグローバル解像度を定義したMPM Container。
Note
ネットワークがごちゃごちゃしないようにしたいのであれば、この接続をスキップして、代わりに MPM Container パラメータでノード参照することができます。
パラメータ ¶
MPM Container
シミュレーションのグローバル解像度を定義したMPM Containerのノード参照。
Note
ワイヤー接続がしたいのであれば、このパラメータをスキップして、代わりにこのノードの2番目の入力にMPM Containerを直接接続することができます。
Emission Type
Once
シミュレーションの最初のDOPサブステップでパーティクルが放出されます。
Continuous
Activation が1
に評価されている限り、DOPサブステップ毎に断続的にパーティクルが放出されます。
Activation
Emission Type が Continuous に設定されている場合にパーティクルが放出されるタイミングを定義した整数アトリビュート。
Segmentation
各ピースがそれぞれのソースとして扱われるようにするために入力ジオメトリを分割します。
各ピースは個別に処理されるようになり、固有のsourcename
文字列Pointアトリビュートが追加されます。
None
ジオメトリが全体で扱われるようになり、その結果、1個のsourcename
を持ちます。
Name and Connectivity
name
と3D接続性の両方を使用して、ジオメトリを分割し、複数のsourcename
を生成します。
Attribute to Transfer
入力ジオメトリのアトリビュートをマテリアルポイントに転送します。 PrimitiveアトリビュートとVertexアトリビュートは、転送前にPointアトリビュートにプロモートされます。
Points from Geometry ¶
Type
入力ジオメトリに対して使用するポイント生成のタイプ。
Volume
ジオメトリボリュームをパーティクルで充填します。
Surface
ジオメトリサーフェスをパーティクルで覆います。
Point Separation
MPM Containerで定義されたグローバルのパーティクル間隔を上書きします。
これは、指定した入力ジオメトリを充填する隣り合うポイントの中心間の距離です。
Jitter Scale
Point Separation でスケールされた各パーティクルに適用するランダムジッターの大きさ。
Oversampling
このパラメータを上げるほど、ポイントがより密に詰め込まれます。
Tip
これによって、粉砕に対するマテリアルの弾力性が強くなります。
Relax Points
二次ステップとしてパーティクルを互いに押し離して、パーティクルをもっと上手くばらして凝集を回避します。
Relax Iterations
Relax Points が有効な時に実行する緩和処理の反復回数。 反復回数が多いほどパーティクルはより均一に分布しますが、処理が遅くなります。
Material ¶
Material Preset
新しいシミュレーションをセットアップする時にすぐに始められるようにプリセットマテリアルを選択することができます。
Behavior
ポイント単位で使用される構成モデルを制御します。
Elastic
ゼリー、ゴム、ビリヤードのボールのような純粋に弾性のあるマテリアル。
Chunky
雪、土、コンクリートなど弾性と塑性の両方の挙動を示すマテリアル。 ユーザ定義の閾値を超えると、このようなマテリアルは新しい静止状態として塑性変形を蓄積します。 これにより、体積が減少し、密度が増加します。
Liquid
水のような液体マテリアル。 この構成モデルでは非圧縮性のみが適用されます。
Viscous
蜂蜜のような粘性マテリアル。 低い粘度のマテリアルは Liquid に似た挙動をします。
Sandy
粒状の砂のようなマテリアル。 乾いた砂や濡れた砂をシミュレーションするのに使用すると良いでしょう。
Density
density
Pointアトリビュートを設定します。
これは、マテリアルの質量密度です。
Critical Compression
c_compress
Pointアトリビュートを設定します。
Deformation Gradient F
の行列式J
の下限値。
これは、マテリアルの変形を弾性寄与と塑性寄与に分けます。
マテリアルが変形しない場合、F
は単位行列なので、J = det(F) = 1.0
となります。
J
が1.0 - c_compress
より小さい(圧縮)場合、または、1.0 + c_stretch
より大きい場合(伸張)、この差分が塑性変形となります。
J
が1.0 - c_compress
から1.0 + c_stretch
の間にある場合、その変形は弾性変形のままで、マテリアルはその変形から元に戻ろうとします。
この値を上げると、マテリアルの弾力性が増します。 逆に、この値を下げると、マテリアルはあまり反動や抵抗なく簡単に変形するようになります。
Critical Stretch
c_stretch
Pointアトリビュートを設定します。
Deformation Gradient F
の行列式J
の上限値。
これは、マテリアルの変形を弾性寄与と塑性寄与に分けます。
マテリアルが変形しない場合、F
は単位行列なので、J = det(F) = 1.0
となります。
J
が1.0 - c_compress
より小さい(圧縮)場合、または、1.0 + c_stretch
より大きい場合(伸張)、この差分が塑性変形となります。
J
が1.0 - c_compress
から1.0 + c_stretch
の間にある場合、その変形は弾性変形のままで、マテリアルはその変形から元に戻ろうとします。
この値を上げると、マテリアルの弾力性が増します。 逆に、この値を下げると、マテリアルはあまり反動や抵抗なく簡単に変形するようになります。
Compression Hardening
hardening
Pointアトリビュートを設定します。
マテリアルが塑性圧縮されるほど、そのマテリアルの剛性E
が強くなります。
Stiffness
E
Pointアトリビュートを設定します。
マテリアルの変形に対する抵抗。
これは、固体力学の世界では Young’s modulus(ヤング率) と言います。
Stiffnessが高いとシミュレーションを安定させるのには非常に短いタイムステップが必要になるので、このパラメータは、シミュレーション速度に大きく影響します。
Tip
金属やコンクリートなどの硬いマテリアルでは、シミュレーションに必要な物理特性を維持しつつ、このパラメータをできるだけ下げることを推奨します。 例えば、小さなコンクリートの塊では、重量を支える必要がある高層ビルほどの剛性は不要です。
Stiffness Multiplier
Stiffness に乗算する10
の累乗。
Volume Preservation
nu
Pointアトリビュートを設定します。
マテリアルに加わった応力に反応する垂直変形。
これは、固体力学の世界では Poisson’s Ratio(ポアソン比) と言います。
例えば、ゼリーを両側から引っ張ると、そのマテリアルの中心は、その引っ張りに対して垂直な平面上で収縮するはずです。 反対に、ゼリーが圧縮された場合はその逆の現象が予想されます。 このパラメータは、この垂直方向の反応または歪みの強度を駆動します。
Incompressibility
k
Pointアトリビュートを設定します。
圧縮に対する線形的な抵抗。
これは、非圧縮性流体の世界では Bulk Modulus(体積弾性率) と言います。
マテリアルが圧縮されると、体積が減少しないように、それに比例した反対の力が加わります。
Tip
浅い水の場合、このパラメータを下げることで、目立ったアーティファクトなしでシミュレーションを高速化することができます。 その一方で、大量の水の場合、体積と弾力性が減少しないように、このパラメータを非常に高い値に維持する必要があります。
Incompressibility Multiplier
Incompressibility に乗算する10
の累乗。
Strict Incompressibility
gamma
Pointアトリビュートを設定します。
圧縮に対する指数関数的な抵抗。
これは、非圧縮性流体の世界では γ (ガンマ
)と言います。
マテリアルが圧縮されると、体積の減少を厳格に回避するために、指数関数的に反対の力が加わります。
Tip
ほぼ非圧縮性の流体には、7
あたりの値が必要、膨大なサブステップ数になってしまいます。
弱い圧縮性の流体は、1
の値を使用することで、この制約が緩和されるので、線形の非圧縮性( k )のみに依存します。これにより、少しの一時的な圧縮が許容されますがシミュレーションが高速化されるはずです。
Viscosity
viscosity
Pointアトリビュートを設定します。
隣接パーティクルに同程度のVelocityを共有させます。
値が低いと、液体のような挙動になるのに対して、値が高いと、濃くて粘着性のある柔らかい変形可能な固体のようになります。
Plasticity
visco_kappa
Pointアトリビュートを設定します。
変形によって粘度が局所的に高くなります。
これを使用することで、粘性マテリアルを変形させた後にその形状をその位置に強制的に維持させることができます。
Friction Angle
sand_friction_angle
Pointアトリビュートを設定します。
砂粒間の内部摩擦量。
値が低いほど、砂はより自由に流れるのに対して、値が高いほど、砂はより簡単に積み重なり沈殿するようになります。
Cohesion
sand_cohesion
Pointアトリビュートを設定します。
砂を凝集させる強さを制御します。
これは、濡れた砂を模倣するのに適しています。
また、このアトリビュートをアニメーションさせることで、乾いた砂を動的に濡れた砂にすることもできます。
Initial State ¶
Velocity
マテリアルの初期Velocity。
Pin Constraints ¶
Enable Pin Constraint
マテリアルポイントをターゲット位置にピン留めできるようにします。
Note
場合によっては、MPM SolverのDive Targetの中に入って、手動で
pintoanimation
整数Pointアトリビュートとtargetp
ベクトルPointアトリビュートを設定することで、シミュレーション中にポイントをピン留めしたいことがあります。
このpintoanimation
アトリビュートは、たとえ0
に設定されていても、シミュレーションの開始から必ず存在していなければならないことに注意してください。
これは、 Initialize as Pinned パラメータを無効にすることで、設定することができます。
Point Group
このポイントグループ内のポイントにのみ影響を与えます。
@P.y<0
などのエクスプレッションを使用することで、 Y 軸沿いに0より下にあるポイントをピン留めすることができます。
Initialize as Pinned
最初からピン留めされるポイントを設定します。
無効にすると、pintoanimation
アトリビュートはまだ存在しつつ、0
に設定されます。
Enable Animation
MPM Solverに渡される前に下流でアニメーションできるようにフレーム毎にソースポイントを出力します。
Use Input Animation
入力として指定されたアニメーションに応じて、生成されたマテリアルポイントをアニメーションさせます。
Reference Frame
入力のアニメーションをマテリアルポイントに転送する際に使用される静止フレーム。
Visualize ¶
Display Particles as Spheres
ビューポート内でパーティクルを球で表示します。
Point Scale
pscale
アトリビュートを乗算します。
これは、シミュレーション後の視覚化とメッシュ化にのみ使用されます。
各パーティクルの体積は、常にグローバルのParticle Separation(パーティクル間隔)の3乗で計算されます。
Display Pin-to-Animation Guides
ピン留めされたパーティクルを中心に青いワイヤーフレームの球を表示します。
See also |