How to loop half matrix
2 次查看(过去 30 天)
显示 更早的评论
for i=2:nhx-1
for j=2:nhy-1
Unew(i,j) = U(i,j)-dt*(P(i+1,j)-P(i-1,j))/(2*hx)...
+nu*dt*(1/(hx*hx)*(U(i+1,j)-2.*U(i,j)+U(i-1,j))...
+1/(hy*hy)*(U(i,j+1)-2.*U(i,j)+U(i,j-1)))...
-dt*U(i,j)/(hx)*(U(i,j)-U(i-1,j))...
-dt*V(i,j)/(2*hy)*(U(i,j+1)-U(i,j-1));
end
end
Hi, the Unew produce something like this "1 2 3 4 5 4 3 2 1" as an example. I would like to calculate just half of the j domain so that Unew will produce "1 2 3 4 5" and the following ''4 3 2 1" will just be reflected from "1 2 3 4" in order to shorten the running time.
0 个评论
采纳的回答
Jan
2021-5-15
for i = 2:nhx-1
for j = 2:(nhy + 1) / 2
Unew(i, j) = ...
Unew(i, nhy - j + 1) = Unew(i, j);
end
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!