i need to create mn*mn block circulant matrix ie m blocks of n*n matrices. please help me

 채택된 답변

Akira Agata
Akira Agata 2020년 4월 14일

0 개 추천

How about the following?
% For simple example
n = 3;
m = 2;
% Create n-by-n circulant matrix
B_block = gallery('circul',1:n)';
% Create nm-by-nm block circulant matrix
B_all = repmat(B_block,m);

댓글 수: 2

sai prudhvi
sai prudhvi 2020년 4월 14일
i accept but if matrix elements is complex numbers then how to create the matrix.
I believe the same approach should work, like:
% For simple example
n = 3;
m = 2;
% Create n-by-n complex circulant matrix
Re = gallery('circul',1:n)';
Im = gallery('circul',1:n)';
B_block = Re + 1i*Im;
% Create nm-by-nm block circulant matrix
B_all = repmat(B_block,m);

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Matrix Decomposition에 대해 자세히 알아보기

태그

질문:

2020년 4월 14일

댓글:

2020년 4월 15일

Community Treasure Hunt

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

Start Hunting!

Translated by