Generate matrices with non-zero submatrices

Hi,
I would like to generate matrices with non-zero submatrices, which have form like
A1 = [1 1 0 ... 0 0
1 1 0 ... 0 0
0 0 0 ... 0 0
...
0 0 0 ... 0 0
0 0 0 ... 0 0]
A2 = [0 0 0 ... 0 0
0 1 1 ... 0 0
0 1 1 ... 0 0
...
0 0 0 ... 0 0
0 0 0 ... 0 0]
...
and
An = [0 0 0 ... 0 0
0 0 0 ... 0 0
0 0 0 ... 0 0
...
0 0 0 ... 1 1
0 0 0 ... 1 1]
How can I generate the matrix Ak by MATLAB command?

 채택된 답변

Guillaume
Guillaume 2017년 7월 4일

1 개 추천

n = 10; %for example
A = arrayfun(@(k) blkdiag(zeros(k-1), ones(2), zeros(n-k)), 1:n, 'UniformOutput', false);
celldisp(A)
A{k} is the kth matrix.

댓글 수: 1

Marsge
Marsge 2017년 7월 4일
Thank @Guillaume very much! That's the stuff I need.

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

추가 답변 (0개)

카테고리

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

태그

질문:

2017년 7월 4일

댓글:

2017년 7월 4일

Community Treasure Hunt

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

Start Hunting!

Translated by