write this following matrix
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Zeynep Toprak
am 7 Mai 2020
Kommentiert: Gokberk Yildirim
am 16 Mai 2020
How can I write the following matrix
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/291292/image.png)
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
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)
Akzeptierte Antwort
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.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!