index exceeds matrix dimensions
Info
This question is closed. Reopen it to edit or answer.
Show older comments
P=0.4;
T=0.5;
a=2;
for i=1:max_it
if x(i)>=0 && x(i)<P %(Error Here)
x(i+1)=x(i)/P;
end
if x(i)>=P && x(i)<=T
x(i+1)=(x(i)-T)/(P-T);
end
if x(i)>=T && x(i)<=1
x(i+1)=a*((x(i)-T)/1-T)*(1-(x(i)-T)/(1-T));
end
% if x(i)>=1-P && x(i)<1
% x(i+1)=(1-x(i))/P;
% end
G(i) =x(i);
end
Answers (2)
Walter Roberson
on 24 Dec 2019
0 votes
We do not know what you initialized x as.
You probably did not pre-allocate x; you are probably counting on it growing as you go. However notice that you only ever grow x conditionally: you stop growing x if you encounter an element that is negative or greater than 1.
deepak kumar
on 24 Dec 2019
Edited: Walter Roberson
on 24 Dec 2019
1 Comment
Walter Roberson
on 24 Dec 2019
The second x you generate is negative, and as I pointed out before, you stop growing x as soon as you find a negative value.
This question is closed.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!