scipy.linalg.interpolative.

estimate_rank#

scipy.linalg.interpolative.estimate_rank(A, eps, rng=None)[源代码]#

使用随机化方法估计矩阵的秩,达到指定的相对精度。

矩阵 A 可以是 numpy.ndarrayscipy.sparse.linalg.LinearOperator,不同的情况使用不同的算法。如果 A 的类型是 numpy.ndarray,则输出的秩通常比实际数值秩高约 8。

参数:
Anumpy.ndarrayscipy.sparse.linalg.LinearOperator

要估计秩的矩阵,可以是 numpy.ndarray 或具有 rmatvec 方法(用于应用矩阵的伴随)的 scipy.sparse.linalg.LinearOperator

epsfloat

数值秩定义的相对误差。

rngnumpy.random.Generator,可选

伪随机数生成器状态。当 rng 为 None 时,会使用操作系统的熵创建一个新的 numpy.random.Generator。除 numpy.random.Generator 以外的类型会传递给 numpy.random.default_rng 以实例化一个 Generator。 如果 randFalse,则忽略此参数。

返回:
int

估计的矩阵秩。