声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3070|回复: 3

[综合讨论] Matlab如何求解二元二次超定方程组?

[复制链接]
发表于 2009-6-18 14:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在Matlab中如果求解一个二元二次方程,现在只有两个方程可以用solve求解出所有的解。但是当存在多余2个方程的时候(即为超定方程组时),该如何求解呢??还能用Solve函数吗?

比如下面的方程:
a1*x^2+b1*x+c1*y^2+d1*y=e1
a2*x^2+b2*x+c2*y^2+d2*y=e2
a3+b3*x+c3*y=e3

x,y为未知数,其他的为已知数,求解x,y.
回复
分享到:

使用道具 举报

发表于 2009-6-18 19:33 | 显示全部楼层
用fmin求e1^2+e2^2+e3^2的最小解

[ 本帖最后由 friendchj 于 2009-6-18 22:06 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2009-6-19 11:43 | 显示全部楼层

回复 沙发 VibrationMaster 的帖子

你的意思是将方程转换成:
a1*x^2+b1*x+c1*y^2+d1*y-e1=f1
a2*x^2+b2*x+c2*y^2+d2*y-e2=f2
a3+b3*x+c3*y-e3=f3
再用fminsearch求解最小值min(f1+f2+f3),得到最终的未知数的值是不是??
很有道理。
但是这个fminsearch是需要初始解才能得到最终的解的。假如不知道初始解该如何求解呢??

[ 本帖最后由 ChaChing 于 2009-6-19 13:19 编辑 ]
发表于 2009-6-19 16:51 | 显示全部楼层
1.fminsearch求解最小值min(f1^2+f2^2+f3^2)
2.一般非线性问题的数值解往往都是迭代法,因而需要初值
3.初值可以试出来或者对原始方程作简化然后定性分析出一个解的大体范围来确定初值。
4.非线性问题很少有一劳永逸的一统天下的解法
5.正因为如此,才让我们有事做,有饭吃

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-20 23:21 , Processed in 0.054133 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表