Re: removing phase shift - reversing the signal



On 31 Jul., 15:51, robert bristow-johnson <r...@xxxxxxxxxxxxxxxxxxxx>
wrote:
On Jul 31, 3:48 am, Andor <andor.bari...@xxxxxxxxx> wrote:





On 30 Jul., 00:57, robert bristow-johnson <r...@xxxxxxxxxxxxxxxxxxxx>
wrote:

On Jul 29, 3:57 pm, Andor <andor.bari...@xxxxxxxxx> wrote:

On 29 Jul., 18:53, robert bristow-johnson <r...@xxxxxxxxxxxxxxxxxxxx>
wrote:

On Jul 29, 3:58 am, Andor <andor.bari...@xxxxxxxxx> wrote:

DSP riddle:

Assume two rational transfer filters with impulse responses

g = [g1, g2, ... ]

and

h = [h1, h2, ...].

How to construct a rational transfer filter with impulse response

[g1 h1, g2 h2, ...}?

you've been using MATLAB too much.  you're counting from 1.

:-)

my thoughts, exactly.

You already know the answer?

well, i didn't know for sure if i was starting from the impulse
responses, h[] and g[] (which would have infinite length), or with the
numerator and denominator (or zeros and poles) of the rational
transfer functions.  if the latter, yeah, i would bust them into
additive terms (partial fraction expansion, in which the Heaviside
residue theorem is useful), then each term corresponds to an
exponential (possibly a complex exponential for complex poles) in the
time domain, they you have to do pairwise multiplication of the
exponentials in h[] against the exponentials in g[] giving you *new*
exponentials, then reverse the process (exponentials in impulse
response to partial fractions to rational transfer function).  
that's the only way i know.

I'm not quite sure if that works. Multiplication in time domain =
complex convolution in z-domain (are you proposing multiplication in
frequency domain?). And complex convolution = complex path integral,
which one can compute with the residue theorem.

i didn't mean to appeal to that (multiplication in time-domain means
convolution in the other).

g[n] and h[n] both come from finite order, rational transfer functions
G(z) and H(z).  that means, when you bust up G(z) and H(z) into
partial fractions, each g[n] and h[n] are sums of decaying
exponentials (perhaps with complex exponents, if the poles are complex
conjugate) times u[n] (the unit step function).  then when you
multiply g[n] to h[n], you get all sorts of cross-products that
themselves are also decaying exponentials.  those go back to a new
transfer function that is rational and higher order than G(z) and H
(z).  that's all i was thinking.

Ah ok.


sounds like a useful grad school problem, actually.  otherwise, i am
curious of the application.

Windowing for truncated IIR filters? :-)

that, i don't get.  the only "windowing of truncated IIR filters" that
i understand, are windowed with rectangular windows.  the impulse
response is a sum of decaying exponentials (possibly with complex
arguments) that cut off suddenly at the truncation point.

Consider the case of TIIR, where the truncation is achieved by
multiplying with a von Hann window instead of a rectangular window.
Here are the steps you need to do:

1. Can you come up with a rational transfer function filter that has
as impulse response samples of the function

h(t/L) = 1/2 (1-cos(2*pi*t/L)),

where L is a parameter (length of the window)? The filter will be
critically stable/instable, with 3 poles on the unit circle (one
complex conjugate pair for the cos-part, on at DC for the offset).
Call this filter A.

2. Now use TIIR technique to generate a filter with impulse response
like filter A, but truncated at L. Call this filter B.

3. Choose your rational transfer filter whose impulse response you
want to window. Call this filter C.

4. Use the complex convolution and residue theorem to construct a
filter such that the impulse response is the impulse response of
filter B multiplied with the impulse response of filter C.

Voila!

i wonder if they knew of that previous work?  it also seemed
more complicated than necessary (but i didn't read it through).  

Well, they had to develop the IIR filter truncation and then apply it
to OLA-time reversal. Seems ok to spend 9 pages to write up the whole
procedure ...

it seems even more than that.  for the concept i had, it would be just
like Powell/Chau, except instead of waiting for the tail of the IIR to
come to a virtual end, we wait for the tail of the TIIR to come to
(save for numerical roundoff issues) an actual end.  so, neglecting
roundoff errors, the method is 100% theoretically perfect, where the
Powell/Chau technique has a theoretical problem that can only be
solved by allowing the tail to decay to 1 LSB.

Powell/Chau always has a theoretical problem, because you cannot let
the tail ring out. The switching for the onlnine-time-reversal
buffering is periodic, which means that the system is not LTI but
linear-periodically-time-variant (LPTV?). You can model this with a
system that has a periodically modulated impulse response (exactly
like a rational sample rate converter). "Your" method (or I guess its
Kurosu's method since he published it first) actually gets rid of the
periodic modulation of the impulse response, turning the Powell/Chau
method into a truly LTI filter.

Regards,
Andor
.



Relevant Pages