matlab 高人请回答

来源:百度知道 编辑:UC知道 时间:2024/05/09 16:15:29
请问能帮我把MATLAB中的这段程序变成点乘么,谢谢了,想了很多天的
for row=1:m
for column=1:n
for z=1:12
JIJGX(row,column,z)=sum(sum(sum(JIJ(1:21,1:21,1:12,z).*GX10(row:row+20,column:column+20,1:12))));
WIJGX(row,column,z)=sum(sum(sum(WIJ(1:21,1:21,1:12,z).*GX10(row:row+20,column:column+20,1:12))));
end
end
end
qq 67076353

我觉得一定要用循环, 可以简单一点用:

temp = JIJ(1:21,1:21,1:12,z).*GX10(row:row+20,column:column+20,1:12));

JIJGX(row, column, z) = sum(temp(:));

上面点乘的问题我可以用一种方式解决,但是该方法在求和部分又出现问题了,请问谁会将一个[m,n]大小的矩阵中每次取[21,21]大小的子矩阵块来求和呀(不用循环的话).谢谢了,顺便说一下,我是楼主的朋友,这个问题解决一样送分哦