How to interpret the amplitude of impulse() results

조회 수: 12 (최근 30일)
HG
HG 2024년 4월 30일
편집: David Goodmanson 2024년 5월 1일
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)

채택된 답변

David Goodmanson
David Goodmanson 2024년 4월 30일
편집: David Goodmanson 2024년 5월 1일
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

추가 답변 (1개)

Paul
Paul 2024년 4월 30일
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.

카테고리

Help CenterFile Exchange에서 Stability Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by