clear
clc
x=[20 25 30 35 40 20 25 30 35 40 20 25 30 35 40 20 25 30 35 40 20 25 30 35 40];
y=[10 10 10 10 10 20 20 20 20 20 30 30 30 30 30 40 40 40 40 40 50 50 50 50 50];
z=[11423 13000 12209 12826 13302 11494 13103 12467 13119 12039 11380,...
12605 13037 12889 12450 11548 13000 12498 12396 12330 11851 13792,...
12640 12283 12181];
ft= fittype('a1+a2*x+a3*y+a4*x^2+a5*x*y+a6*y^2+a7*x^3+a8*x^2*y+ a9*x*y^2+a10*y^3+a11*x^4+a12*x^3*y+a13*x^2*y^2+a14*x*y^3+a15*y^4',...
'independent',{'x','y'},...
'dependent','z',...
'coefficients',{'a1','a2','a3','a4','a5','a6','a7','a8','a9',...
'a10','a11','a12','a13','a14','a15'});%independent自变量,dependent因变量,coefficients系数
[myfit,res]=fit([x',y'],z',ft,'startPoint',ones(15,1))
plot(myfit,[x',y'],z')
legend('原始点')
General model:
myfit(x,y) = a1+a2*x+a3*y+a4*x^2+a5*x*y+a6*y^2+a7*x^3+a8*x^2*y+ a9*x*y^2+
a10*y^3+a11*x^4+a12*x^3*y+a13*x^2*y^2+a14*x*y^3+a15*y^4
Coefficients (with 95% confidence bounds):
a1 = -1.781e+05 (-3.198e+05, -3.641e+04)
a2 = 2.661e+04 (6925, 4.63e+04)
a3 = -1086 (-3236, 1064)
a4 = -1369 (-2380, -357)
a5 = 100.9 (-56.39, 258.1)
a6 = 7.309 (-63.5, 78.12)
a7 = 30.72 (7.965, 53.47)
a8 = -3.113 (-7.85, 1.624)
a9 = -0.1797 (-1.911, 1.552)
a10 = -0.1479 (-1.618, 1.323)
a11 = -0.2526 (-0.4417, -0.06356)
a12 = 0.02479 (-0.02574, 0.07533)
a13 = 0.013 (-0.008654, 0.03466)
a14 = -0.006902 (-0.01953, 0.005732)
a15 = 0.003081 (-0.008737, 0.0149)
res =
sse: 1.1574e+06
rsquare: 0.8764
dfe: 10
adjrsquare: 0.7033
rmse: 340.2049