diagonal matrix with ones
145 views (last 30 days)
Show older comments
Hello I am trying to do a diagonal inferior matrix with a diagonal of ones but my diagonal have differentes valors. How do i do a matrix with diagonal of ones? Here is my code:
if true
% code
a=[6,9,7;6,2,0;1,8,3]
a=tril(a)
end
1 Comment
Daniel Shub
on 8 Mar 2013
What would be really helpful is if in addition to your example input you could tell us what you want the output to be.
Answers (7)
Sean de Wolski
on 8 Mar 2013
Edited: Sean de Wolski
on 8 Mar 2013
eye(5)
?
more per clarification:
a = tril(magic(3));
a(logical(eye(size(a,1)))) = 1
0 Comments
Leah
on 8 Mar 2013
a(eye(3))=1;
like that?
3 Comments
Sean de Wolski
on 8 Mar 2013
I'm sure your friendly sales rep would be happy to set you up with a trial :) !
Miroslav Balda
on 9 Mar 2013
Your last comment explained how to construct the resulting matrix. You see, how important it is to precisely formulate your question.
Anew = diag(1./diag(A))'*tril(A)
0 Comments
Miroslav Balda
on 9 Mar 2013
There is even simpler solutionof your problem:
Anew = diag(diag(A))\tril(A)
0 Comments
See Also
Categories
Find more on Operating on Diagonal Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!