本文簡要介紹 python 語言中 scipy.sparse.linalg.use_solver
的用法。
用法:
scipy.sparse.linalg.use_solver(**kwargs)#
選擇要使用的默認稀疏直接求解器。
- useUmfpack: 布爾型,可選
使用 UMFPACK [1]、[2]、[3]、[4]。超過 SuperLU。僅當安裝
scikits.umfpack
時才有效。默認值:真- assumeSortedIndices: 布爾型,可選
允許 UMFPACK 跳過對 CSR/CSC 矩陣索引進行排序的步驟。僅當 useUmfpack 為 True 且安裝了
scikits.umfpack
時才有效。默認值:假
參數 ::
注意:
默認稀疏解算器是 UMFPACK(如果可用)(安裝了
scikits.umfpack
)。這可以通過傳遞 useUmfpack = False 來更改,這會導致使用始終存在的基於 SuperLU 的解算器。UMFPACK 需要 CSR/CSC 矩陣來排序列/行索引。如果確定矩陣滿足此要求,請傳遞
assumeSortedIndices=True
以獲得一些速度。參考:
[1]T. A. Davis,算法 832:UMFPACK - 一種帶有列預排序策略的 unsymmetric-pattern 多前沿方法,ACM Trans。數學軟件,30(2),2004 年,第 196-199 頁。 https://dl.acm.org/doi/abs/10.1145/992200.992206
[2]T. A. Davis,unsymmetric-pattern 多前沿方法的專欄預排序策略,ACM Trans。數學軟件,30(2),2004 年,第 165-195 頁。 https://dl.acm.org/doi/abs/10.1145/992200.992205
[3]T. A. Davis 和 I. S. Duff,非對稱稀疏矩陣的單額/多額組合方法,ACM Trans。數學軟件,25(1),1999,第 1-19 頁。 https://doi.org/10.1145/305658.287640
[4]T. A. Davis 和 I. S. Duff,稀疏 LU 分解的 unsymmetric-pattern 多前沿方法,SIAM J. 矩陣分析和計算,18(1),1997,第 140-158 頁。 https://doi.org/10.1137/S0895479894246905T。
例子:
>>> import numpy as np >>> from scipy.sparse.linalg import use_solver, spsolve >>> from scipy.sparse import csc_matrix >>> R = np.random.randn(5, 5) >>> A = csc_matrix(R) >>> b = np.random.randn(5) >>> use_solver(useUmfpack=False) # enforce superLU over UMFPACK >>> x = spsolve(A, b) >>> np.allclose(A.dot(x), b) True >>> use_solver(useUmfpack=True) # reset umfPack usage to default
相關用法
- Python SciPy linalg.eigvalsh_tridiagonal用法及代碼示例
- Python SciPy linalg.cdf2rdf用法及代碼示例
- Python SciPy linalg.LaplacianNd用法及代碼示例
- Python SciPy linalg.solve_circulant用法及代碼示例
- Python SciPy linalg.polar用法及代碼示例
- Python SciPy linalg.clarkson_woodruff_transform用法及代碼示例
- Python SciPy linalg.rsf2csf用法及代碼示例
- Python SciPy linalg.hessenberg用法及代碼示例
- Python SciPy linalg.tril用法及代碼示例
- Python SciPy linalg.triu用法及代碼示例
- Python SciPy linalg.svd用法及代碼示例
- Python SciPy linalg.ishermitian用法及代碼示例
- Python SciPy linalg.invhilbert用法及代碼示例
- Python SciPy linalg.factorized用法及代碼示例
- Python SciPy linalg.lu_factor用法及代碼示例
- Python SciPy linalg.SuperLU用法及代碼示例
- Python SciPy linalg.lsqr用法及代碼示例
- Python SciPy linalg.cho_factor用法及代碼示例
- Python SciPy linalg.fractional_matrix_power用法及代碼示例
- Python SciPy linalg.eig_banded用法及代碼示例
- Python SciPy linalg.tanhm用法及代碼示例
- Python SciPy linalg.orthogonal_procrustes用法及代碼示例
- Python SciPy linalg.qr_multiply用法及代碼示例
- Python SciPy linalg.spsolve用法及代碼示例
- Python SciPy linalg.LinAlgError用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.sparse.linalg.use_solver。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。