Clear Filters
Clear Filters

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

2 views (last 30 days)
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 Comment
Roger Stafford
Roger Stafford on 18 Jan 2015
Edited: Roger Stafford on 18 Jan 2015
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.)

Sign in to comment.

Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!