DSPRelated.com
Forums

Theory for convolution

Started by Unknown July 17, 2017
On Monday, July 17, 2017 at 6:27:46 PM UTC-7, radam...@gmail.com wrote:

(snip)

> The point I'm trying to make is that the width of the > multiplying rect pulse can vary continuously over some > range and as long as it passes the same set of impulses, > the FT of the result willl not change.
When discussing sampled signals representing continuous samples, it is implied that the continuous signals are band limited, and appropriately filtered. Yes, in either case, the Fourier transform is unchanged by a window that doesn't change the sampled signal.
> But if I use the convolution -in-the-frequency domain > rule, I convolve with a sinc function, and depending > on the width of the rect pulse (again, varied continuously > over some range that passes the same set of impulses), > I will have Sinc functions of varying "spread". So how > do I explain using the convolution rule only that I get > a FT result that does not vary as the rect width varies?
If you take the FT of the unfiltered series of delta functions, it is not band limited, and there will be Fourier components up to infinity. But you should only look at those components below half the sampling frequency, and if they are the same, consider the signals equal.
On 2017-07-17 16:03, radams2000@gmail.com wrote:
> Here's a mind-challenge with no solution as far as I know. Maybe someone here will have an idea. > Let's say I have a continuous discrete-time signal that is 5 seconds long with the Dirac impulses occurring once per second starting at 0. Now lets say that I multiply this signal by a rectangular pulse that starts at t=1/2 and ends at t=4.5, so the first and last sample are 0. There are 2 ways to compute the continuous Fourier transform of this , one is just to make a new time signal with first and last sample=0 and take the FT, and the other is to convolve the original spectrum (including the first and last impulses ) with the FT of the pulse (which will be a Sinc function with some phase delay). The second method is where things get weird, because in the time domain the pulse can start anywhere between 0+ epsilon and 1-epsilon, and end anywhere between 4+epsilon and 5-epsilon, and the time domain waveform will be the same (0 for the 1st and last impulse ), so obviously the FT result will be identical, but if you force yourself to use the frequency-domain convolution method, the width of the sinc signal will vary continually as you change the pulse width, and yet somehow you must get an identical convolution result for that entire range of sinc widths (since the time domain signal doesn't change). > Can anyone explain this without resorting to the time domain ?
Let's consider a simplified case, without loss of generality. Let's take 5 Dirac, one at x=0, two at x=+/-t and two at x=+/-2t. Let's consider a rect() with full width between 2t+a, with 0<a<t (I think this should be correct). Now, the Dirac are independent from each other, superimposition holds, so we can FT them separately. The one at x=0, will be something like k0*cos(0*w*f), that is k0. The two (we can pick two together) at x=+/-t will be k1*cos(w*f) (some constant may be missing). The last two will be k2*cos(2*w*f) (or the like). It is possible to filter, by convolution in the frequency domain, the 3 signals separately and then add them. This holds because everything here is linear. So, in order to get the result of the time domain, we'll have to demonstrate that the sync(), with variable "width", convolved with the first two signals will result in the same signals, while with the third one will be null (or zero). There are the following ways to solve this. One is to write down the integral of the convolution and solve it in the 3 cases. Paying attention to the fact that cos(x)=cos(-x). An other possible solution is to go back to the dual domain (time domain) and multiply. This will lead to the same result, by construction, we put in the hypothesis. Note that this second approach is quite common, exactly because computing the convolution of the sync() with something else might be, surprise, quite difficult. Unless major mistakes, I guess this should clarify the issue. bye, -- piergiorgio