matlab - 检查矩阵是否是Matlab中的单位矩阵

标签 matlab matrix linear-algebra

我需要检查矩阵是否为单位矩阵。我知道有一个函数可以检查矩阵是否是对角矩阵,即 isdiag .我知道我可以执行以下操作来检查矩阵 a 是否为单位矩阵:

isequal(a, eye(size(a, 1)))

有没有像isdiag这样的函数直接为我做的?

最佳答案

正如其他人所说,您不一定要检查单位矩阵是否完全相等。此外,对于足够大的矩阵,使用 eye 可能会占用不必要的内存量。我建议使用 diag 来解决这个问题。

isdiag(a) && all(abs(diag(a) - 1) < tolerance)

关于matlab - 检查矩阵是否是Matlab中的单位矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35682635/

相关文章:

c++ - OpenCV 中是否有类似 MATLAB 的 'impixelinfo()' 的功能?

c++ - 在 matlab 中创建类或在 matlab 中转换 c 代码

matlab - 如何可视化显示颜色和值的矩阵?

python - OpenGL获取投影矩阵

c++ - 实现 Matrix 类加法运算符重载奇怪的输出

css - IE 8/9 的转换矩阵问题

python - 有没有办法在 numpy 中创建列向量而不必创建列表列表?

python - Python 中的逐元素乘法相当于 Matlab

c++ - 在滚动窗口上应用矩阵乘法的最聪明方法

c++ - 使用 PartialPivLU 进行 LU 分解