I've got following problem:
assume you've this continous system 1st order:
$$ H(s) = \frac{1}{1+s} $$
s = tf('s');
sys = 1/(1+s);
I'm going to discretize this system via impulse invariant transformation and plot the results.
sysD = c2d(sys,1e-3,'impulse');
impulse(sys);
hold all;
impulse(sysD);
So this seems to work.
If I try to create the impulse response for 7 seconds manually I use:
imp = zeros(1,7*1e3);
imp(1) = 1;
t = 0:1e-3:7-1e-3;
y = lsim(sys,imp,t);
plot(t,y)
Unfortunately this is not the response I expected. The gain seems to be scaled by the samplerate 1e3.
So the question is: What does impulse do since this response should be correct. lsim uses the filter command and simply passes the nominator and denominator to filter I think. Is the dirac impulse (or kronecker delta) wrong? Must it be scaled by the samplerate?
I discovered the whole thing, because I wanted to design a very simple digital filter. I knew the responses of time continuous systems, so I thought it would be easy to discretize the transfer function and use the coefficients of the digital transfer function that can be used by filter or in a dsp application.
What is wrong?
Thank you very much!