- #1
Eng_Pat
- 2
- 0
Hello,
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 transferred 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 transferred it back to time domain but result is inccorect.
Could anybody help me?
Thank you
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 transferred 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 transferred it back to time domain but result is inccorect.
Could anybody help me?
Thank you