我想知道为什么排名函数上的 Matlab 认为max(size(A))*eps(norm(A))
值为零是否有技术或理论原因。你能提供一些直觉吗?
谢谢!
以下答案不是基于正确的数学推理,它只是一些猜测(因为你在要求直觉(:
norm(A)
是矩阵条目的数量级。
因此,eps(norm(A))
是矩阵条目的浮点表示通常具有的准确性。
现在,考虑您将理论上应该加起来为零的N
数字相加,但是每个数字都有一个eps
的误差......我认为我们预计结果会出现sqrt(N) * eps
顺序的错误。
然后,假设计算秩的算法对矩阵条目执行N^2
操作(其中N
是它的大小(,以产生一个根据零检查的数字,那么我们预期的错误就是您在问题中所说的。
我不知道的是,Matlab使用的算法真的复杂N^2
?