本文简要介绍 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。