在 Matlab 中实现矩阵的 Frobenius 范数
当数字太大或太小时都会出现问题:
如果矩阵中的数字太大(但在 Matlab 的范围内),取其平方将导致“无穷大”。向其中添加任何其他内容并扎根也将导致无穷大。但是,范数实际上可能要小得多,因为根是在最后取的。
类似地,如果矩阵中的所有数字都足够小,它们的平方和范数将返回,而实际上它可能大到足以用 Matlab 表示,因为已取根。
在函数的实现中,我们将如何处理这样的情况?我知道norm(A,'fro')Matlab 中存在这个问题,但我们被要求自己处理这个问题,我很困惑。