矩阵求逆-Warning: Matrix is singular to working precision.
来源:互联网 发布:cdn加速知乎 编辑:程序博客网 时间:2024/06/06 13:04
用inv进行矩阵求逆时,出现矩阵奇异的情况。
只需将inv替换为pinv求伪逆即可。
1.对于方阵A,如果为非奇异方阵,则存在逆矩阵inv(A)
2.对于奇异矩阵或者非方阵,并不存在逆矩阵,但可以使用pinv(A)求其伪逆、
很多时候你不需要求逆矩阵,例如:
inv(A)*B 实际上可以写成 A\B
B*inv(A) 实际上可以写成 B/A
这样比求逆之后带入精度要高
inv:Y=inv(X)返回方阵X的逆矩阵,如果X病态或者高度奇异,则会显示警告信息。实际上,很少需要真的把矩阵的逆求出来,常见的使用失误主要出现在求解线性方程组AX=b。一种求解方法为x=inv(A)*b,但如要达到更快,更稳定,就得用X=A\b。这个算法使用高斯消去法,因此不产生逆矩阵。
“\”:反斜线符号,矩阵左除。如果A是方阵,A\B近似等于inv(A)*B,只是他们的算法不一样。如果A是n*n的方阵,B是n*1的列向量,或n*?的矩阵,那么X=A\B是AX=B的解。如果A很病态或者很奇异,很会显示警告信息。A\EYE(SIZE(A))计算A的逆,参见mldivide可得到更多信息。如果A是m*n的矩阵,m!=n,B是m*1或m*?的列向量,那么X=A\B就是线性方程组AX=B(超定或者欠定)的最小二乘解。A的有效秩(effective rank)k有选主元的QR分解决定。Asolution X is computed that has at most k nonzero componentspercolumn。如果K<N,结果通常和pinv(A)*B不一样,后者是最小范数解。A\EYE(SIZE(A))用来求解A的广义逆。
- 矩阵求逆-Warning: Matrix is singular to working precision.
- 奇异矩阵 singular matrix
- svn: warning: '.' is not a working copy
- BZOJ 4128 Matrix BSGS+矩阵求逆
- CGAffineTransformInvert: singular matrix. 解决方案
- CGAffineTransformInvert: singular matrix. 解决方案
- CGAffineTransformInvert: singular matrix. 解决方案
- CGAffineTransformInvert: singular matrix. 解决方案
- MATRIX FACTORIZATION(矩阵分解)-正则化奇异值分解Regularized Singular Value Decomposition (RSVD)
- warning: Missing file: is missing from working copy
- warning: Missing file: is missing from working copy 的解决办法
- ios <Error>: CGAffineTransformInvert: singular matrix.
- BZOJ 4128 Matrix Baby-Step-Giant-Step+矩阵求逆
- MWPhotoBrowser 引起的 <Error>: CGAffineTransformInvert: singular matrix
- python-numpy: linalg.solve中报错 Singular Matrix
- This client is too old to work with working copy
- This client is too old to work with working copy '...'
- SVN提交错误:working copy is not up-to-date
- Eclipse中如何给代码做注释
- spring 定时任务的 执行时间设置规则
- 页面中,禁止html内容被选择
- 【iOS开发】Xcode清除最近打开的工程
- JSP--设置性别是否被选中
- 矩阵求逆-Warning: Matrix is singular to working precision.
- 几何画板绘制三棱锥的方法
- Android5.0 FloatingActionButton使用小结
- Lua 学习笔记:沙盒
- 线程等待
- MATLAB常见函数(图像处理方面)
- Bullshit —— 第一期
- JS循环输出数组及数组键值
- 【c语言】scanf和getchar详解