Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2012-12-10, 20:21   #1
zhangholmes
初级会员
 
注册日期: 2012-11-30
帖子: 4
声望力: 0
zhangholmes 正向着好的方向发展
默认 怎样用一组参数同时拟合两个曲线

如题,小弟想拟合曲线r1和r2,这两条曲线都用的同一组参数A1 A2 A3 A4 A5 A6 A7 Aw E1 E2 E3 E4 E5 E6 E7 Ew进行非线性最小二乘拟合,请问怎样用matlab实现一组参数同时拟合两个方程?(如果分开拟合的话每个参数必然有两个值)。下面是相关的数据及方程,其中y1和y2分别是r1和r2的实验值,r1和r2的自变量值相同,均为x1.请各位大侠能鼎力相助,最好能给出代码或者计算方法,谢谢
x1=[0.51333,0.36301,0.34194,0.28502,0.26485,0.17771];
y1=[0.50536,0.61684,0.63566,0.68357,0.70947,0.72182];
y2=[2.5363,1.16376,0.75531,0.4164,0.27812,0.1259];
syms A1 A2 A3 A4 A5 A6 A7 Aw E1 E2 E3 E4 E5 E6 E7 Ew x;
k1=A1*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E1)/4098.802);
k2=A2*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E2)/4098.802);
k3=A3*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E3)/4098.802);
k4=A4*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E4)/4098.802);
k5=A5*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E5)/4098.802);
k6=A6*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E6)/4098.802);
k7=A7*exp ((-Aw*exp (-Ew/4098.802)*((0.133+0.173*x)/(0.483-0.346*x))-E7)/4098.802);
r1=-(x*k1*k2*k3*(-k5-k7))/(-(x*k1*k2-k3*(-x*k1-k2-x*k4-k6))*(-k5-k7)-x*k3*k4*(-x*k1+k7));
r2=-(x^2)*k1*k3*k4*k5/((x*k1*k2-k3*(-x*k1-k2-x*k4-k6))*(-k5-k7)-x*k3*k4*(-x*k1+k7));
100 <= A1 <= 10000;
10^11 <= A2 <= 10^14;
10^12 <= A3 <= 10^14;
100 <= A4 <= 10000;
10^12 <= A5 <= 10^14;
10^12 <= A6 <= 10^14;
10^12 <= A7 <= 10^14;
100 <= Aw <= 10000;
0 <= E1 <= 100;
50 <= E2 <= 140;
50 <= E3 <= 140;
0 <= E4 <= 100;
50 <= E5 <= 150;
100 <= E6 <= 150;
0 <= E7 <= 100;
0 <= Ew <= 100;
zhangholmes 当前离线   回复时引用此帖
 

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 13:11


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.