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!

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by