ferret 发表于 2008-6-4 18:48:51

求教:如何用一组参数拟合两组数据的两个方程

现在有两组数据,需要用两个不同的方程去拟合,两个方程共用同样的拟合参数,如何用origin实现呢?
也就说我需要找到一组参数同时满足两个拟合方程,难度很大啊,我试了很久,成效甚微,所以特来求教,希望有高手能够帮忙,
谢谢了!

shamohu 发表于 2008-6-4 21:23:06

1stOpt有个ShareModel命令,可以很容易实现这种拟合。

ferret 发表于 2008-6-5 00:14:48

努力下了个1stOpt,好像sharedmodel不好用啊,也可能是D版本的问题,只拟合出一条曲线的参数,另一条的计算值居然都是0...
没有其他人工的方法用在origin里或是其他的软件可以解决么?

nbastar 发表于 2008-6-7 19:38:28

不同方程怎么会有同样参数呢?格式定义都不相同

zhengyong4320 发表于 2008-6-7 19:55:31

对你的问题还是不很明白。能不能再说详细一些?
或把数据和你做的发出来。:)

origin应该可以实现的。呵呵

ferret 发表于 2008-6-9 18:50:38

谢谢几位的热心,这个问题基本已经解决了,我用的sigmaplot自定义方程,也对比了好心人帮忙用1stOpt走的结果。但是仍然有兴趣知道origin能怎么做,楼上的能帮这个忙么?谢谢了
我的方程和数据在这个帖子里了:http://www.simwe.com/forum/thread-836180-1-1.html

zhengyong4320 发表于 2008-6-9 23:36:37

origin8.0拟合的结果:
Equation
y1=(eta1*lamda1*x*x)/(1+lamda1*lamda1*x*x)+(eta2*lamda2*x*x)/(1+lamda2*lamda2*x*x)+(eta3*lamda3*x*x)/(1+lamda3*lamda3*x*x)+(eta4*lamda4*x*x)/(1+lamda4*lamda4*x*x)+(eta5*lamda5*x*x)/(1+lamda5*lamda5*x*x);
y2=etas*x+(eta1*x)/(1+lamda1*lamda1*x*x)+(eta2*x)/(1+lamda2*lamda2*x*x)+(eta3*x)/(1+lamda3*lamda3*x*x)+(eta4*x)/(1+lamda4*lamda4*x*x)+(eta5*x)/(1+lamda5*lamda5*x*x);               
Adj. R-Square        0.99999               
                Value        Standard Error
B,C        etas        65.88567        0.49985
B,C        eta1        538.09814        24.15023
B,C        eta2        130.88772        7.4575
B,C        eta3        217.98419        15.66623
B,C        eta4        498.65021        30.53527
B,C        eta5        379.28091        20.19775
B,C        lamda1        0.06862        0.0062
B,C        lamda2        0.00207        6.4717E-5
B,C        lamda3        0.00631        4.52066E-4
B,C        lamda4        0.36214        0.04442
B,C        lamda5        0.01933        0.00168

ferret 发表于 2008-6-13 17:02:11

谢谢楼上的拟合结果,请问是直接在自定义方程里写y1,y2的方程然后同时计算的么?那y1,y2如何去对应数据行呢?

zhengyong4320 发表于 2008-6-13 17:47:28

还是和一般的自定义拟合一样,定义:x,y1,y2.
etas,eta1,eta2,eta3,eta4,eta5
lamda1,lamda2,lamda3,lamda4,lamda5

然后定义表达式。。。
在非线性拟合对话框里setting--Date selection--input date 选择数据
具体的看附件。(关键是初值要设定适当。呵呵)

[ 本帖最后由 zhengyong4320 于 2008-6-13 17:52 编辑 ]

ferret 发表于 2008-6-13 20:23:29

嗯,我尝试着把y1,y2写进方程,然后在input data选了b,c colume的数据对应y1,y2
不过不明白的就是好象只可以分层显示数据,不能在一个层共用x,y轴显示么?还有fitted curve也出不来

zhengyong4320 发表于 2008-6-13 22:14:06

显示的问题,应该可以设置的,我也没有很认真的去找。找到了说一声。
你自己再试试。呵呵:)
页: [1]
查看完整版本: 求教:如何用一组参数拟合两组数据的两个方程