scipy.linalg.

ishermitian#

scipy.linalg.ishermitian(a, atol=None, rtol=None)#

Prüfen Sie, ob ein quadratisches 2D-Array hermitisch ist.

Die Dokumentation wurde unter der Annahme verfasst, dass die Array-Argumente bestimmte „Kern“-Formen haben. Array-Argumente dieser Funktion können jedoch zusätzliche „Batch“-Dimensionen vorangestellt haben. In diesem Fall wird das Array als Stapel von niedrigdimensionalen Schnitten behandelt; siehe Gestapelte lineare Operationen für Details.

Parameter:
andarray

Eingabearray der Größe (N, N)

atolfloat, optional

Absoluter Fehlergrenzwert

rtolfloat, optional

Relativer Fehlergrenzwert

Rückgabe:
herbool

Gibt True zurück, wenn das Array hermitisch ist.

Löst aus:
TypeError

Wenn der dtype des Arrays nicht unterstützt wird, insbesondere NumPy float16, float128 und complex256 dtypes.

Siehe auch

issymmetric

Prüfen Sie, ob ein quadratisches 2D-Array symmetrisch ist

Hinweise

Für leere quadratische Arrays wird das Ergebnis per Konvention True zurückgegeben.

numpy.inf wird als Zahl behandelt, d. h. [[1, inf], [inf, 2]] gibt True zurück. Andererseits ist numpy.nan niemals symmetrisch, z. B. gibt [[1, nan], [nan, 2]] False zurück.

Wenn atol und/oder rtol auf gesetzt sind, wird der Vergleich von numpy.allclose durchgeführt und die Toleranzwerte werden an diese übergeben. Andernfalls wird ein exakter Vergleich gegen Null durch interne Funktionen durchgeführt. Daher kann sich die Leistung je nach Größe und dtype des Arrays verbessern oder verschlechtern. Wenn einer der Werte atol oder rtol gegeben ist, wird der andere automatisch auf Null gesetzt.

Beispiele

>>> import numpy as np
>>> from scipy.linalg import ishermitian
>>> A = np.arange(9).reshape(3, 3)
>>> A = A + A.T
>>> ishermitian(A)
True
>>> A = np.array([[1., 2. + 3.j], [2. - 3.j, 4.]])
>>> ishermitian(A)
True
>>> Ac = np.array([[1. + 1.j, 3.j], [3.j, 2.]])
>>> ishermitian(Ac)  # not Hermitian but symmetric
False
>>> Af = np.array([[0, 1 + 1j], [1 - (1+1e-12)*1j, 0]])
>>> ishermitian(Af)
False
>>> ishermitian(Af, atol=5e-11) # almost hermitian with atol
True