zhangholmes
2012-12-10, 20:32
如题,小弟想用Findfit函数拟合曲线r1和r2,这两条曲线都用的同一组参数A1 A2 A3 A4 A5 A6 A7 Aw E1 E2 E3 E4 E5 E6 E7 Ew进行非线性最小二乘拟合,请问怎样用mathematica实现一组参数同时拟合两个方程?(如果分开拟合的话每个参数必然有两个值)。下面是相关的数据及方程,其中y1和y2分别是r1和r2的实验值,r1和r2的自变量值相同,均为x1.请各位大侠能鼎力相助,最好能给出代码或者计算方法,谢谢
da = {{0.51333, 0.50536}, {0.36301, 0.61684}, {0.34194,
0.63566}, {0.28502, 0.68357}, {0.26485, 0.70947}, {0.17771,
0.72182}};
db = {{0.51333, 2.5363}, {0.36301, 1.16376}, {0.34194,
0.75531}, {0.28502, 0.4164}, {0.26485, 0.27812}, {0.17771,
0.1259}};
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;
da = {{0.51333, 0.50536}, {0.36301, 0.61684}, {0.34194,
0.63566}, {0.28502, 0.68357}, {0.26485, 0.70947}, {0.17771,
0.72182}};
db = {{0.51333, 2.5363}, {0.36301, 1.16376}, {0.34194,
0.75531}, {0.28502, 0.4164}, {0.26485, 0.27812}, {0.17771,
0.1259}};
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;