MATLAB: failed creating a diagonal matrix

3 views (last 30 days)
Dastageer Khan
Dastageer Khan on 11 Nov 2021
Edited: James Tursa on 11 Nov 2021
I have to make a diagonal matrix using diag command in Matlab, the numbers of the main diagonal are 1,2 and 3 . I have tried typing this code:
x=[1 2 3]; matriz=diag(x)
matriz =
1 2 3
but there is not the diagonal 3x3 matriz, please, could you help me solving this problem? Thanks! PS. As far as I'm concerned, it is supposed to show this:
B=[1 0 0;0 2 0;0 0 3]
B =
1 0 0
0 2 0
0 0 3

Answers (1)

James Tursa
James Tursa on 11 Nov 2021
Edited: James Tursa on 11 Nov 2021
You probably have inadvertently created a variable named 'diag' in your workspace, and hence diag(x) is simply indexing into this variable. Clear that variable from your workspace and use a different name in the future. To confirm that this is the problem you can type the following:
which diag

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!