How to find the decay rate of a decaying signal ?
14 次查看(过去 30 天)
显示 更早的评论
I have a sinusoidal sognal which decays exponentially in time. I would like to find the decay rate of the signal.
0 个评论
回答(1 个)
Star Strider
2016-5-6
If it’s a simple exponential, this works:
t = linspace(0, 1, 250);
y = exp(-2*t) .* sin(50*pi*t);
env = abs(hilbert(y)); % Calculate Envelope
b = polyfit(t, log(env), 1); % Linear Regresson On Log-Transformed Data
figure(1)
plot(t, y)
hold on
plot(t, env, '-r')
hold off
grid
text(0.5, 0.75, sprintf('Decay Rate = %.3f', b(1)))
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multirate Signal Processing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!