loop to create the new matrix which contains the kron product

2 ビュー (過去 30 日間)
Kantosa
Kantosa 2013 年 12 月 6 日
コメント済み: sixwwwwww 2013 年 12 月 9 日
Hi,
So I have created a 3*3 matrix for A and B as shown below
A=round(rand(3,3)*10-5)
B=round(rand(3,3)*20-10)
now the question has ask me to use the nested loop to create the new matrix which contains the Kronecker product K=A*B
for i=1:3
for ii=1:3
K=A(i,ii)*B
end
end
I've attempted to do this by creating this nested loop, it generates 9 answers for K and I don't really know how to combine these answers into one matrix of 9*9. I am not sure if this method is right. It would be great if anyone can help me with this.
Thank you in advance :)

採用された回答

Roger Stafford
Roger Stafford 2013 年 12 月 6 日
K = zeros(3*3,3*3);
for i=1:3
for ii=1:3
K(3*i-2:3*i,3*ii-2:3*ii) = A(i,ii)*B;
end
end

その他の回答 (1 件)

sixwwwwww
sixwwwwww 2013 年 12 月 6 日
編集済み: sixwwwwww 2013 年 12 月 8 日
you can do it as follows:
A = round(rand(3,3)*10-5);
B = round(rand(3,3)*20-10);
for i = 1:size(A, 1)
for j = 1:size(A, 2)
AB{i, j} = A(i, j) * B;
end
end
AB = cell2mat(AB);
disp(AB)
Good luck!
  2 件のコメント
Kantosa
Kantosa 2013 年 12 月 9 日
Thank you :)
sixwwwwww
sixwwwwww 2013 年 12 月 9 日
you are welcome

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by