函数逼近与曲线(面)拟合的MATLAB程序(5)

时间:2025-02-21

函数逼近与曲线(面)拟合的MATLAB程序

f(x) 2.8110e 0.5816x. (7.14)

(4)根据(7.2),(7.3),(7.4)和(7.14)式编写下面的MATLAB程序估计其误差,并做出拟合曲线和数据的图形.输入程序

>> xi=[-8.5 -8.7 -7.1 -6.8 -5.10 -4.5 -3.6 -3.4 -2.6 -2.5

-2.1 -1.5 -2.7 -3.6];

y=[459.26 52.81 198.27 165.60 59.17 41.66 25.92 22.37

13.47 12.87 11.87 6.69 14.87 24.22];

n=length(xi); f=2.8110.*exp(-0.5816.*xi); x=-9:0.01: -1;

F=2.8110.*exp(-0.5816.*x); fy=abs(f-y); fy2=fy.^2;

Ew=max(fy),

E1=sum(fy)/n, E2=sqrt((sum(fy2))/n), plot(xi,y,'r*'), hold on plot(x,F,'b-'), hold off,

legend('数据点(xi,yi)','拟合曲线y=f(x)')

xlabel('x'), ylabel('y'),

title('例7.3.1的数据点(xi,yi)和拟合曲线y=f(x)的图形')

运行后屏幕显示数据(xi,yi)与拟合函数f的最大误差Ew = 390.141 5,平均误差E1=36.942 2和均方根误差E2=106.031 7及其数据点(xi,yi)和拟合曲线y=f(x)的图形(略).

7.4 多项式拟合及其MATLAB程序

例7.4.1 给出一组数据点(xi,yi)列入表7–3中,试用线性最小二乘法求拟合曲线,并用(7.2),(7.3)和(7.4)式估计其误差,作出拟合曲线.

表7–3 例7.4.1的一组数据(

x,y)

解 (1)首先根据表7–3给出的数据点ii,用下列MATLAB程序画出散点图. 在MATLAB工作窗口输入程序

>> x=[-2.9 -1.9 -1.1 -0.8 0 0.1 1.5 2.7 3.6];

y=[53.94 33.68 20.88 16.92 8.79 8.98 4.17 9.12

19.88];

plot(x,y,'r*'), legend('数据点(xi,yi)')

xlabel('x'), ylabel('y'),

title('例7.4.1的数据点(xi,yi)的散点图')

运行后屏幕显示数据的散点图(略).

(3)用作线性最小二乘拟合的多项式拟合的MATLAB程序求待定系数ak (k 1,2,3).输入程序

>> a=polyfit(x,y,2)

运行后输出(7.16)式的系数

a =

2.8302 -7.3721 9.1382

故拟合多项式为

f(x) 2.8302x2 7.3721x 9.1382.

(4)编写下面的MATLAB程序估计其误差,并做出拟合曲线和数据的图形.输入程序

>> xi=[-2.9 -1.9 -1.1 -0.8 0 0.1 1.5 2.7 3.6];

y=[53.94 33.68 20.88 16.92 8.79 8.98 4.17 9.12 19.88];

n=length(xi); f=2.8302.*xi.^2-7.3721.*xi+9.1382

x=-2.9:0.001:3.6;F=2.8302.*x.^2-7.3721.*x+8.79;

fy=abs(f-y); fy2=fy.^2; Ew=max(fy), E1=sum(fy)/n,

E2=sqrt((sum(fy2))/n), plot(xi,y,'r*', x,F,'b-'),

legend('数据点(xi,yi)','拟合曲线y=f(x)')

xlabel('x'), ylabel('y'),

title('例7.4.1 的数据点(xi,yi)和拟合曲线y=f(x)的图形')

函数逼近与曲线(面)拟合的MATLAB程序(5).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219