diagonal matrix with ones

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 个评论

What would be really helpful is if in addition to your example input you could tell us what you want the output to be.

请先登录,再进行评论。

回答(7 个)

eye(5)
?
more per clarification:
a = tril(magic(3));
a(logical(eye(size(a,1)))) = 1
Cristian
Cristian 2013-3-8

0 个投票

Hello Thanks for the answers but the firs answer just create a matriz of 5x5 with diagonal of ones and I need my matrix "a" but with diagonal of ones. The second answer has an error say: ??? Undefined function or variable 'n'.
Error in ==> Untitled2 at 3 [ii,jj]=ind2sub(size(a),1:n*m)
What should I do?
Thanks
a(eye(3))=1;
like that?

3 个评论

You need the logical() around eye() or it will error.
thanks Sean, I'm waiting on my license at my new job :)
I'm sure your friendly sales rep would be happy to set you up with a trial :) !

请先登录,再进行评论。

Cristian
Cristian 2013-3-8

0 个投票

Well thaks Azzi Abdelmalek but now with your code matlab give me a triangular matrix with ones down of the diagonal and I need my diagonal just of ones. I could divide the last coefficent each row, and so have my diagonal with ones but I dont know manipulate rows and how I do that. Example I want that my triangular matrix: A=[6,9,7;6,2,0;1,8,3] A=tril(A)
A=[6,0,0;6,2,0;1,8,3]---->A=[1,0,0;3,1,0;1/3,8/3,1] This I want to do, having any matrix.

2 个评论

See my more section. Where'd the 1/3 and the 8/3 come from?
Cristian
Cristian 2013-3-8
编辑:Cristian 2013-3-8
That comes of divide by 3 all the third row to have my last coefficent with 1

请先登录,再进行评论。

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)
There is even simpler solutionof your problem:
Anew = diag(diag(A))\tril(A)

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

提问:

2013-3-8

Community Treasure Hunt

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

Start Hunting!

Translated by