I'm having a divide problem in matrices

1 Ansicht (letzte 30 Tage)
Muhendisleksi
Muhendisleksi am 7 Apr. 2017
Kommentiert: Muhendisleksi am 7 Apr. 2017
P =[ 1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1]
s =[0.6500
0.8000
1.0000
1.4000
1.5000
1.9500]
P=diag(eye(6)./s) % I'm getting an error here.
% This is the matrix I want to create.
P= [ 1.5385 0 0 0 0 0
0 1.2500 0 0 0 0
0 0 1.0000 0 0 0
0 0 0 0.7143 0 0
0 0 0 0 0.6667 0
0 0 0 0 0 0.5128]

Akzeptierte Antwort

KSSV
KSSV am 7 Apr. 2017
Bearbeitet: KSSV am 7 Apr. 2017
P=diag(ones(6,1)./s)
Or
P=diag(diag(P)./s)

Weitere Antworten (2)

Thorsten
Thorsten am 7 Apr. 2017
Bearbeitet: Thorsten am 7 Apr. 2017
P = diag(1./s);

Andrei Bobrov
Andrei Bobrov am 7 Apr. 2017
Bearbeitet: Andrei Bobrov am 7 Apr. 2017
P_out = P./s;
or just
P = eye(6)./s;
  1 Kommentar
Muhendisleksi
Muhendisleksi am 7 Apr. 2017
"Error using ./ Matrix dimensions must agree."
Gave the error

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by