How summation of two matrix so that one element of A matrix summed with B matrix and save in M(1,1)?

1 次查看(过去 30 天)
Hi every one.
I want to make summation of two A and B matrices so that one element summed with all elements of B matrix and save in M matrix.
for example for two 3*3 A and B matrix,
I wrote some codes for two 2*2 A and B matrices, and they worked,but I couldn't expand them for two N*N A and B matrices. help me?!!
Codes:
clc
clear all
close all
n=4;
m=2;
A=[1 2; 4 5];
B=[3 8; 6 9];
M=ones(n,n);
M1=zeros(m,m);
M2=zeros(m,m);
M3=zeros(m,m);
M4=zeros(m,m);
for i=1:m
for j=1:m
M1(i,j)=A(1,1)+B(i,j);
end
end
for i=1:m
for j=1:m
M2(i,j)=A(1,2)+B(i,j);
end
end
for i=1:m
for j=1:m
M3(i,j)=A(2,1)+B(i,j);
end
end
for i=1:m
for j=1:m
M4(i,j)=A(2,2)+B(i,j);
end
end
for i=1:m
for j=1:m
M(i,j)=M1(i,j);
end
end
for i=1:m
for j=m+1:n
M(i,j)=M2(i,j-m);
end
end
for i=m+1:n
for j=1:m
M(i,j)=M3(i-m,j);
end
end
for i=m+1:n
for j=m+1:n
M(i,j)=M4(i-m,j-m);
end
end

采纳的回答

Jan
Jan 2016-1-1
What about:
reshape(bsxfun(@plus, reshape(B, [m,1,m,1]), reshape(A, [1,m,1,m])), n, n)

更多回答(1 个)

Andrei Bobrov
Andrei Bobrov 2016-1-1
编辑:Andrei Bobrov 2016-1-1
M = kron(ones(size(A)),B)+kron(A,ones(size(B)));

类别

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