- #1

- 2

- 0

I'using Matlab to simulate phase shift in frequency domain (FD).

I have got real and imaginary parts of the signal after FFT.

I'd like to use phase shift in FD.

This works:

Y=fft(y);

YY=Y.exp(-i*2*pi*nk/N*samples_delay);

result=ifft(YY);

But in my DSP I can't use the formula above and I need to use real and imaginary parts from fft signal.

I supposed exp(-i*2*pi*nk/N*samples_delay) can be transfered to this:

Shifted real part = re*cos(2*pi*nk/N*samples_delay)

Shifted imaginary part = im*sin(-2*pi*nk/N*samples_delay)

Then I transfered it back to time domain but result is inccorect.

Could anybody help me?

Thank you