How to index with a changing index
1 view (last 30 days)
Show older comments
Hi, I would like to construct a matrix L of size nxn that looks like below:
L = [a,b,c,0,0,0,0,...
I'm trying to do this without the for loop.
i = 2:n-1;
L(:,i-1:i+1) = repmat([a,b,c],n,1);
However, this doesn't give what I want, and I was warned by the complier that i is a non-scalar operator.
Is there a way to fix this?
Thank you very much!
DGM on 8 Dec 2021
You can try something like this:
a = 1;
b = 2;
c = 3;
A = toeplitz([a 0 0 0 0 0 0],[a b c 0 0 0 0]);
A = A(1:end-2,:)
Find more on Matrix Indexing 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!