S
- N
xN
разреженная матрица.A
- M
x1 вектор.
Ненулевые значения S
являются индексами A
.
Я хочу вычислить вектор x
таким образом, чтобы в i
-й записи x
:
для каждого ненулевого значения j
в i
-й строке S
, возьмите A[j]
, вычислите сумму всех этих j
и поместите ее в i
-й элемент x
.
в псевдо это должно выглядеть так:
for i = 1:N
for j = 1:N
if( s[i][j] != 0)
x[i] += s[ A[i,j] ]
как я могу сделать это в matlab наиболее эффективным способом?