原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.fft.rfft.html
校对:(虚位以待)
numpy.fft.
rfft
(a, n=None, axis=-1, norm=None)[source]计算实数输入的一维离散傅里叶变换。
该函数通过称为快速傅里叶变换(FFT)的有效算法来计算实值数组的一维n点离散傅里叶变换(DFT)。
参数: | a:array_like
n:int,可选
axis:int,可选
norm:{None,“ortho”},可选
|
---|---|
返回: | out:complex ndarray
|
上升: | IndexError
|
笔记
当为纯实数输入计算DFT时,输出是埃尔米特对称的,即负频率项仅是相应正频率项的复共轭,因此负频率项是多余的。该函数不计算负频率项,因此输出的变换轴的长度为n // 2 + 1
。
当A = rfft(a)
且fs是采样频率时,A[0]
如果n是偶数,则A[-1]
包含表示正和负奈奎斯特频率(+ fs / 2和-fs / 2)的项,纯粹真实。如果n是奇数,则在fs / 2处没有项; A[-1]
包含最大的正频率(fs / 2 *(n-1)/ n),并且在一般情况下是复数。
如果输入a包含虚部,它将被静默丢弃。
例子
>>> np.fft.fft([0, 1, 0, 0])
array([ 1.+0.j, 0.-1.j, -1.+0.j, 0.+1.j])
>>> np.fft.rfft([0, 1, 0, 0])
array([ 1.+0.j, 0.-1.j, -1.+0.j])