Plotting a peak envelope
显示 更早的评论
I have measured the swinging off of a resonant circuit with a oscilloscope. Now I'm trying to fit a peak envelope over this data. Therefore I've tried:
figure
plot(temp(:,1), smooth(temp(:,2),30))
hold on
plot(temp(:,1), smooth(abs(hilbert(temp(:,2))),190))
I still get a slightly oscillating function, instead of a constantly decreasing function. How can I improve the envelope function? Would really appreciate help. My solution is shown in the image. Cheers

P.s.: For the argument of smooth(x,y) I iteratively worked out optimal values
采纳的回答
更多回答(2 个)
Greg Dionne
2016-7-11
编辑:Greg Dionne
2016-7-12
If you have HILBERT then you have access to the Signal Processing Toolbox. If you have R2015b or later, try using ENVELOPE:
[d,s,r] = xlsread('F0002CH1.csv', 'E1:E2500')
%zoom in on decaying portion
envelope(d(580:end),500,'analytic')

2 个评论
Camill Trüeb
2016-7-12
Greg Dionne
2016-7-12
It should be in 16a.
cd ([matlabroot '/toolbox/signal/signal'])
edit envelope
Hopefully it'll be there.
类别
在 帮助中心 和 File Exchange 中查找有关 Descriptive Statistics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
