MATLAB中sprank函数用法

目录

语法

说明

示例

计算矩阵的结构秩


        sprank函数的功能是求取矩阵的结构秩。

语法

r = sprank(A)

说明

        r = sprank(A) 计算稀疏矩阵 A 的结构秩。

示例

计算矩阵的结构秩

计算 2×4 矩阵的结构秩。

A = [1 0 2 0
     2 0 4 0];
A = sparse(A);
rs = sprank(A)


rs = 2

将结构秩与常规秩计算进行比较。

rf = rank(full(A))

rf = 1

        对于此矩阵,结构秩是 2,因为两列非零。但是,矩阵的实际秩是 1,因为列互为倍数。

结构秩

        一个矩阵的结构秩是具有相同非零模式的所有矩阵的最大秩。如果一个矩阵可以置换,使得对角线有非零项,则该矩阵具有满结构秩。

        结构秩是一个矩阵的秩的上限,因此它满足 sprank(A) >= rank(full(A))。

关于其他函数的结构秩的一些定义如下:

  • 结构秩是“最大匹配”,它与 Dulmage-Mendelsohn 分解的关系为 sprank(A) = sum(dmperm(A)>0)。

  • 与 dmperm 不同,matchpairs 函数在计算匹配时也会考虑权重。您可以通过将矩阵转换为 1 和 0 并将与 matchpairs(double(A~=0),0,'max') 匹配的权重最大化,来计算最大匹配。结构秩则等于匹配的数量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值