Borrar filtros
Borrar filtros

How to interpret the amplitude of impulse() results

18 visualizaciones (últimos 30 días)
HG
HG el 30 de Abr. de 2024
Editada: David Goodmanson el 1 de Mayo de 2024
Hi,
For the given transfer function, if I want to use the impulse response to conv any input signals to the system (a step function for example), the amplitude of output will be wrong.
In general, how can I use the impulse response to realize the sample functionality as lsim()?
Thanks in advance!
/HG
% RC low pass filter
fco = 0.7e9;
wco = fco * 2 * pi;
tau = 1 / wco;
num = [1];
den = [1/wco, 1];
% check tf model
figure
sys = tf(num, den)
sys = 1 --------------- 2.274e-10 s + 1 Continuous-time transfer function.
bode(sys)
figure
step(sys)
figure
impulse(sys)

Respuesta aceptada

David Goodmanson
David Goodmanson el 30 de Abr. de 2024
Editada: David Goodmanson el 1 de Mayo de 2024
Hi HG,
the large ampltude of the impulse response is correct. (has the original question been edited?) This has to be the case since the step response is the time integral of the impulse response. The step response = 1 for large t, Since the width of the impulse response is tiny, its amplitude must be large. Just eyeballing the impulse response 3x10^9 * .4x10^(-9) = 1.2, which works.
impulse response:
let a = 2.274e-10 let impulse response = (1/a) e^(-t/a) % very large amplitude
Laplace transform to check:
Int{0,inf} (1/a) e^(-t/a)*e^(-st) dt = (1/a) * 1/(s+1/a) = 1/(a*s +1) % ok
For the step response, integration in time gives an extra factor of 1/s in the s domain.
let step response = Int{0,t} (1/a) e^(-tau/a) dtau = 1 - e^(-t/a)
Laplace transform to check:
Int{0,inf} (1-e^(-t/a))*e^(-st) dt = 1/s - 1/(s+1/a) = (1/a)/(s*(s+1/a))
= 1/(s*(a*s +1)) % ok

Más respuestas (1)

Paul
Paul el 30 de Abr. de 2024
It sounds like the code needs to account for the difference between the convolution sum, as computed by conv, and the convolution integral, which is what really applies for continuous-time systems. Would be easier to help if you showed the complete code where the amplitude of the output is wrong.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by