Filter löschen
Filter löschen

write this following matrix

1 Ansicht (letzte 30 Tage)
Zeynep Toprak
Zeynep Toprak am 7 Mai 2020
How can I write the following matrix
I define n=100
And I generate the following code
D= toeplitz ([0 1 zeros(1, n-2) -1]/ (2*h))
but I get wrong matrix. How can I correct it?
  6 Kommentare
Zeynep Toprak
Zeynep Toprak am 7 Mai 2020
okay, thanks for helping, but it is very difficult. Thanks a lot again.
Gokberk Yildirim
Gokberk Yildirim am 16 Mai 2020
Actually, it can be done with this Zeynep.
c = [0 -1 zeros(1,n-3)];
r = [0 1 zeros(1,n-3)];
D = toeplitz(c,r) / (2*h)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

John D'Errico
John D'Errico am 7 Mai 2020
Bearbeitet: John D'Errico am 7 Mai 2020
Try this:
n = 100;
D = (diag(ones(n-1,1),1) - diag(ones(n-1,1),-1))/(2*h);
You can also use spdiags. or sparse, or many other tools. But diag as I did it above is about the simplest way.
  1 Kommentar
Zeynep Toprak
Zeynep Toprak am 7 Mai 2020
Many thanks for your great help!! :) I use this matrix in this question my question is here. But I get an error message. Please can you take a look at it? (This is not assignment or something else like this. On these lockdown days, I try to learn matlab by myself, and I have no one to ask or to learn) Many thanks again.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by