matrix multiply by array xi=xj

1 Ansicht (letzte 30 Tage)
Nur Amalina
Nur Amalina am 12 Feb. 2020
Bearbeitet: Nur Amalina am 12 Feb. 2020
Hi, All!
say, i have a matrix:
eij= [0 1 0 1;1 0 1 1;0 1 0 1;1 1 1 0];
x1=1; x2=2; x3=3; x4=4;
how can i make array xj and xi for this function
for i=1:1:4 and j=1:1:4
xi = xj
Ai =
i hope the answer would be like this:
A1= 0(1 - 1) + 1(2 - 1) + 0(3 - 1) + 1(4 - 1)=4
A2= ...; A3=..., A4=...
i am trying to use repmat function but i am stuck. maybe anyone has better solution?

Akzeptierte Antwort

KSSV
KSSV am 12 Feb. 2020
Bearbeitet: KSSV am 12 Feb. 2020
e = [0 1 0 1;1 0 1 1;0 1 0 1;1 1 1 0];
x = [1 2 3 4] ;
A = zeros(size(e)) ;
for i = 1:4
for j = 1:4
A(i,j) = e(i,j)*(x(i)-x(j)) ;
end
end
A = sum(A,2)
  1 Kommentar
Nur Amalina
Nur Amalina am 12 Feb. 2020
Bearbeitet: Nur Amalina am 12 Feb. 2020
got it. thank you!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Bhaskar R
Bhaskar R am 12 Feb. 2020
x = 1:4;
eij= [0 1 0 1;1 0 1 1;0 1 0 1;1 1 1 0];
tmp =0;
for i = 1:4
for j = 1:4
tmp =tmp + eij(i, j)*(x(j)-x(i));
end
A(i) = tmp;
end

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by