本文簡要介紹 python 語言中 scipy.linalg.funm
的用法。
用法:
scipy.linalg.funm(A, func, disp=True)#
評估由可調用對象指定的矩陣函數。
返回matrix-valued函數的值
f
在A.函數f
是scalar-valued 函數的擴展函數到矩陣。- A: (N, N) 數組
評估函數的矩陣
- func: 可調用的
計算標量函數 f 的可調用對象。必須矢量化(例如,使用矢量化)。
- disp: 布爾型,可選
如果結果中的錯誤估計很大,而不是返回估計的錯誤,則打印警告。 (默認:真)
- funm: (N, N) 數組
由 func 指定的矩陣函數的值在 A 處求值
- errest: 浮點數
(如果 disp == False)
估計誤差的 1 範數,||err||_1 /||A||_1
參數 ::
返回 ::
注意:
該函數實現了基於 Schur 分解的通用算法(算法 9.1.1. in [1])。
如果已知輸入矩陣是可對角化的,那麽依靠特征分解可能會更快。例如,如果你的矩陣是 Hermitian,你可以做
>>> from scipy.linalg import eigh >>> def funm_herm(a, func, check_finite=False): ... w, v = eigh(a, check_finite=check_finite) ... ## if you further know that your matrix is positive semidefinite, ... ## you can optionally guard against precision errors by doing ... # w = np.maximum(w, 0) ... w = func(w) ... return (v * w).dot(v.conj().T)
參考:
[1]Gene H. Golub,Charles F. van Loan,矩陣計算第 4 版。
例子:
>>> import numpy as np >>> from scipy.linalg import funm >>> a = np.array([[1.0, 3.0], [1.0, 4.0]]) >>> funm(a, lambda x: x*x) array([[ 4., 15.], [ 5., 19.]]) >>> a.dot(a) array([[ 4., 15.], [ 5., 19.]])
相關用法
- Python SciPy linalg.factorized用法及代碼示例
- Python SciPy linalg.fractional_matrix_power用法及代碼示例
- Python SciPy linalg.fiedler用法及代碼示例
- Python SciPy linalg.find_best_blas_type用法及代碼示例
- Python SciPy linalg.fiedler_companion用法及代碼示例
- 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.lu_factor用法及代碼示例
- Python SciPy linalg.SuperLU用法及代碼示例
- Python SciPy linalg.lsqr用法及代碼示例
- Python SciPy linalg.cho_factor用法及代碼示例
- Python SciPy linalg.eig_banded用法及代碼示例
- Python SciPy linalg.tanhm用法及代碼示例
- Python SciPy linalg.orthogonal_procrustes用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.linalg.funm。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。