Is there any other more efficient way of writing this code?

2 次查看(过去 30 天)
for tt=1:100
for t = 1:1000;
y = a*y0+e+w-a*w0;
y0 = y; w0 = w;
end
B(:,tt) = y(:,1);
end
  1 个评论
Roger Stafford
Roger Stafford 2015-1-18
编辑:Roger Stafford 2015-1-18
Savvas, I suspect you have left out some of the code for these for-loops. As it stands, the code makes no sense (or at least it is extremely inefficient.) After the first inner-loop iteration the values of w and w0 are equal and unchanging and any further computation of the step "w0 = w" is a total waste of time. Also you do not reset y and w for each outer-loop (tt) iteration, which has a very suspicious look. Please give us a realistic piece of code or else give a clear verbal description of your problem.
{Note: Unless the value of 'a' is extremely close to 1, your sequence of y values will converge to an essentially constant value or else to infinity long before you reach t = 1000.)

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by