我试图对高斯脉冲进行傅里叶变换。这是我在互联网上找到的示例代码。
fs=80; %sampling frequency
sigma=180;
t=-0.5:10/fs:0.5; %time base
variance=sigma^2;
x=1/(sqrt(2*pi*variance))*(exp(-t.^2/(2*variance)));
subplot(2,1,1)
plot(t,x,'b');
title(['Gaussian Pulse \sigma=', num2str(sigma),'s']);
xlabel('Time(s)');
ylabel('Amplitude');
L=length(x);
NFFT = 1024;
X = fftshift(fft(x,NFFT));
Pxx=X.*conj(X)/(NFFT*NFFT); %computing power with proper scaling
f = fs*(-NFFT/2:NFFT/2-1)/NFFT; %Frequency Vector
subplot(2,1,2)
plot(f,abs(X)/(L),'r');
title('Magnitude of FFT');
xlabel('Frequency (Hz)')
ylabel('Magnitude |X(f)|');
xlim([-10 10])
我需要一个解释。假设我试图获得100飞秒高斯脉冲的傅里叶变换。如何计算采样频率,sigma和t变量。
答案 0 :(得分:0)
高斯脉冲具有无限的支持,所以没有" 100飞秒高斯脉冲"然而,你可以有一个高斯脉冲,其西格玛为100飞秒,这可能就是你想。对于您的采样频率,您可能希望选择一些实际捕获有关脉冲的有趣信息的内容。因此,您的采样周期小于sigma(原始代码(不是您发布的代码)来自博客使用的sigma / 8)。至于t,如果你想捕获脉冲中的大部分能量,你需要在0的左右两侧去几个sigmas,这是脉冲在时间中心的位置。