What does a complex matched filter mean? . A complex bandpass filter can be formed by multiplying a low pass filter by exp(jwt) getting an analytic filter (one sided in the frequency domain) which is complex, the filter will have complex coefficients but it is implemented as two filters with real coefficients (coefficients multiplied by cosines for the real and the same coefficients multiplied bu sines for the imaginary) but how about the matched filter which is supposed to be a low pass filter centered around DC? how does that one look like?


3 Answers 3


A matched filter is matched to the received pulse shape. If the matched filter is implemented in the baseband, i.e., after down-conversion, the received pulse shape can be complex-valued, e.g., if the channel frequency response is not symmetric with respect to the carrier frequency. In that case the matched filter is a complex-valued low-pass filter matched to the received (complex low-pass) pulse shape. The frequency response of such a filter is centered around DC but it is not symmetric with respect to DC.

  • $\begingroup$ Thank you, but then usually or perhaps generally one designs a matched filter at the receiver assuming an AWGN channel, and for channel correction one uses an equalizer after channel estimation, right? $\endgroup$ Sep 11, 2018 at 17:04
  • $\begingroup$ @HatemTawfik-- perhaps ask that as a separate question, since it might be too complicated a question to do justice in a comment $\endgroup$
    – Robert L.
    Sep 11, 2018 at 17:58
  • $\begingroup$ @HatemTawfik: Yes, a matched filter taking the channel into account is often not possible, because the channel is unknown and/or time-varying. In practice you might have an (adaptive) fractionally-spaced equalizer that also performs the function of the matched filter. $\endgroup$
    – Matt L.
    Sep 11, 2018 at 18:54

"Matched filter" or "matched filtering" is more of a concept than a specific object. It answers the question: given a template $t$, and a signal $x$, is there a filter $ \hat{h}$ that minimizes some nice function $f$ (usually a norm or a distance):

$$ \hat{h} = \arg \min_h f(s-h\ast t)\,.$$

In the classical case, $f$ is the squared $L_2$ norm, and the problem becomes:

$$ \hat{h} = \arg \min_h |s-h\ast t|^2\,.$$

Then, allowing $h$ to be complex-valued will always yield a smaller (or equal) minimum than when $h$ is restricted to real values. An analogy is: find the minimum of the function $|x^2+4|^2$. If $x$ is real, the minimum is $4$ ($x=0$), if $x$ is complex, it is $0$ ($x=\pm2i$).

More generally, finding an argument to minimize a function (more general than a squared norm) depends on the field of definition, more than on the variables themselves. If for some reason $x$ or $t$ is complex (see How to interpret output of matched filter with complex input?), like with a time-Fourier or a complex transformation, or the cost function allows it, the output filter can be complex, and the filter is not required to be analytic in general.


Adding this to the other good answers for the "how does one look like" part of the question. This will show the implementation of a general complex FIR filter specifically.

First we consider the complex multiplier implementation and from their the development to the filter itself will be clearer:

Complex Multiplier

In the path to implementation, consider the following:

$$(X_I + j X_Q)(Y_I + j Y_Q)$$ $$=X_I Y_I + j X_I Y_Q + j X_Q Y_I + j^2 X_Q Y_Q$$ $$=(X_I Y_I - X_Q Y_Q) + j(X_I Y_Q + X_Q Y_I)$$

So a full complex multiplier in implementation requires four (real) multipliers and two adders.

Multiplier implementation

For applying this to an FIR Filter implementation (meaning a full complex FIR filter) see the graphics below:

2 tap FIR implementation slide 1

And below is the implementation with $x=x_I + j x_Q$ and $h[0] = h_I[0]+j h_Q[0]$, etc...

2 tap FIR implementation slide 2

And as an additional example see below:

4 tap FIR example slide 1

4 tap FIR example slide 2


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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