Defining a time varying function

4 ビュー (過去 30 日間)
Deepa Maheshvare
Deepa Maheshvare 2020 年 2 月 25 日
コメント済み: Adam 2020 年 2 月 26 日
I'd like to create a function that will output a value of a (e.g. a = 10) for time < t0 and value equal to b at time > t0.
Any suggestions on how to create such a function in MATLAB will be helpful

回答 (1 件)

Adam
Adam 2020 年 2 月 25 日
編集済み: Adam 2020 年 2 月 25 日
if t < t0
result = a;
else
result = b;
end
gives what you want for this simple case, provided t0, a, b and t are all passed into the function or defined at the top of the function. If it where more complicated I might suggest other methods but a simple binary threshold output works fine with an if statement.
  2 件のコメント
Deepa Maheshvare
Deepa Maheshvare 2020 年 2 月 26 日
Many thanks for the answer. Binary threshold output works fine but it creates a discontinuity at t = t0. Could you please suggest continuous functions ? For instance when a > b, I'd like to create a function that will gradually decrease from a to b.
Adam
Adam 2020 年 2 月 26 日
You'd need to rephrase the question to more precisely ask what you want in that case. To fulfill what you asked in the question then including a reasult of mean( [a, b] ) for t == t0 would be the only approach that is slightly less discontinuous.

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

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

タグ

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by