How can we break a repetitive data?

1 回表示 (過去 30 日間)
MNRNI
MNRNI 2020 年 12 月 11 日
コメント済み: Image Analyst 2020 年 12 月 12 日
Let's say we apply current in a repetitive way:
I=-10 for 10 sec
I=0 for 180 sec
I=-5 for 30 sec
I=0 for 180 sec
and repeat it.
Then we get a voltage.
How can we separate this voltage figure into single pulses?
Each pulse is I=-10 followed by I=0.

回答 (1 件)

Image Analyst
Image Analyst 2020 年 12 月 11 日
Just do like this (example for the first range):
indexesToExtract = (t >= -10) & (t < 10);
thisPulse1 = completeVoltageSignal(indexesToExtract);
indexesToExtract = (t >= 0) & (t < 180);
thisPulse2 = completeVoltageSignal(indexesToExtract);
indexesToExtract = (t >= -5) & (t < 30);
thisPulse3 = completeVoltageSignal(indexesToExtract);
indexesToExtract = (t >= 0) & (t < 180);
thisPulse4 = completeVoltageSignal(indexesToExtract);
Repeat for any other time ranges.
  2 件のコメント
MNRNI
MNRNI 2020 年 12 月 11 日
Thanks.
What if we have random time values?
for example:
I=-10 for t1 sec
I=0 for t2 sec
I=-5 for t3 sec
I=0 for t4 sec
Image Analyst
Image Analyst 2020 年 12 月 12 日
Maybe try findchangepts().
Or you could try to get the moving mean with movmean() and then look for points above and below the mean.
If you need more help, attach some data so that we have something to work with.

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

カテゴリ

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

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by