流体スプリッタ
概要と主要な概念
スプリッタは、複数の出力ポートにモデラーが指定する割合で材料を送信するために使用されます。これらの割合は、[スプリッタの割合]テーブルで指定されます。テーブルの各行は出力ポートに対応しています。モデラーの各ポートの説明(モデラーのみが使用)と、各ポートに送られる流出材料の割合(0~100)を入力できる列があります。スプリッタが材料を送り出す際には、常に指定された割合で送られます。スプリッタが送ろうとしているすべての材料を送ることができない場合は、他のポートに送る量を減らして、割合が常に同じになるように保ちます。モデラーは、AdjustInputPorts関数を使用して、入力レートとスケール係数を完全に制御します。また、合計出力レートも制御します。ポート出力レートとスケール係数は、必要に応じて、オブジェクト自体が調整されます。下流のオブジェクトがいっぱいになるか、ほぼいっぱいになると、FluidSplitterで送られる材料の量を正しく調整できないことがあります。計算のタイミングによっては、下流のオブジェクトがスプリッタの材料用のスペースを確保できるだけの材料をリリースした場合でも、送ろうとしている材料分のスペースがないとスプリッタが判断することがあります。
FluidBlenderは通常の方法で材料を受け取りますが、材料を送る方法は異なります。ユーザーが[スプリッタの割合]テーブルで指定した割合で材料を送り出します。スプリッタを下流のオブジェクトに接続すると、このテーブルが[プロパティ]ウィンドウに表示されます。テーブルの各行は1つの出力ポートに対応し、説明と割合を示す2つの列を持ちます。説明は、該当するポートに送られる材料を説明するテキスト文字列であり、モデラーの利便性のみを考慮したものでオブジェクトでは使用されません。割合は0から100の間の数値で、該当するポートに送られる流出材料の割合を示します。
スプリッタはティックごとにレートと容量に基づいて、それぞれの下流のオブジェクトに送る材料の量を計算します。下流のオブジェクトのいずれかにスプリッタが計算した量を受け取るだけのスペースがない場合、割合が正しく維持されるように、各ポートに送られる量が減らされます。
各ポートに送る量は常にスプリッタによって制御されているため、モデラーが最大ポートレートや出力ポートのスケール係数にアクセスすることはできません。ただし、オブジェクトの最大出力レートを編集することはできます。ユーザーは入力レートとスケール係数を詳細に制御できます。これらの値は、ティックごとに起動するAdjustInputRates関数を使用して変更できます。これにより、モデルの実行中に入力レートとスケール係数を更新できます。
状態
統計的な目的で、流体スプリッタは、シミュレーション実行中、さまざまな位置で次のいずれかの状態になります。
空
スプリッタに何も入っていません。
空ではない
スプリッタには送り出すことができる材料が入っています。
プロパティ
流体スプリッタオブジェクトには、さまざまなプロパティを持つ7つのタブがあります。最後の5つのタブは、ほとんどの流体オブジェクトに共通する標準タブです。これらのタブのプロパティの詳細については、以下を参照してください。
[統計]タブは廃止され、このオブジェクトではサポートされていません。代わりにオブジェクトのクイックプロパティの統計グループを使用します。
残りの2つのタブ([スプリッタ]タブと[割合]タブ)は、流体スプリッタオブジェクトに固有です。これらのタブのプロパティについては、次の2つのセクションで詳しく説明します。
[スプリッタ]タブ
[スプリッタ]タブには次のプロパティがあります。
最大コンテンツ
このオブジェクトがいつでも保持できる流体材料の最大量。
入力レートを調整
この関数はティックごとに呼び出され、モデル実行中にユーザーが入力レートとスケール係数を変更できるようにします。レートとスケール係数を保持するノードへの参照となっているアクセス変数があります。現在のレート(オブジェクトまたはポート)を読み取るには、getnodenum()コマンドを使用します。レートを変更するには、setnodenum()を使用します。スケール係数を読み取ったり変更したりするには、getnodenum()とsetnodenum()をrank()コマンドとともに使用します。
入力ポート
これらのプロパティは、オブジェクトが上流のオブジェクトから材料を受け取る方法に影響します。
- 最大オブジェクトレート - 結合したすべての出力ポートを通って材料がこのオブジェクトに入る最大レート。
- 最大ポートレート - 材料が任意の1つのポートを通ってこのオブジェクトに入る最大レート。
- 入力ポートのスケール係数 - テーブルの各行は1つの入力ポートのスケール係数です。値に最大ポートレートを掛けて、その特定のポートの実際の最大レートを決定します。これにより、モデラーはモデル実行中に個々の入力ポートのレートを変更できます。
出力ポート
これらのプロパティは、オブジェクトが下流のオブジェクトに材料を送る方法に影響します。
- 最大出力レート - 結合したすべての出力ポートを通って材料がこのオブジェクトを離れる最大レート。
[割合]タブ
[割合]タブには次のプロパティがあります。
スプリッタの割合
このテーブルの各行は、1つの出力ポートを表します。このウィンドウを開いたときに、オブジェクトが下流のオブジェクトに接続されていないと、これらの行はテーブルに表示されません。モデラーがテーブル内で変更できる列は2つあります。
- 成分 - これは、行が表すポートに送られる材料のテキストによる説明です。これはモデラーのみが使用するもので、スプリッタはこの値を無視します。
- 割合 - 0から100までの数値。この行によって表されるポートに送られる合計流出材料の割合です。スプリッタは、最大レートで送るだけの材料やスペースがない場合でも、これらの割合を維持するために、各ポートに実際に送られる材料の量を調整します。