當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python SciPy fftpack.fftn用法及代碼示例


本文簡要介紹 python 語言中 scipy.fftpack.fftn 的用法。

用法:

scipy.fftpack.fftn(x, shape=None, axes=None, overwrite_x=False)#

返回多維離散傅裏葉變換。

返回的數組包含:

y[j_1,..,j_d] = sum[k_1=0..n_1-1, ..., k_d=0..n_d-1]
   x[k_1,..,k_d] * prod[i=1..d] exp(-sqrt(-1)*2*pi/n_i * j_i * k_i)

其中 d = len(x.shape) 和 n = x.shape。

參數

x array_like

要轉換的 (N-D) 數組。

shape int 或 數組 of ints 或 None,可選

結果的形狀。如果兩者都形狀(見下文)無,形狀x.shape;如果形狀是無但不是無,那麽形狀numpy.take(x.shape, axes, axis=0).如果shape[i] > x.shape[i],第 i 個維度用零填充。如果shape[i] < x.shape[i],第 i 個維度被截斷為長度shape[i].如果任何元素形狀為-1,對應維度的大小x被使用。

axes int 或 數組 of ints 或 None,可選

沿其應用變換的 x 軸(如果 shape 不是 None,則為 y)。默認值是在所有軸上。

overwrite_x 布爾型,可選

如果為 True,則可以銷毀 x 的內容。默認為假。

返回

y complex-valued N-D NumPy 數組

輸入數組的 (N-D) DFT。

注意

如果 x 是實值,則 y[..., j_i, ...] == y[..., n_i-j_i, ...].conjugate()

實現了單精度和雙精度例程。半精度輸入將轉換為單精度。非浮點輸入將被轉換為雙精度。不支持Long-double 精度輸入。

例子

>>> import numpy as np
>>> from scipy.fftpack import fftn, ifftn
>>> y = (-np.arange(16), 8 - np.arange(16), np.arange(16))
>>> np.allclose(y, fftn(ifftn(y)))
True

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.fftpack.fftn。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。