Cycle counter with reset
4 次查看(过去 30 天)
显示 更早的评论
I apologize for not having developed any code for this part, because I have no idea how to do it. So, I'm going to work with the block diagram and what I've created so far.
I can't think of a way to do this:
Basically, when p_fix is found it is to check if PE>p_fix every 5 cycles repeatedly until IC occurs. If PE>p_fix is not respected during these 5 cycles, it is to evaluate 5 cycles again and again....
What has been programmed so far:
for n = 1:size(t,1)
if n>=4
X = [Ia(n-1,1) Ia(n-2,1) ; Ia(n-2,1) Ia(n-3,1)];
future = [Ia(n,1) ; Ia(n-1,1)];
C = X\future;
Ia_future(n,1) = C(1,1)*Ia(n,1)+C(2,1)*Ia(n-1,1);
PE(n,1)=Ia(n,1)+Ia_future(n,1);
p(n,1) = (1+0.2)*max(PE);
if PE(n,1)>p(n,1)
p_fix = p(n,1);
end
end
end
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/835470/image.jpeg)
0 个评论
采纳的回答
Sargondjani
2021-12-16
you can use the function mod. For example:
if mod(n,5) == 0
or variants thereof.
2 个评论
Sargondjani
2021-12-18
Yes, think that's what you need. But my advice is to always check if an algoirthm does what you expect.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!