Оптимизация СМО
Автор
function simpGraph(nM)
qN = size(nM, 1)
rM = nM ./ nM
for a in 1:qN
for b in 1:qN
if isnan(rM[a, b])
rM[a, b] = 0
end
end
end
ruM = triu(rM)
trM = rM - ruM
rrM = zeros(qN, qN)
for p in 1:qN
for q in 1:qN
rrM[q, p] = trM[p, q]
end
end
grM = rrM + ruM
nz = count(x -> x > 0, grM)
s = zeros(Int, nz)
t = zeros(Int, nz)
bW = zeros(Int, nz)
u = 1
for p in 1:qN
for q in 1:qN
if grM[p, q] > 0
s[u] = p
t[u] = q
bW[u] = grM[p, q]
u += 1
end
end
end
return s, t
end