[已解决] 应该有解的奇异矩阵为什么matlab一个解都不给?

[复制链接]
qiuhuizuo 发表于 2021-9-8 13:38:54
  1. A=ones(4)
  2. b=ones(4,1)
  3. x=A\b
复制代码
上面的A是有目的构建的一个奇异矩阵。b也是有目的构建的一个向量。在我看的书上说以上代码matlab会给出一个解就是x=(1,1,1,1)/4 。但是我带入matlab计算后还是无解。并给出警告(警告: 矩阵为奇异工作精度。)
请问这是什么原因?

matlab2015b win10 64位家庭版 Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz   3.40 GHz 8G内存

最佳答案


TouAkira 发表于 2021-9-8 18:41:08
奇异矩阵最好写成
x = lsqminnorm( A, b )
或者
x = pinv( A ) * b
回复此楼

2 条回复


TouAkira 发表于 2021-9-8 18:41:08
奇异矩阵最好写成
x = lsqminnorm( A, b )
或者
x = pinv( A ) * b
回复此楼

qiuhuizuo 发表于 2021-9-8 20:16:16
TouAkira 发表于 2021-9-8 18:41
奇异矩阵最好写成
x = lsqminnorm( A, b )
或者

谢谢你的回复。
lsqminnorm我的2016不支持,悲剧了
x = pinv( A ) * b 可以得到一个解。
顺便学习了一些相关知识。很有收获。多谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表