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


Python SciPy linalg.issymmetric用法及代碼示例

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

用法:

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

檢查正方形二維數組是否對稱。

參數

a ndarray

大小為 (N, N) 的輸入數組。

atol 浮點數,可選

絕對誤差界限

rtol 浮點數,可選

相對誤差界限

返回

sym bool

如果數組對稱,則返回 True。

拋出

TypeError

如果不支持數組的數據類型,特別是 NumPy float16、float128 和 complex256 數據類型以進行精確比較。

注意

對於方形空數組,按照約定,結果返回 True。複值數組經過對稱性測試,而不是 Hermitian(參見示例)

不掃描數組的對角線。因此,如果對角線上有 infs、NaNs 或類似的有問題的條目,它們將被忽略。但是, numpy.inf 將被視為數字,也就是說 [[1, inf], [inf, 2]] 將返回 True 。另一方麵, numpy.nan 永遠不會對稱,例如 [[1, nan], [nan, 2]] 將返回 False

atol 和/或rtol 設置為 時,由 numpy.allclose 執行比較並將公差值傳遞給它。否則,由內部函數執行與零的精確比較。因此,性能可以根據數組的大小和 dtype 提高或降低。如果給定另一個 atolrtol 之一,則自動將其設置為零。

例子

>>> import numpy as np
>>> from scipy.linalg import issymmetric
>>> A = np.arange(9).reshape(3, 3)
>>> A = A + A.T
>>> issymmetric(A)
True
>>> Ac = np.array([[1. + 1.j, 3.j], [3.j, 2.]])
>>> issymmetric(Ac)  # not Hermitian but symmetric
True

相關用法


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