Math for Signal Processing






We cannot get very far with gnuradio projects without mastering the math behind signal processing. I am working on refreshing my 25 year old college EE training and find it is not too difficult. In fact, it is amazing what resources students today have with symbolic algebra, calculus and plotting software like Derive, etc. In 1979 we were still using punch cards!




Complex Mixing



One rule of thumb of old real signal mixing is that you get the sum and difference frequencies in the mixing product. That is, mixing f1 and f2 results in f1+f2 as well as f1-f2, as shown in line 11 below (see also this wikipedia article). The product in line 13 contains both sum (w0+w1) and difference (w0-w1).

However, interestingly, complex mixing produces only a sum, which is cleaner to work with as we don't have to worry about filtering out unwanted products. Using the popular natural log (ê) based exponentials to represent complex sinusoidals as in line 4, we only have to add exponents to multiply the terms, resulting in line 7, which shows only the sum of the two signals w0 and w1. That the difference cancels out can be shown by expanding the exponential as in line's 5 and 6 and noticing that the difference terms, [cos(w0t - w1t) - cos(w0t - w1t)] and [sin(w1t - w0t) + sin(w0t - w1t)] drop out leaving line 8, which is equal to line 9. In these equations î is the imaginary unit, square root of -1. To get difference frequencies, complex signals allow us to add a negative frequency.