chinapenguin 发表于 2009-4-21 07:35

请教有两组数据需要同时拟合应该怎么办?

matlab的cftool每次只能填一个function。有两组数据点,是20个点,是另外20个点,两个函数的系数是共享的,需要拟合出的参数为g1,g2,a, b1, b2。fit的结果需要同时满足两个方程。我如果只输入一个方程,拟合得到的参数代入第二个方程,拟合的不好。有没有办法可以同时拟合呢?两个方程如下:
y1*g2+exp(-b1*x1-b2*y1) = 100-x1*g1-a*g2*exp(-b1*x1)/b2;
x2*g1+exp(-b1*y2-b2*x2) = 100-y2*g2-a*g1*exp(-b2*y2)/b1;
如果matlab做不了,有没有其他工具可以实现呢?谢谢!

[ 本帖最后由 chinapenguin 于 2009-4-21 07:40 编辑 ]

chinapenguin 发表于 2009-4-21 20:32

回复 楼主 chinapenguin 的帖子

自己顶一个
数据如下:x1,y1是第一个方程的一组数据,y2,x2是第二个方程的一组数据

x1=

y1=

y2=

x2=

2365215 发表于 2009-4-22 01:15

你把x1,x2合并成一组数据再拟合不行么?

sigma665 发表于 2009-4-22 09:05

从表达式看差不多,合并成一起试试

chinapenguin 发表于 2009-4-22 11:20

可是两组数据点数不一样呀?而且即使点数一样,怎么合并啊?相加,还是相乘呢?这样就把二元变成四元了吧,matlab是不是只能处理二元的拟合啊

ChaChing 发表于 2009-4-22 15:35

第一时间我亦如同3/4F两位一样, 认为合并即可!
但仔细一看LZ的两个式子好像并无相同, 重新排列如下
y1*g2+x1*g1+exp(-b1*x1-b2*y1)+a*g2*exp(-b1*x1)/b2=100
y2*g2+x2*g1+exp(-b1*y2-b2*x2)+a*g1*exp(-b2*y2)/b1=100
敢问LZ式子有无给错?!
还有LZ在2F给的数据, 重复情况亦多! 数值差距亦大! 直觉怪怪的!
个人水平专业有限, 建议楼主说清楚些, 最好是交代原始问题!
页: [1]
查看完整版本: 请教有两组数据需要同时拟合应该怎么办?