Filter löschen
Filter löschen

How to find the decay rate of a decaying signal ?

14 Ansichten (letzte 30 Tage)
Abin Krishnan
Abin Krishnan am 6 Mai 2016
Beantwortet: Star Strider am 6 Mai 2016
I have a sinusoidal sognal which decays exponentially in time. I would like to find the decay rate of the signal.

Antworten (1)

Star Strider
Star Strider am 6 Mai 2016
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)))

Community Treasure Hunt

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

Start Hunting!

Translated by