曲线拟合的线性最小二乘法及其MATLAB程序Word文档格式.docx
《曲线拟合的线性最小二乘法及其MATLAB程序Word文档格式.docx》由会员分享,可在线阅读,更多相关《曲线拟合的线性最小二乘法及其MATLAB程序Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
6.50
68.04
解
(1)在MATLABI作窗口输入程序
»
x=[-2.5-1.7-1.1-0.800.11.52.73.6];
y=[-192.9-85.50-36.15-26.52-9.10-8.43-13.126.50
68.04];
plot(xzy,^*1),
legend('
实验数据(xi,yi)'
)
xlabeK^1),ylabeK^1),
title(■例7•2・1的数据点(xifyi)的散点图1)
运行后屏幕显示数据的散点图(略)・
(3)编写下列MATLAB程序计算/(x)在(a;
y.)处的函数值,即输入程序
symsala2a3a4
x=[-2.5-1.7-1.1-0.800.11.52.73.6];
fi=al.★x.A3+a2・*x・A2+a3・*x4-a4
运行后屏幕显示关于gg心和如的线性方程组
fi=[-125/8*al+25/4*a2-5/2*a3+a4,
-4913/1000*al+289/100*a2-17/10*a3+a4z-1331/1000*al+121/100*a2-ll/10*a3+a4,-64/125*al+16/25*a2-4/5*a3+a4,
a4,l/1000*al+l/100*a2+l/10*a3+a4,
27/8*al+9/4*a2+3/2*a3+a4,19683/1000*al+729/100*a2+27/10*a3+a4,5832/125*al+324/25*a2+18/5*a3+a4]
编写构造误差平方和的MATLAB程序
y=[-192.9-85.50-36.15-26.52-9.10-8.43-13.126.50
fi=[-125/8*al+25/4*a2-5/2*a3+a4,
-4913/1000*al+289/100*a2-17/10*a3+a4r
-1331/1000*al+121/100*a2-ll/10*a3+a4<
-64/125*al+16/25*a2-4/5*a3+a4za4,
!
/1000*al+l/100*a2+l/10*a3+a4z
27/8*al+9/4*a2+3/2*a3+a4z
19683/1000*al+729/100*a2+27/10*a3+a4<
5832/125*al+324/25*a2+18/5*a3+a4];
fy=fi-y;
fy2=fy・A2;
J=sum(fy・八2)
运行后屏幕显示误差平方和如下
J=
(-125/8*al+25/4*a2-5/2*a3+a4+1929/10)A2+<
-4913/1000*al+289/100*a2-17/10*a3+a4+171/2)A2+(-1331/1000*al+121/100*a2-ll/10*a3+a4+723/20)A2+(-64/125*al+16/25*a2-4/5*a3+a4+663/25)A2+(a4+91/10)A2+(l/1000*al+l/100*a2+l/10*a3+a4+843/100)A2+(27/8*al+9/4*a2+3/2*a3+a4+328/25)A2+(19683/1000*al+729/100*a2+27/10*a3+a4-13/2)A2+(5832/125*al+324/25*a2+18/5*a3+a4-1701/25)A2
为求⑷"
4“使丿达到最小.只需利用极值的必要条件—=0伙=123,4),
得到关于⑷心心心的线性方程组,这可以由下而的MATLAB程序完成,即输入程序
J=(-125/8*al+25/4*a2-5/2*a3+a4+1929/10)A2+<
-4913/1000*al+289/100*a2-17/10*a3+a4•・・+171/2)A2+(-1331/1000*al+121/100*a2-ll/10*a3+a4+723/20)A2+(-64/125*al+16/25*a2-4/5*a3+a4+663/25)A2+(a4+91/10)A2+(!
/1000*al+l/100*a2+l/10*a3+a4+843/100)A2+(27/8*al+9/4*a2+3/2*a3+a4+328/25)A2+(19683/1000*al+729/100*a2+27/10*a3+a4-13/2)A2+(5832/125*al+324/25*a2+18/5*a3+a4-1701/25)A2;
Jal=diff(Jzal);
Ja2=diff(J,a2);
Ja3=diff(Jza3);
Ja4=diff(Jza4);
Jall=simple(Jal),Ja21=simple(Ja2)zJa31=simple(Ja3)/Ja41=simple(Ja4)/运行后屏幕显示J分别对5,“2,心X/4的偏导数如下
Jall=
56918107/10000*al+32097579/25000*a2+1377283/2500*a3+23667/25074-8442429/625
Ja21=
32097579/25000*al+1377283/2500*a2+23667/250*a3+67*a4+767319/625
Ja31=
1377283/2500*al+23667/250*a2+67*a3+18/5*a4-232638/125
Ja41=
23667/250*al+67*a2+18/5*a3+18*a4+14859/25
解线性方程组Jcl\\=0»
Jci2\=0>
Jd3\=0f肋41=0,输入卜列程序
A=[56918107/10000a32097579/25000,1377283/2500,
23667/250;
32097579/25000,1377283/2500,23667/250,67;
1377283/2500,23667/250,67,18/5;
23667/250,67,18/5,18];
B=[8442429/625,-767319/625,232638/125,-14859/25];
C=B/A,f=poly2sym(C)
运行后屏幕显示拟合函数/及其系数C如下
C=5.0911-14.19056.4102-8.2574
f=7165/1428*xA3
-7988544102557579/562949953421312*xA2
+77693/2856"
-4648521160813215/562949953421312
故所求的拟合曲线为
/(%)=5.0911%3-14.1905x2+6.4102x-8.2574.
(4)编写下面的MATLAB程序估计其误差,并作岀拟合曲线和数据的图形•输入程序
xi=[-2.5-1.7-1.1-0.800.11.52.73.6];
y=[-192.9-85.50-36.15-26.52-9.10-8.43-13.126.5068.04];
n=length(xi);
f=5.0911.*xi.A3-14.1905.*xi.A2+6.4102.*xi-8.2574;
X=-2.5:
0.01:
3.6;
F=5.0911/X.A3-14.1905/X.A2+6.4102/X-8.2574;
fy=abs(f-y);
fy2=fy.A2;
Ew=max(fy),
E1=sum(fy)/n,E2=sqrt((sum(fy2))/n)
plot(xi,yy'
j,holdon,plot(x,F;
bJ),holdofflegendf数据点(xi,yi儿拟合曲线y=f(x)t),xlabelfx*),ylabel(y),
titled例721的数据点(xi,yi)和拟合曲线y=f(x)的图形•)
运行后屏幕显示数据(兀,儿)与拟合函数/的最大误差圧,平均误差Z和均方根误差E:
及其数据点(曲,儿)和拟合曲线的图形(略).
Ew=El=E2=
OS/TTcT-(q*S/8T)dxe4E)+SV(00T/L8^T-(q*0T/Lc)dxe¥
p)+3V(001/699-(q*c/€)^e*e)+cv(00T/L8TT-(q*0l/T3)dxe¥
e)+3V(00T/L83T-(q*S/S)dxe*^)+3v(00T/L^€T-(q*9/£
T)dxe*p)+cv(00T/L£
cS-(q*S/LT)d^^*^)+3v(S3/8^9-(q*S/8T)+sv(08/E80E-心¥
乙/6)dx.E)+"
(00I/LT6S-(q*0I/
Tg)dxe^E)+"
(S/8S8-(q*S/惩)dx»
E)+“(00T/Z-C86T-(qMl/U)dx*E)+Sv(00T/I83S-(qMT:
/厶8)dxje)+"
(0$/£
96丸一(q^/空)dxjE)=i?
qesuiAs<
<
岀哉Y酚胎’舉事岀葩红\n丄V驸切蚩山甲方也宴
v(0S/IIcl-(q*S/8T)d^e*^)+3v(00I/L8^T-(q*0l/Lc)dxe^e)+sv(001/699-(4早乙/£
)&
*&
¥
引+"
(00T/L8TT-(q“l/M)dx*E)+“(00I/L83T-(q*c/S)dxe¥
P)+Sv(OOT/L^£
T-(q*9/ST)dxe*p)+cv(00T/L8cS-(q*S/£
T)dxe¥
e)+sv(Sc/8^9-(q早S/8l)dx6¥
E)+"
(0S/£
80Z-(q¥
"
6)dx»
E)+“(00T/LT6S-(q*0T/ls)dxe*E)+3v(g/Q38-(q*S/7£
)d^e*^)+Sv(00T/Lc86T-(q$0l/"
)dx*E)+Cv(OOT/T8S9-(qjl/ig)dxgw)+3V(0S/€96c3-(q*S/LT)dxe^e)
=C
f[丸・皿V讥'
69・9yL8eTTV8•乙
L£
-3cy36-SSy99-T^/LT-6Sy09-S9T/LS-86T/T8-3S/93-69^]=A«
山|埠期葩avi±
vw轲时*去巽迫衷创丘呀
((q¥
$/8T)dx6¥
E'
(q^0T/L3)dxe*E'
(q早乙/£
)dxm^E
(q*0T/Tc)d^^*^7(q¥
Z/S)dx&
(q*S/£
T)dxe^E'
(q^S/厶I)
z(q¥
7/6)dx^¥
E7(q^Ol/lS)'
(q^S/yS)
y(q*0l/T£
)<
5xe¥
ey(q*0T/L8)z(q^s/^I)dxe¥
E]
=TJ
苗葩*粋褊胡勺咄“壬关士酉畫均些◎密
(x厂q_)dxe*・e=tj仃9・£
-'
厶•乙-WT-'
T
乙-V•乙-'
9・E-[・£
-"
9・£
-yr-'
0「—y・9-q・l-q・