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


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


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

用法:

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

計算 rfftn 的倒數。

此函數通過快速傅裏葉變換 (FFT) 計算 M-dimensional 數組中任意數量軸上的實數輸入的 N 維離散傅裏葉變換的逆。換句話說,irfftn(rfftn(a), a.shape) == a 在數值精度範圍內。 (a.shape 是必需的,就像 len(a) 用於 irfft 一樣,原因相同。)

輸入的排序方式應與 rfftn 返回的方式相同,即對於最終轉換軸的 irfft 以及沿所有其他軸的 ifftn

參數

a array_like

輸入數組。

s 整數序列,可選

輸出的形狀(每個變換軸的長度)(s[0]指軸 0,s[1]到軸 1 等)。s也是沿該軸使用的輸入點數,最後一個軸除外,其中s[-1]//2+1使用輸入點。沿著任何軸,如果形狀由s小於輸入的,輸入被裁剪。如果它更大,則用零填充輸入。如果s如果未給出,則使用沿軸指定的軸的輸入形狀。除了最後一個軸被認為是2*(m-1)其中m是輸入沿該軸的長度。

axes 整數序列,可選

計算逆 FFT 的軸。如果未給出,則使用最後一個 len(s) 個軸,如果也未指定 s,則使用所有軸。軸中的重複索引意味著在該軸上執行多次逆變換。

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

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

返回

out ndarray

截斷或補零的輸入,沿由,或通過組合s或者a,如上麵的參數部分所述。每個變換軸的長度由對應的元素給出s,或者除了最後一個軸之外的每個軸的輸入長度,如果s沒有給出。在最終轉換的軸中,輸出的長度是s沒有給出是2*(m-1)其中m是輸入的最終變換軸的長度。要在最終軸上獲得奇數個輸出點,s必須指定。

拋出

ValueError

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

IndexError

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

注意

有關使用的定義和約定,請參見 fft

有關用於實際輸入的定義和約定,請參見 rfft

厄米特輸入的正確解釋取決於原始數據的形狀,如s.這是因為每個輸入形狀都可能對應於奇數或偶數長度的信號。默認,irfftn假設一個偶數輸出長度,將最後一個條目置於奈奎斯特頻率;與其對稱對應物混疊。在執行最終複數到實數的轉換時,最後一個值因此被視為純實數。為了避免丟失信息,真實輸入的正確形狀必須被給予。

例子

>>> a = np.zeros((3, 2, 2))
>>> a[0, 0, 0] = 3 * 2 * 2
>>> np.fft.irfftn(a)
array([[[1.,  1.],
        [1.,  1.]],
       [[1.,  1.],
        [1.,  1.]],
       [[1.,  1.],
        [1.,  1.]]])

相關用法


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