Skip to content

Commit 0d4adad

Browse files
committed
Update the function d.getNodeLinks to return all the links to which all nodes is connected to
1 parent 043c1a4 commit 0d4adad

File tree

1 file changed

+21
-7
lines changed

1 file changed

+21
-7
lines changed

epanet_matlab_toolkit/epanet.m

+21-7
Original file line numberDiff line numberDiff line change
@@ -5538,23 +5538,37 @@ function toJsonFile(obj, values, varargin)
55385538
% See also getLinkNodesIndex, getNodeLinks.
55395539
value = obj.getLinkNodesIndex;
55405540
end
5541-
function value = getNodeLinks(obj, nodeindex)
5541+
function value = getNodeLinks(obj, varargin)
55425542
% Retrieves the links which a node is specific connected to.
55435543
%
55445544
% Example 1:
5545+
% d.getNodeLinks
5546+
%
5547+
% Example 2:
55455548
% nodeindex = 2;
55465549
% d.getNodeLinks(nodeindex)
55475550
%
5548-
% Example 2:
5551+
% Example 3:
55495552
% nodeID = '10';
55505553
% d.getNodeLinks(nodeID)
55515554
%
55525555
% See also getLinkNodesIndex, getNodesConnectingLinksID.
5553-
if ischar(nodeindex), nodeindex = obj.getNodeIndex(nodeindex); end
5554-
LinkNodesIndex = obj.getLinkNodesIndex;
5555-
links_1 = find(nodeindex == LinkNodesIndex(:,1))';
5556-
links_2 = find(nodeindex == LinkNodesIndex(:,2))';
5557-
value = sort([links_1, links_2]);
5556+
if nargin == 2
5557+
nodeindex = varargin{1};
5558+
if ischar(nodeindex), nodeindex = obj.getNodeIndex(nodeindex); end
5559+
LinkNodesIndex = obj.getLinkNodesIndex;
5560+
links_1 = find(nodeindex == LinkNodesIndex(:,1))';
5561+
links_2 = find(nodeindex == LinkNodesIndex(:,2))';
5562+
value = sort([links_1, links_2]);
5563+
else
5564+
connmatrix = obj.getConnectivityMatrix;
5565+
nodesConnectingLinksIndex = obj.getNodesConnectingLinksIndex;
5566+
value = {};
5567+
for i=1:size(connmatrix, 1)
5568+
linksconnFrom = find(nodesConnectingLinksIndex(:, 1) == i);
5569+
linksconnTo = find(nodesConnectingLinksIndex(:, 2) == i);
5570+
value{i} = unique([linksconnFrom', linksconnTo']);
5571+
end
55585572
end
55595573
function value = getLinkNodesIndex(obj, varargin)
55605574
% Retrieves the indexes of the from/to nodes of all links.

0 commit comments

Comments
 (0)