【发布时间】:2010-05-08 09:21:20
【问题描述】:
我正在使用 octave 的 fft 函数,但我真的不知道如何缩放它们的输出:我使用以下(非常短的)代码来近似函数:
function y = f(x)
y = x .^ 2;
endfunction;
X=[-4096:4095]/64;
Y = f(X);
# plot(X, Y);
F = fft(Y);
S = [0:2047]/2048;
function points = approximate(input, count)
size = size(input)(2);
fourier = [fft(input)(1:count) zeros(1, size-count)];
points = ifft(fourier);
endfunction;
Y = f(X); plot(X, Y, X, approximate(Y, 10));
基本上,它所做的就是获取一个函数,计算一个区间的图像,fft-it,然后保留一些谐波,然后对结果进行 ifft。然而,我得到了一个垂直压缩的图(输出的垂直比例是错误的)。有什么想法吗?
【问题讨论】: