1
$\begingroup$

Let's assume that there are two convolutions:

$y_1 = (h_2[n]\cdot x[n])*(\bar{h_1}[n]\cdot\bar{x}[n])$

$y_2 = (h_3[n]\cdot x[n])*(\bar{h_2}[n]\cdot\bar{x}[n])$

where "$\bar{x}$" is complex conjugate, $\cdot$ is element-by-element multiplication, and $*$ is linear convolution, that is $(f*g)[n]=\sum_mf[m]g[n-m]$.

I am looking to simplify $y = y_1+y_2$.

It would not be difficult to show that $$y\neq ((h_2[n]+h_3[n])\cdot x[n])*((\bar{h_1}[n]+\bar{h_2}[n])\cdot\bar{x}[n])$$ But is there any other way to algebraically simplify $y$?

This can also be seen as the sum of two products $Y_1$ and $Y_2$, (the FFTs), where in each FFT there are two convolutions:

$Y_1 = (H_2*X)\cdot(\tilde{H_1}*\tilde{X})$

$Y_2 = (H_3*X)\cdot(\tilde{H_2}*\tilde{X})$

$\endgroup$

1 Answer 1

0
$\begingroup$

Here is the simplest approach I could think of:

$$x_2[n]= h_2[n]x[n]$$

$$\bar{x_2}[n] = \bar{h_2}[n]\bar{x}[n]$$

Thus we eliminate one product as we can get $\bar{x_2}[n]$ from $x_2[n]$. This leaves two more products before going to the frequency domain:

$$\bar{x}_1[n]= \bar{h}_1[n]\bar{x}[n]$$

$$x_3[n]=h_3[n]x[n]$$

With the three products use the FFT to compute the convolution in the frequency domain (zero pad to twice the length if a linear convolution result is desired):

$$y_1+y_2 = \text{ifft}(X_2[k]\bar{X_1}[N-k]+X_3[k]\bar{X_2}[N-k])$$

So in summary I simplified the operations by using the same results whereever possible if already computed, and doing all convolution operations as products in the frequency domain. Given $x_1[n]$, $x_2[n]$ and $x_3[n]$ are completely independent given no relationship between complex $h_1[n]$, $h_2[n]$ and $h_3[n]$, I do not see the opportunity for any further algebraic simplifications.

$\endgroup$
1
  • $\begingroup$ accepting. It is already known though. $\endgroup$
    – user67236
    Apr 11 at 7:46

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.