I designed a digital filter using fdatool of matlab and obtained the filter coefficients from the tool.

The problem is that i designed a 4th order filter. This gave me 5 filter values

h[] = {0.1930,0.2035,0.2071,0.2035,0.1930}
x[k] = Discrete time input signal

Now on using the formula

Output = h[k]*x[n-k];

Output represents the final filtered value.Although the results are coming fine, but I am not able to find out how those coefficients are obtained by matlab and how mere multiplication(convolution) gives the final filtered response for any sample.

Any link or explanation will do. I wish to know the complete back-end working of filter coefficient calculation.

Please comment if i am unclear in my doubt somewhere.

Thanks :)

  • $\begingroup$ Which filter type is this (you had to specify one in fdatool)? $\endgroup$
    – Phonon
    Jan 26, 2012 at 19:11
  • $\begingroup$ Its a low pass filter designed using Least Square Algorithm $\endgroup$ Jan 29, 2012 at 1:29
  • $\begingroup$ Just to be clear here: multiplication and convolution are COMPLETELY different things, so your equation is technically wrong. Convolution would be something like k=1:FilterLength; y[n] = sum(h[k].*x[n-k]); $\endgroup$
    – Hilmar
    Jan 29, 2012 at 17:12
  • $\begingroup$ Sorry, I forgot to put the summation $\endgroup$ Jan 30, 2012 at 2:43

3 Answers 3


We can try a very short introduction:

  1. Every filter represents a Linear Time Invariant System (LTI)
  2. Every Linear Time Invariant System can be completely described by it's transfer function or it's impulse response. The two can be converted into each other by the Fourier Transform
  3. Filter coefficients are derived from impulse response or transfer function
  4. The exact nature of the filter coefficients depends on the algorithm (there are quite a few of those)
  5. In the case of the simplest algorithm, the direct convolution FIR (Finite Impulse Response) filter, the filter coefficients are simply the impulse response of the LTI system.
  6. In most other algorithms the relationship is much more complicated and text book study is indeed required.
  7. The whole subject of LTI systems, transfer functions, Fourier Transforms, amplitude responses, phase responses etc. is probably another text book worth of stuff

"The Scientist & Engineer's Guide To DSP" is an exceptional(imo) introductory read. It gives you all the concepts without overwhelming a beginner with all the math.


wow... that question is the subject of an entire university level course in discrete time signals and systems. In a nutshell, h is called the impulse response and is closely related (through a Fourier transform). It characterizes a system (e.g. a filter) in the time domain. In discrete time systems, this is a "sampled" form and the coefficients represent the samples for a "finite impulse response" or FIR filter. Here is a decent article on the topic, but frankly you need a textbook to get a thorough understanding.

  • $\begingroup$ Thanks. But it will be too good if you can suggest me the name of the book $\endgroup$
    – Prashant Singh
    Jan 26, 2012 at 18:23
  • $\begingroup$ I believe this is the book I learned from: amazon.com/Discrete-Time-Signal-Processing-2nd-Prentice-Hall/dp/… $\endgroup$
    – vicatcu
    Jan 26, 2012 at 19:08
  • 3
    $\begingroup$ A much better (and more practical) book for beginners (IMNVHO) is Richard Lyons' Understanding DSP $\endgroup$
    – Paul R
    Jan 26, 2012 at 23:02
  • $\begingroup$ Understanding_DSP - seconded! $\endgroup$ Jan 27, 2012 at 16:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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