Reply to thread

Re: FIR filters




Hi Michael,


We may be going off in slightly different directions so I'll try to  clarify. When I used the term Hilbert transform, which likely I should  not have, I was trying to account for the generation of the analytic  signal upon transforming back to the time domain, as the Hilbert  transform relates the real and imaginary parts of an analytic signal.  This has nothing to do with using the Hilbert transform to relate the  log magnitude and phase of a minimum phase system. I'll take another  crack at the recipe.


Start with the impulse response, let's call it h.


Take the DFT of h of size N and call it H.


Put the positive frequency values of H in one end of an array G of size M  where M > N (I've been using M = 8*N). The rest of G is filled with  0s. This has two effects when G gets transformed back: the signal is  upsampled by M/N (sinc interpolation) and the time domain result will be  an analytic signal since the negative frequency values in H were   set to 0. This second effect is the implicit "Hilbert transform".


For each frequency band{


    Multiply G with that band's Gaussian window.


    Take the IDFT of the product, which is a complex signal in the time domain.


    Plot the log magnitude.

}


I can send you the R code, for what it's worth, but you can probably code this up in Matlab in about 10 minutes.


Best,


--Frank