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.

回答(1 个)

Star Strider
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)))

类别

Help CenterFile Exchange 中查找有关 Multirate Signal Processing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by