Matlab:如何在傅里叶 space 中操作傅里叶变换?
Matlab: How can I manipulate a Fourier transform in Fourier space?
给定时域 t 中的函数 f(t)。它的傅里叶变换在频域是F(w)。
如何更改 Fourier space w 中的 Fourier 变换,例如我如何计算 F(w)*w?
我已经用 FFT(x) 对信号 x 进行了傅里叶变换,但是我该如何继续将 FFT(x) 与 w 相乘?我真的不知道该怎么办...
我了解到您不知道如何获取 w
。
假设你的信号是 x(t)
在一个统一的网格 t
:
N = numel(x);
dt = t(2)-t(1);
df = 1/(N*dt); % the frequency resolution (df=1/max_T)
if mod(N,2)==0
f_vector = df*((1:N)-1-N/2);
else
f_vector = df*((1:N)-0.5-N/2);
end
w=f_vector;
answer = fftshift(fft(x)).*w;
您可能需要将 w
与 2*pi
或 pi
相乘,我不太小心,所以检查一下是否有意义
给定时域 t 中的函数 f(t)。它的傅里叶变换在频域是F(w)。 如何更改 Fourier space w 中的 Fourier 变换,例如我如何计算 F(w)*w?
我已经用 FFT(x) 对信号 x 进行了傅里叶变换,但是我该如何继续将 FFT(x) 与 w 相乘?我真的不知道该怎么办...
我了解到您不知道如何获取 w
。
假设你的信号是 x(t)
在一个统一的网格 t
:
N = numel(x);
dt = t(2)-t(1);
df = 1/(N*dt); % the frequency resolution (df=1/max_T)
if mod(N,2)==0
f_vector = df*((1:N)-1-N/2);
else
f_vector = df*((1:N)-0.5-N/2);
end
w=f_vector;
answer = fftshift(fft(x)).*w;
您可能需要将 w
与 2*pi
或 pi
相乘,我不太小心,所以检查一下是否有意义