ansys10 发表于 2009-2-26 20:01

不同版本计算结果不一样

新近转用matlab,lqr算增益的时候出现如下警告:
Warning: Solution may be inaccurate due to poor scaling or eigenvalues near the stability boundary.
> In control\private\arecheckout at 18
In gcare at 133
In care at 131
In ss.lqr at 98
In lqr at 40
奇怪的是,同一段程序,在matlab6.5中没有警告,
但是在2007a以及matlab7.1中却都出现上述警告,但也能运行,让人郁闷的是同一个程序,不同的版本算的结果不一样

ChaChing 发表于 2009-2-26 22:03

回复 楼主 ansys10 的帖子

是否仅差有无警告, 其他算的结果一样?
个人看法: 有可能旧版的函数考虑不周全, 新版加上一些检验及警告!

ansys10 发表于 2009-2-27 09:29

多了警告;
结果也不一样,差别不算太大;
单独来看,似乎也可以接受,如果我没有用不同的机器的话,估计已经写文章了,但现在还是想确定一下,而且碰上警告心中还是不爽的。

ChaChing 发表于 2009-2-27 10:53

即然结果差别不算太大, 就还好! 个人会建议使用新版的答案!
个人都曾遇过相同矩阵求eig, 旧版会出现警告, 新版则无的状况!

ansys10 发表于 2009-2-27 11:00

谢谢主任;
算eig倒是结果一样;
回头再仔细检查,再决定吧;
平静。。。

ant20050521 发表于 2009-6-23 10:17

我也遇到楼主这样的问题,这个提示好像是检查求解riccati方程的条件,请问楼主是怎么解决的?希望交流一下。
页: [1]
查看完整版本: 不同版本计算结果不一样