Gas Particle Forces DOPは、大きな流体シミュレーションの構築で使用されるマイクロソルバです。 現在のところ、このDOPはParticle Fluid Solver DOPのPressure(圧力)フォースの計算に使われています。 このDOPは、パーティクル間の一対のCollision(衝突)フォースを計算して、任意でそれを適用します。
Collision(衝突)フォースは、各パーティクルのインスタンスパスを参照することで見つかります。 そのインスタンスパスは、パーティクルに取り付けられたSIM_Geometryのパスに展開されます。 そして、そのジオメトリ内の球が衝突検出に使用されます。 衝突が発生した箇所では、パーティクルを引き離すように、非常に非常に大きな反発力が生成されます。
球はパーティクル原点にある必要はありません。その代わりに、球はパーティクルからオフセットすることができます。 Collision(衝突)フォースは、フォースに追加でTorque(回転モーメント)を生成します。
パラメータ ¶
Geometry
Collision(衝突)フォースが計算されるパーティクルセットを含んだジオメトリ。
Enable Pressure Force
このDOPで適用されるPressure(圧力)フォースを有効または無効にします。
Poisson Ratio
通常では0-0.5間のマテリアル特性。反発の強さに影響を与えます。
値が低いほど、反発の強さが増します。
Elastic Repulsion
パーティクルの衝突反応の線形性を制御します。
デフォルト値の1.5がよく使われる値で、通常では変更する必要はありません。
Repulsion Strength (Young’s modulus (Pa) )
衝突を相殺する復元力の大きさを制御します。
値が低いほど、パーティクルが離れるまでの重なりの時間が長くなります。 値が高いほど、システムの剛性が増して、安定を維持するのにサブステップがたくさん必要になります。
Viscous Dampening
パーティクルの減衰反応の線形性を制御します。
デフォルト値の0.5がよく使われる値で、通常では変更する必要はありません。
Dampening Strength
衝突の減衰の大きさを制御します。
値が低いほど、弾性のある反発力が衝突反応よりも影響力を持ちます。 値が高いほど、衝突反応を減衰させます。
Contact Resistance
パーティクルの接触摩擦反応の線形性を制御します。
デフォルト値の1.5がよく使われる値で、通常では変更する必要はありません。
Contact Dampening
パーティクルの接触減衰反応の線形性を制御します。
デフォルト値の0.5がよく使われる値で、通常では変更する必要はありません。
Rolling Friction
回転摩擦係数。通常では滑り摩擦係数よりも非常に小さいです。
Obj. Rolling Friction
パーティクルと接触したオブジェクトの回転摩擦係数。
Obj. Impulse Duration
オブジェクトとパーティクル間の衝突に対する摩擦のImpulse(力積)の大きさを制御します。
値が小さいほど、Impulse(力積)が大きいことを意味し、これはシステムの剛性とシミュレーション時間を増やします。 値が大きいほど、オブジェクト摩擦がパーティクルに与える影響が小さくなることを意味します。
Obj. Trans. Impulse Factor
このパラメータは、オブジェクトのImpulse(力積)の大きさを制御して、パーティクルの移動の動きを遅くします。
Obj. Roll. Impulse Factor
このパラメータは、オブジェクトのImpulse(力積)の大きさを制御して、パーティクルの回転の動きを遅くします。
Compute New Velocity
このオプションが有効な時、DOPは、パーティクル間で作用するフォースを計算し、影響を受けるパーティクルのVelocityアトリビュートを直接修正します。
無効な時、DOPは、単にパーティクルのforce
アトリビュートに計算されたフォースを格納します。
Do Collisions
Collision(衝突)リレーションシップとしてマークされたボリュームデータも衝突計算に含まれます。
Use SDF Velocity
パーティクルとオブジェクト間の衝突に対して、オブジェクトのSDF Velocityを使用します。
Use GEO Velocity
パーティクルとオブジェクト間の衝突に対して、オブジェクトのGEO Velocityを使用します。
Parameter Operations
各データオプションパラメータには、それに関連するそのパラメータの動作方法を指定するメニューがあります。
Use Default
Default Operationメニューの値を使用します。
Set Initial
このデータを作成した時だけ、このパラメータの値を設定します。 それ以降のすべてのタイムステップ上では、このパラメータの値は変更されません。 これは、ポジションやVelocityのような初期状態のセットアップに役に立ちます。
Set Always
このパラメータの値を常に設定します。これは、特定のキーフレーム値が時間にわたって必要な時に役に立ちます。 これは、時間にわたってオブジェクトの位置をキーフレームしたり、ジオメトリが変形する場合にタイムステップ毎に SOPのジオメトリを取得するのに役に立ちます。
この設定をパラメータ値に対してローカル変数と合わせて使用することで、時間にわたって値を修正することもできます。
例えば、X Positionでは、$tx + 0.1
のようなエクスプレッションがタイムステップ毎にオブジェクトを右に0.1ユニットずつ動かします。
Set Never
このパラメータの値をまったく設定しません。 このオプションは、このノードを使って1番目の入力に接続された既存のデータを修正する時に非常に役に立ちます。
例えば、RBD State DOPでオブジェクトの質量しかアニメーションさせたくない場合、 Set Never オプションを Mass 以外のすべてのパラメータで使用し、 Mass パラメータには Set Always を使用します。
Default Operation
Use Default に設定した Operation メニューのパラメータに対して、このパラメータが、使用するオペレーションを制御します。
このパラメータは、 Parameter Operations メニューと同じメニューオプションと意味を持ちますが、 Use Default の選択がありません。
Make Objects Mutual Affectors
このノードの1番目の入力に接続されたすべてのオブジェクトが、相互アフェクターになります。
これは、それらのオブジェクトをこのノードに接続する前にAffector DOPを使用して、*
と*
の間にアフェクターリレーションシップを作成する事と同じです。
このオプションは、すべてのオブジェクトをソルバに送って、お互いに影響し合うようにするのに便利です。
Group
オブジェクトコネクタをこのノードの1番目の入力に接続した時、このパラメータを使って、 このノードから影響を受けるそれらのオブジェクトのサブセットを選択することができます。
Data Name
オブジェクトまたは他のデータにデータを追加するために使用する名前を意味します。 Data Name に“/”(または複数)を含めれば、それはサブデータ内側に移動することを意味します。
例えば、Fan Force DOPのデフォルトの Data Name は“Forces/Fan”です。 これは、“Forces”という既存のデータに“Fan”という名前のデータを追加します。 “Forces”というデータが存在しなければ、単なるコンテナデータが作成されて、そこに“Fan”サブデータが追加されます。
異なるデータは、それらを使用する名前に対して異なる要件を持ちます。 非常に稀な場合を除いて、デフォルト値を使用してください。 いくつかの例外は、特定のデータまたは特定のタイプのデータを利用するソルバで説明します。
Unique Data Name
このパラメータを有効にすると、このノードで作成されるデータが既存データを上書きしないように 固有な名前で Data Name パラメータの値を修正します。
このパラメータをオフにすると、同じ名前の2つのデータを追加すると、2番目のデータが1番目のデータを置換します。 各タイプの挙動が必要な場合があります。
オブジェクトにいくつかのFan Forcesを吹き付けたい時に、各ファンが前のファンを上書きしないように、 個々のファンの Data Name を変更して名前の衝突を回避するよりも、 Unique Data Name の機能を使用する方が簡単です。
一方で、オブジェクトに既にRBD Stateデータが追加されていることを知っていれば、このオプションをオフにすることで、 新しいRBD Stateデータが既存データを上書きすることができます。