How to add to index in for loop?
17 次查看(过去 30 天)
显示 更早的评论
I am converting Python to Matlab. Here is Python code.
- collocation points
xc=np.zeros((numPanels,1))
yc=np.zeros((numPanels,1))
for i in range(numPanels):
xc[i]=(xp[i]+xp[i+1])/2
yc[i]=(yp[i]+yp[i+1])/2
Here is my Matlab code...
% collection of points xc = zeros(numPanels, 1);
yc = zeros(numPanels, 1);
for k = numPanels
xc(k) = (xp(k) + xp(k+1))/2
yc(k) = (yp(k) + yp(k+1))/2
end
xp and yp are arrays. I am trying to add 1 to the second index of xp and yp, where it says xp(k+1) and yp(k+1). Would I need to make another for loop for the indexing that is being added to 1?
0 个评论
采纳的回答
KSSV
2017-10-20
编辑:Stephen23
2017-10-22
xc = zeros(numPanels, 1);
yc = zeros(numPanels, 1);
for k = 1:numPanels-1
xc(k) = (xp(k) + xp(k+1))/2
yc(k) = (yp(k) + yp(k+1))/2
end
You are in MATLAB..you can avoid loops here.
xc = (xp(1:end-1)+xp(2:end))/2 ;
yc = (yp(1:end-1)+yp(2:end))/2 ;
But the problem is size of xc and yc will be one less then xp and yp.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Call Python from MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!