1

疎な隣接行列のノードの初期セットからすべてのノード k ステップ数を見つけることができる関数があります。通常、この初期セットは、1 つのブランチの to-from ノードです。これらのノードに到達するために「使用される」ブランチのリストが必要です。

接続されたノードを見つけるために使用する関数は次のとおりです。

% nb = number of buses in the system
% branch_list = [from to] = the from/to nodes of each branch
adj_mat = sparse(from,to,1,nb,nb);
node_vec0 = sparse([from to],1,1,nb,1);
A = adj_mat + speye(nb);  % Add 1's on the diagonal of the adjacency matrix
node_vec = A * node_vec0; % Vector containing all nodes connected to node_vec0

最後の行を k 回繰り返して、最初のノードから k ステップ離れたすべてのノードを見つけることができます。

私がやりたいことは、これらのノードに到達するために使用される各ブランチの行 (ブランチ リスト内) を見つけることです。

これを行う効率的な方法はありますか?

ありがとうございました!

4

0 に答える 0