How do I replace "for" loops by matrix multiplication? I am getting confused because of 4 "for" loops. Any suggestions?
1 次查看(过去 30 天)
显示 更早的评论
Hello, the code is as follows.
value = zeros();
E2 = zeros();
dxdy = 1;
x1=1;y1=1;u1=1;v1=1;
for u = -1:1:1
for v = -1:1:1
for x = -1:1:1
for y = -1:1:1
value(x1,y1) = input_data(x1,y1)*exp( ( -1i*k*(((u-x)^2) + (v-y)^2)) / (2*0.2))*(dxdy);
y1 = y1+1;
end
x1 = x1+1;
y1 = 1;
end
S_rows = sum(value,2); %Adding components of matrix "value"
S_complete = sum(S_rows);
E2(u1,v1) = S_complete;
x1 = 1;
v1 = v1 + 1;
end
u1 = u1+1;
v1 = 1;
end
disp(E2)
4 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multidimensional Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!