rfftfreq¶
返回离散傅里叶变换的频率窗口(frequency bins)中心,以 "循环/采样间隔" 为单位。例如,采样间 隔以秒为单位,则频谱的单位是 "循环/秒"。用于 rfft
和 irfft
。
对于窗口长度 n 和采样间隔 d,输出的频率序列 f 排布如下:
f = [0, 1, ..., n/2-1, n/2] / (d*n) (当 n 为偶数)
f = [0, 1, ..., (n-1)/2-1, (n-1)/2] / (d*n) (当 n 为奇数)
参数¶
n (int) - 窗长度(傅里叶变换点数)。
d (float,可选) - 采样间隔,采样率的倒数,默认值为 1。
dtype (str,可选) - 返回 Tensor 的数据类型,默认为
paddle.get_default_dtype()
返回的类型。name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。
返回¶
Tensor,形状为 [n // 2 + 1]
,数据类型为 dtype
指定的数据类型,包含频率窗口中心序列。
代码示例¶
import numpy as np
import paddle
x = np.array([3, 1, 2, 2, 3], dtype=float)
scalar_temp = 0.3
n = x.size
rfftfreq_xp = paddle.fft.rfftfreq(n, d=scalar_temp)
print(rfftfreq_xp)
# Tensor(shape=[3], dtype=float32, place=CUDAPlace(0), stop_gradient=True,
# [0. , 0.66666669, 1.33333337])