cupyx.scipy.fftpack.rfft#

cupyx.scipy.fftpack.rfft(x, n=None, axis=-1, overwrite_x=False, plan=None)[source]#

计算实数输入的一维 FFT。

返回的实数数组包含

[y(0),Re(y(1)),Im(y(1)),...,Re(y(n/2))]  # if n is even
[y(0),Re(y(1)),Im(y(1)),...,Re(y(n/2)),Im(y(n/2))]  # if n is odd
参数:
  • x (cupy.ndarray) – 要进行变换的数组。

  • n (Noneint) – 输出的变换轴的长度。如果未给出 n,则使用输入沿 axis 指定轴的长度。

  • axis (int) – 计算 FFT 的轴。

  • overwrite_x (bool) – 如果为 True,则 x 的内容可能会被销毁。

  • plan (cupy.cuda.cufft.Plan1dNone) –

    用于沿 axis 变换 x 的 cuFFT 计划,可以使用以下方法获取

    plan = cupyx.scipy.fftpack.get_fft_plan(
        x, axes, value_type='R2C')
    

    请注意,plan 默认为 None,这意味着如果 cupy.fft.config. enable_nd_planning = True,CuPy 将在后台使用自动生成的计划;如果将其设置为 False,则不使用 cuFFT 计划。

返回:

变换后的数组。

返回类型:

cupy.ndarray

另请参阅

scipy.fftpack.rfft()

注意

参数 plan 目前是实验性的,其接口可能会在未来版本中更改。