write this following matrix
    2 views (last 30 days)
  
       Show older comments
    
    Zeynep Toprak
 on 7 May 2020
  
    
    
    
    
    Commented: Gokberk Yildirim
 on 16 May 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 Comments
  Gokberk Yildirim
 on 16 May 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)
Accepted Answer
  John D'Errico
      
      
 on 7 May 2020
        
      Edited: John D'Errico
      
      
 on 7 May 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.
More Answers (0)
See Also
Categories
				Find more on Matrices and Arrays 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!


