How to create a circulant matrix column wise?
Show older comments
I want to create M x L circulant matrix column wise,where M=16 and L=20.
Accepted Answer
More Answers (2)
KSSV
on 3 Nov 2020
0 votes
You can refer this fileexchange: https://in.mathworks.com/matlabcentral/fileexchange/22858-circulant-matrix
2 Comments
ANJANA K P
on 3 Nov 2020
Read about Circshift.
m = 16 ; n = 20 ;
r = rand(m,1) ;
iwant = zeros(m,n) ;
iwant(:,1) = r ;
for i = 2:n
iwant(:,i) = circshift(iwant(:,i-1),1) ;
end
Bruno Luong
on 3 Nov 2020
col = rand(16,1) % your 1-column vector
A = toeplitz(col,col(mod((1:20)-1,end)+1))
Categories
Find more on Creating and Concatenating Matrices 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!