On Wed, 10 Jul 2002 20:05:53 -0400, Jerry Avins wrote:
(snipped)
>
>I think a careful reading will show that he wants the same phase shift
>at all frequencies, and different time delays. For a 90-degree shift, a
>Hilbert transformer does that in the time domain, and the real/imaginary
>switch I mentioned earlier does it in the frequency domain. Mike's more
>general frequency-domain transformation can be used for any angle.
>
>Jerry
Aarrggh! You're right.
However, monkeying with Hugh's code I see that
his results make sense. Using the following:
clear
t = [0:pi/128:4*pi];
x = sin(t);
figure(5)
subplot(3,1,1), plot(x,'-bo')
X = fft(x);
MX = abs(X);
AX = angle(X);
UAX = unwrap(AX) - pi/2;
Y = MX .* exp(j*UAX);
y = ifft(Y);
s
ubplot(3,1,2), plot(real(y));
subplot(3,1,3), plot(imag(y));
The final time-domain real part is just
computational errors on the order of
10^(-13). They should be all zeros.
The final time-domain imaginary part
is sinusoidal going negative right after t = 0.
This is correct. Think of Euler's equations for
a sinewave. After the -pi/2 phase shift, the
two complex exponentials, at t = 0, are no longer
pointing North and South, but are pointing East and
West. As time progresses beyond zero, the sum of
the two complex exponentials will sum to a
negative imaginary value.
Hugh started with a real-only time-domain sequence so
its spectral phases will be conjugate symmetrical.
That phase shift of -pi/2 made the spectral
phase asymetrical, which leads to a non-zero
imaginary part in the time domain.
[-Rick-]