天天看點

python矩陣的共轭轉置_numpy中Hermitian矩陣的IFFT

我認為這篇文章提到了一些稍微不同的東西。厄米矩陣等于它的複共轭轉置。然而,實際輸入的fft是“Hermite對稱的”。它等于它的複共轭,但不是它的複共轭轉置。在

順便說一句,我可能把這些術語搞混了,因為我唯一聽說過的“hermite對稱”矩陣是在實值的fft上下文中。盡管如此,我90%肯定這就是報紙所指的。在

你确實有一個埃爾米特矩陣作為輸入:In [4]: np.allclose(m, np.conj(m).T)

Out[4]: True

但它不是“赫米特對稱的”:

^{pr2}$

但是,讓我們看看當我們對實值進行fft時會發生什麼:

^{3}$

注意,得到的fft(幾乎)與它的複共轭(有一個項的符号不同,我不明白)。如果有人知道的話,我将非常感謝你的解釋!)公司名稱:In [8]: result

Out[8]:

array([[ 36.0+0.j , -4.5+2.6j, -4.5-2.6j],

[-13.5+7.8j, 0.0+0.j , 0.0+0.j ],

[-13.5-7.8j, 0.0+0.j , 0.0+0.j ]])

In [9]: np.conj(result)

Out[9]:

array([[ 36.0-0.j , -4.5-2.6j, -4.5+2.6j],

[-13.5-7.8j, 0.0-0.j , 0.0-0.j ],

[-13.5+7.8j, 0.0-0.j , 0.0-0.j ]])

但它不是厄米,因為它不等于它的複共轭轉置:In [10]: np.conj(result).T

Out[10]:

array([[ 36.0-0.j , -13.5-7.8j, -13.5+7.8j],

[ -4.5-2.6j, 0.0-0.j , 0.0-0.j ],

[ -4.5+2.6j, 0.0-0.j , 0.0-0.j ]])

無論如何,這也許不是完整的答案,但希望它能讓你朝着正确的方向邁出一步。在

實際上,如果您使用的是實數輸入,并且隻想得到實際的輸出,請使用^{}和{a2}(在本例中是irfft2版本)。類似地,當你計算厄米特矩陣的特征值/向量時,看看eigh和{},隻需要實際輸出。在