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


Python numpy fft.rfftn用法及代碼示例


本文簡要介紹 python 語言中 numpy.fft.rfftn 的用法。

用法:

fft.rfftn(a, s=None, axes=None, norm=None)

計算實際輸入的 N 維離散傅裏葉變換。

此函數通過快速傅裏葉變換 (FFT) 在 M-dimensional 實數數組中的任意數量的軸上計算 N 維離散傅裏葉變換。默認情況下,所有軸都被變換,實際變換在最後一個軸上執行,而其餘變換是複雜的。

參數

a array_like

輸入數組,被認為是真實的。

s 整數序列,可選

要從輸入中使用的形狀(沿每個變換軸的長度)。 (s[0]指軸 0,s[1]到軸 1 等)。最終元素為s對應於n為了rfft(x, n),而對於其餘的軸,它對應於n為了fft(x, n).沿著任何軸,如果給定的形狀小於輸入的形狀,則裁剪輸入。如果它更大,則用零填充輸入。如果s未給出,輸入沿指定軸的形狀被使用。

axes 整數序列,可選

計算 FFT 的軸。如果沒有給出,最後一個len(s)使用軸,或所有軸,如果s也沒有指定。

norm {“backward”, “ortho”, “forward”},可選

標準化模式(參見 numpy.fft )。默認為“backward”。指示前向/後向變換對的哪個方向被縮放以及使用什麽歸一化因子。

返回

out 複雜的ndarray

截斷或補零的輸入,沿由,或通過組合sa,如上麵參數部分所述。最後變換的軸的長度將是s[-1]//2+1,而剩餘的變換軸的長度將根據s,或與輸入保持不變。

拋出

ValueError

如果 s 和軸有不同的長度。

IndexError

如果軸的元素大於a的軸數。

注意

實際輸入的變換在最後一個變換軸上執行,如 rfft ,然後在其餘軸上的變換如 fftn 。輸出的順序與最後一個變換軸的 rfft 相同,其餘變換軸的輸出順序與 fftn 相同。

有關使用的詳細信息、定義和約定,請參閱 fft

例子

>>> a = np.ones((2, 2, 2))
>>> np.fft.rfftn(a)
array([[[8.+0.j,  0.+0.j], # may vary
        [0.+0.j,  0.+0.j]],
       [[0.+0.j,  0.+0.j],
        [0.+0.j,  0.+0.j]]])
>>> np.fft.rfftn(a, axes=(2, 0))
array([[[4.+0.j,  0.+0.j], # may vary
        [4.+0.j,  0.+0.j]],
       [[0.+0.j,  0.+0.j],
        [0.+0.j,  0.+0.j]]])

相關用法


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