pulsewidth not working with higher sampling rates?
7 次查看(过去 30 天)
显示 更早的评论
I have a waveform like this:
And I would like to know the width of this spike at half height, a nice function to do so is pulsewidth (thank you Daniel M!!). Since the waveform is originally sampled at 200 kHz, I tried running pulsewidth using this code:
figure
pulsewidth(x,2e5);
This is the output:
There is no pulse width identified.
Now I resample the waveform at 50 kHz and run pulsewidth again using the following code:
x = resample(x,5e4,2e5);
figure
pulsewidth(x,5e4);
And here is my pulsewidth clearly identified:
Anyone know why this would not work at 200 kHz; but work at 50 kHz?
BTW I've also tried using a time-stamped vector for input instead Fs; but get the same exact output. Also tried adding the statelevels for max and min values on this trace.
Thank you in advance!!
Eric
3 个评论
Daniel M
2019-11-6
Yes, probably because of the edge effects. Try to deal with those. My proposed solution also seems like it would be robust to the edge effects, but I can't test that.
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!