当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia LinearAlgebra.rank用法及代码示例


用法:

rank(A::AbstractMatrix; atol::Real=0, rtol::Real=atol>0 ? 0 : n*ϵ)
rank(A::AbstractMatrix, rtol::Real)

通过计算A 有多少奇异值的幅度大于max(atol, rtol*σ₁) 来计算矩阵的秩,其中σ₁A 的最大奇异值。 atolrtol 分别是绝对公差和相对公差。默认的相对公差是 n*ϵ ,其中 nA 的最小尺寸的大小,而 ϵA 的元素类型的 eps

Julia 1.1

atolrtol 关键字参数至少需要 Julia 1.1。在 Julia 1.0 中,rtol 可用作位置参数,但在 Julia 2.0 中将被弃用。

例子

julia> rank(Matrix(I, 3, 3))
3

julia> rank(diagm(0 => [1, 0, 2]))
2

julia> rank(diagm(0 => [1, 0.001, 2]), rtol=0.1)
2

julia> rank(diagm(0 => [1, 0.001, 2]), rtol=0.00001)
3

julia> rank(diagm(0 => [1, 0.001, 2]), atol=1.5)
1

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 LinearAlgebra.rank — Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。