scipy.sparse.linalg.onenormest

scipy.sparse.linalg.onenormest(A, t=2, itmax=5, compute_v=False, compute_w=False)[源代码]

计算稀疏矩阵的1-范数的下界。

参数
Andarray或其他线性运算符

一种可转置并能产生矩阵乘积的线性运算符。

t整型,可选

控制精度、时间和内存使用之间权衡的正参数。值越大,耗时越长,使用的内存越多,但输出越准确。

itmax整型,可选

最多只能使用此数量的迭代。

compute_v布尔值,可选

如果为True,则请求范数最大化的线性运算符输入向量。

compute_w布尔值,可选

如果为True,则请求范数最大化线性运算符输出向量。

退货
est浮动

对稀疏矩阵的1-范数的低估。

vndarray,可选

向量使得 ||Av||_ 1==估计* ||v||_ 1.它可以被认为是给出具有特别大范数的输出的线性运算符的输入。

wndarray,可选

具有相对较大1-范数的向量Av。它可以被认为是线性运算符的输出,与输入相比,线性运算符的范数相对较大。

注意事项

这是的算法2.4 [1] 。

在……里面 [2] 具体描述如下。这种算法通常需要评估大约4T个矩阵向量乘积,并且几乎总是会产生一个范数估计(实际上是范数的下限),准确到因子3以内。

0.13.0 新版功能.

参考文献

1

Nicholas J.Higham和Francoise Tisseur(2000年),“矩阵1-范数估计的挡路算法及其在1-范伪谱中的应用”。暹罗J.Matrix肛门。应用程序。第21卷,第4期,第1185-1201页。

2

Awad H.Al-Mohy和Nicholas J.Higham(2009),“矩阵指数的一种新的缩放和平方算法”。暹罗J.Matrix肛门。应用程序。第31卷,第3期,第970-989页。

示例

>>> from scipy.sparse import csc_matrix
>>> from scipy.sparse.linalg import onenormest
>>> A = csc_matrix([[1., 0., 0.], [5., 8., 2.], [0., -1., 0.]], dtype=float)
>>> A.toarray()
array([[ 1.,  0.,  0.],
       [ 5.,  8.,  2.],
       [ 0., -1.,  0.]])
>>> onenormest(A)
9.0
>>> np.linalg.norm(A.toarray(), ord=1)
9.0