Find the time when a parabolic function starts to decrease.

1 回表示 (過去 30 日間)
Roger L
Roger L 2016 年 10 月 2 日
コメント済み: Roger L 2016 年 10 月 3 日
Hello,
My task is to write a script that will find the time when a parabolic function (height, a function of time) reaches its max.
clear all
t=0;
for time=0:0.5:30;
if height(time)>=height(time-0.5)
t=t+0.5;
end
end
disp(t)
height(time-0.5) wouldn't execute so here is my second code
clear all
t=0;
for time=0:0.5:30;
e=0.5:0.5:29;
time2=[0 e];
while height(time)>height(time2)
t=t+0.5;
end
end
disp(t)
this code does not work either. How can i utilize max( ) function in here? And what is the best way to do this kind of loop?
Thanks!

採用された回答

Walter Roberson
Walter Roberson 2016 年 10 月 2 日
What is height here? If it is a vector then you cannot use height(time) you can only use height(SomePositiveIntegerIndex) . But once you have found the appropriate positive integer index, you can use it to figure out what the corresponding time is.
  3 件のコメント
Walter Roberson
Walter Roberson 2016 年 10 月 2 日
[maxheight, idx] = max(height(time))
where time is a vector. Then time(idx)
Roger L
Roger L 2016 年 10 月 3 日
thanks for that command, I haven't used it before. It gave me an index on the time vector corresponding to the seconds that I needed.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by