ユーティリティ ネットワークには、サブネットワークが更新、エクスポート、トレースされたときに使用される、「属性の伝達」と呼ばれる高度な機能があります。
プロパゲーターは、トレースがフィーチャを通過するときに、サブネットワーク コントローラーの下流にあるフィーチャのネットワーク属性から値を取得します。ネットワーク属性は、トポロジが有効化または整合チェックされるとネットワーク トポロジ内に保持され、フィーチャクラスの属性に格納された値に関連付けられます。
注意:
ネットワーク属性が NULL 値をサポートしている場合、伝達時に発生した NULL 値は無視され、伝達される値には影響を及ぼしません。
プロパゲーターは、単一のネットワーク属性のサブネットワーク トレース構成の一部として、層レベルで定義されます。この操作は、ユーティリティ ネットワークの構成フェーズで、ユーティリティ ネットワーク管理者が [サブネットワーク定義の設定 (Set Subnetwork Definition)] を使用するか、[トレース] を実行して完了します。propagators パラメーターは Python を使用する場合、または ModelBuilder のパラメーターから変数を作成する場合にのみ使用できます。
プロパゲーターの構成は、[ネットワーク プロパティ] タブの [層] サブセクションの [トレース構成] 列にあります。サブネットワークが更新、エクスポート、またはトレースされるときに、operator が使用されて、考慮されるフィーチャをフィルタリングします。複数のパラメーターが伝達の構成に関連付けられます。詳細については、「サブネットワーク定義の設定 (Set Subnetwork Definition)」をご参照ください。
ネットワーク属性値を反映するために使用できる 3 種類の Functions があります。
- Propagated_MIN
- Propagated_MAX
- Propagated_BITWISE_AND
注意:
伝達は常にサブネットワーク コントローラーから開始します。
次の例は、ソースベースのネットワーク シナリオを示します。ただし、シンクベースのネットワークに応用する際には、上流と下流が入れ替わることがあります。
Propagated_MIN
Propagated_MIN 関数は、比較対象の 2 つの数値の最小値を求めます。この関数は、現在のフィーチャの数値を前のフィーチャの値以下に維持する必要がある場合に使用する必要があります。
電気ネットワークの下流解析トレースを一例として考えてみましょう。ここでは、ネットワーク属性 MOV をフィールド maxoperatingvoltage に割り当てます。トレースは、35 kV の MOV で開始します。これが最初に伝達される値です。25 kV の値が発生すると、次に別の最小値が発生するまでは、この最小値が伝達されます。サブネットワーク全体がトレースされるか、演算子で設定された条件が満たされるまで、この操作が下流に向かって行われ、最小値が伝達されます。
以下に示すサンプル関数は次のとおりです。MOV PROPAGATED_MIN IS_GREATER_THAN 15 MAXVOLTAGE
この構成では、MOV が 15 kV よりも大きい場合は伝達を続行するよう、システムに指示しています。この例では、MAXVOLTAGE は [サブネットワークの更新 (Update Subnetwork)] の実行中に更新される属性であり、15 kV 以下の値がバリアとしての役割を担い、トレースを停止します。
Propagated_MAX
Propagated_MAX 関数は、比較対象の 2 つの数値の最大値を求めます。この関数は、現在のフィーチャの数値を前のフィーチャの値以上に維持する必要がある場合に使用します。
ここで、同じ電気ネットワークにおいて、MOV が maxoperatingvoltage フィールドに割り当てられるネットワーク属性とします。回線の電圧をアップグレードしようと検討しているエンジニアは、トレースを実行して、プロジェクトの一環として交換が必要な機器の数量を把握する可能性があります。これはプロパゲーターを使用し、トレースによってライン上の MAXVOLTAGE を更新することで行えますが、次に示すように、ネットワーク属性 MOV で PROPAGATED_MAX 関数を使用して 30 kV を超過しないことが条件となります。MOV PROPAGATED_MAX IS_LESS_THAN_OR_EQUAL_TO 30 MAXVOLTAGE
この構成では、MOV が 30 kV 以下の場合は伝達を続行するよう、システムに指示しています。この例では、MAXVOLTAGE は [サブネットワークの更新 (Update Subnetwork)] の実行中に更新される属性であり、30 kV よりも大きい値がバリアとしての役割を担い、トレースを停止します。
Propagated_BITWISE_AND
Propagated_BITWISE_AND 関数は、bitset を表す 2 つの数値の差を求めます。たとえば、電気ドメインでは、フェーズは 3 つのビット (それぞれフェーズ A、フェーズ B、フェーズ C に対するもの) を使用してモデル化できます。これら 3 つのビットを合わせて 2 進数 111 が形成されます。これを 10 進数に変換すると 7 という数値になります。いずれかのビット (たとえばビット B) が非通電の場合、残り 2 つのビット (たとえばビット A と C) に通電され、2 進数は 101 になります (真ん中の 0 は B が非通電であることを示します)。これを 10 進数に変換すると数値 5 になります。
ここで、電気ネットワークの下流解析トレースで、フェーズを更新するよう伝達が構成されており、ネットワーク属性 Phases Current はフィールド phasescurrent に割り当てられているとします。
ソース回線遮断機は ABC です。B フェーズが上流で非通電である場合、フィーチャのネットワーク属性がフェーズ B を示していても、プロパゲーターは下流フィーチャでもフェーズ B を非通電にするようフェーズ値を計算します。この操作は、演算子が true である限り、トレースとともに下流に向かって続行します。
以下に示すサンプル関数は次のとおりです。Phases Current PROPAGATED_BITWISE_AND INCLUDES_ANY ABC PHASEENG
この例では、Phaseseng は [サブネットワークの更新 (Update Subnetwork)] の実行後に更新される属性です。フェーズ B のラインはプロパゲーターによって非通電になり、トレースのバリアとなります。