Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Say I have a transfer function, for example:


How can I compute the impulse response?

(This is just an example, the important thing is that it is in closed symbolic form!)

If I understand correctly, if I could just rewrite $H(z)$ as some polynomial in $z^-1$ (by using a Taylor expansion), I could just read off the coefficients.

But is there another way?

share|improve this question

Your filter is the all-poles IIR, this simplifies things a bit. Normally you can write transfer function in following form:

$H(z)=\dfrac{\sum_{i=0}^{P}b_{i}z^{-i}}{\sum_{j=0}^{Q}a_{j}z^{-j}} $

Going back to the discrete time domain you will get:

$y[n] =\dfrac{1}{a_0}\left( \sum_{i=0}^{P}b_ix[n-i]-\sum_{j=1}^{Q}a_jy[n-j]\right)$

Therefore in your case it is:


Calculation of particular values can be done by feeding Kronecker delta to your system ([1 0 0 0 0 0 0 ...] signal). Basically you will observe that something is happening every 30 samples ;) You can easily generate the plot in MATLAB/Octave, just remember that your filter has following coefficients:

a=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1]

By calling impz(b,a) function you will get similar plot (first 100 samples): enter image description here

share|improve this answer

If your question is actually about implementing this transfer function, then you don't want to use its impulse response. Simply implement the difference equation correctly given in jolek's answer:

$$y[n]= x[n] - 0.1y[n-30],\quad y[-30]=y[-29]=\ldots=y[-1]=0\tag{1}$$

Only FIR filters are usually implemented directly using their (finite) impulse response. IIR filters are implemented by recursions, as given by (1).

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.