MATLAB中的PSD,系数问题12π _12π

信息处理 matlab fft 功率谱密度
2022-02-06 18:44:43

使用 FFT 来模拟傅里叶变换我有这个问题。

我用于 PSD的定义是:S(f)

S(f)=12πexp(iτ2πf)r(τ)dτ

其中是相关函数。r(t)

MATLAB中的FFT使用这个公式

X(k)=n=1Nx(n)exp(j2π(k1)(n1)N),1kN.

所以为了替换我所做的PSD:

S=abs(fft(r))*delta_t

delta_t时间步长在哪里。换句话说,翻译我所做的公式中的代码:

S(k)=n=1Nexp(i2π(k1)(n1)N)r(n)ΔT

使用这个公式后,我应用了这个,检查结果

S(f)df=r.m.s.{x(t)}

其中是原始信号。这个公式得到了完美验证。x(t)

现在的问题是我注意到在 MATLABfft中没有系数12π

你能给我解释一下为什么会这样吗?我知道傅里叶变换对可以使用很多不同的系数,但我不知道这是否与我的问题有关。

谢谢

1个回答

我只想说这无关紧要。傅里叶变换及其逆变换是一对,两个公式纠缠在一起,需要一个归一化因子,这符合惯例。参见例如在此处输入链接描述

如果您的理论/模型不需要特殊约定,则基本上是您可以选择满足您需求的自由度。