声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2698|回复: 2

[经典算法] 求教如何同时拟合两条曲线或者两个函数!!!!!!!

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

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

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

x
用最小二乘法或者残差平方和最小的方法拟合曲线或者函数,例如:
(yei,xi) 是一系列的实验数据,而这些数据符合函数y=f (x),而这个函数里面含有几个未知参数,比如(a1,a2,a3,a4),通过求残差平方和最小,就可以得到这几个参数了。方程可以这样写:
ry:=(yei-y)^2;
Tr:=sum(ry, i = 1 .. n);
da1:=diff(Tr, a1);
da2:=diff(Tr, a2);
da3:=diff(Tr, a3);
da4:=diff(Tr, a4);
sam:=solve({da1,da2,da3,da4},[a1,a2,a3,a4]);
上面的是针对拟合一个函数的方法,那现在有个问题,如何拟合两个函数呢,什么意思呢,例如:
有两组实验数据,(yei,xi) 和(zei,xi),而(yei,xi)数据对应函数y=f1 (x) ,(zei,xi)数据对应z=f2(x)。而关键的地方是这两个函数有共同的未知函数(a1,a2,a3,a4) ,现在的问题是怎么才能得到参数值(a1,a2,a3,a4),使得y=f1 (x)和z=f2(x)尽可能的和两组数据都很接近。
回复
分享到:

使用道具 举报

发表于 2010-6-22 22:27 | 显示全部楼层
构造函数y=C1*f1(x)+C2*f2(x)
你的实验数据形式为y,x,C1,C2,也就是一个三元函数

你的两组数据实际为
yei,xi,1,0
zei,xi,0,1

这样就变成一般问题了。

评分

1

查看全部评分

发表于 2010-6-22 22:29 | 显示全部楼层
补充一下,你可以设定C1,C2有效时值不是1,这相当于调节f1,f2的权重。

评分

1

查看全部评分

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

本版积分规则

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

GMT+8, 2024-5-12 21:25 , Processed in 0.052299 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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