How to interpret the amplitude of impulse() results

13 Ansichten (letzte 30 Tage)
HG
HG am 30 Apr. 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)

Akzeptierte Antwort

David Goodmanson
David Goodmanson am 30 Apr. 2024
Bearbeitet: David Goodmanson am 1 Mai 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

Weitere Antworten (1)

Paul
Paul am 30 Apr. 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.

Kategorien

Mehr zu Stability Analysis finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by