【问题标题】:make phase of fft shifted使 fft 的相位发生偏移
【发布时间】:2013-12-02 15:48:45
【问题描述】:

我想得到这个离散时间信号的 fft,A=ones(1,11),我得到了。 我绘制了fft的三维图。

这是 MATLAB 源代码。

A=ones(1,11);
N=2^10;
k=1:N;
k2=1:11;
stem(k2,A);
figure(2);
FFT_A=fft(A,N);
subplot(1,2,1);
plot(k,abs((FFT_A)))
grid on
subplot(1,2,2);
plot(k,angle((FFT_A)))
grid on
figure(3);
plot3(k,abs(FFT_A),angle(FFT_A))
% hold on
% plot3(k,abs((FFT_A).*exp(),angle((FFT_A).*exp()),'r')
grid on
axis([0 1500 -5 10 -10 10]);
xlabel('index');ylabel('abs of fft');zlabel('phase of fft');

然后,在信号和系统课上,教授是这样说的:

"对fft的相位进行移位,使得结果的相位只有0和pi。绘制移位前后的三维图。移位表示将FFT_A乘以exp(-j*2*pi*k*n/ N)。”

n 和 N 的正确值是多少? 我不知道怎么找到它。

【问题讨论】:

    标签: fft shift phase


    【解决方案1】:

    编辑:

    如果x[i]的FFT是X[k],那么x[i-n]的FFT(信号偏移n)是X[k]*exp(-2*pi*j*k*n/N),其中j是虚数,N是数X[k] 中的条目数。

    【讨论】:

    • 我也知道。但是,我想通过相移而不是 fftshift 得到结果的相位为 0 和 pi 的图表。
    • 我不确定您所说的“结果的相位仅为 0 和 pi”是什么意思,但我编辑了我的答案以解释时移如何导致相移。这有帮助吗?
    • 您最初的问题是“n 和 N 的正确值是多少?”,我在回答中对此进行了解释。如果您需要其他方面的帮助,请说明您的问题。
    猜你喜欢
    • 2014-04-10
    • 2021-10-04
    • 1970-01-01
    • 2015-08-20
    • 2020-07-19
    • 2018-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多