完整数值分析matlab实验报告.docx

上传人:b****5 文档编号:6355607 上传时间:2023-01-05 格式:DOCX 页数:12 大小:184.11KB
下载 相关 举报
完整数值分析matlab实验报告.docx_第1页
第1页 / 共12页
完整数值分析matlab实验报告.docx_第2页
第2页 / 共12页
完整数值分析matlab实验报告.docx_第3页
第3页 / 共12页
完整数值分析matlab实验报告.docx_第4页
第4页 / 共12页
完整数值分析matlab实验报告.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

完整数值分析matlab实验报告.docx

《完整数值分析matlab实验报告.docx》由会员分享,可在线阅读,更多相关《完整数值分析matlab实验报告.docx(12页珍藏版)》请在冰豆网上搜索。

完整数值分析matlab实验报告.docx

完整数值分析matlab实验报告

(完整)数值分析matlab实验报告

编辑整理:

 

尊敬的读者朋友们:

这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)数值分析matlab实验报告)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)数值分析matlab实验报告的全部内容。

实验2.1多项式差值的振荡现象

一、实验内容

设区间[—1,1]上函数

,考虑区间[—1,1]的一个等距划分,分点为

,i=0,1,2,..。

,n,则拉格朗日插值多项式为

.其中,li(x),i=0,1,2,。

.,n是Lagrange插值基函数.

1)选择不断增大的分点数目n=2,3,。

..,画出原函数f(x)及插值多项式函数Ln(x)在[-1,1]上的图像,比较并分析实验结果.

2)选择其他的函数,例如定义在区间[—5,5]上的函数

,重复上述的实验看其结果如何。

二、实验程序

1.主程序

functionchapter2

promps={’请选择试验函数,若选f(x),请输入f,若选好h(x),请输入h,若选g(x),请输入g:

'};

result=inputdlg(promps,’charpt2',1,{'f’});

Nb_f=char(result);

if(Nb_f~=’f’&&Nb_f~=’h’&&Nb_f~=’g')

errordlg(’试验函数选择错误!

');

return;

end

result=inputdlg({’请输入插值多项式的次数N:

’},'charpt_2',1,{’10’});

Nd=str2num(char(result));

if(Nd〈1)

errordlg('插值多项式的次数输入错误!

');

return;

end

switchNb_f

case'f’

f=inline(’1。

/(1+25*x。

^2)’);a=-1;b=1;

case'h’

f=inline('x。

/(1+x。

^4)');a=—5;b=5;

case'g'

f=inline(’atan(x)’);a=-5;b=5;

end

x0=linspace(a,b,Nd+1);y0=feval(f,x0);

x=a:

0。

1:

b;y=Lagrange(x0,y0,x);

clf;

fplot(f,[ab],'rx');

holdon;

plot(x,y,'b-—’);

xlabel('x’);ylabel('y=f(x)xandy=Ln(x)--');

2。

Lagrange函数

functiony=Lagrange(x0,y0,x)

n=length(x0);

m=length(x);

fori=1:

m

z=x(i);

s=0;

fork=1:

n

p=1.0;

forj=1:

n

if(j~=k)

p=p.*(z-x0(j))/(x0(k)-x0(j));

end

end

s=s+p*y0(k);

end

y(i)=s;

end

三、实验结果及分析

1)选择不断增大的分点数目n,原函数f(x)及插值多项式函数Ln(x)在[-1,1]上的图像。

随着提高插值多项式次数,可以提高逼近的精度,但是次数的增加,在区间两端点附近与原函数偏离很远,即出现了Runge现象。

2)选择不断增大的分点数目n,原函数h(x)及插值多项式函数Ln(x)在[-1,1]上的图像.

选择不断增大的分点数目n,原函数g(x)及插值多项式函数Ln(x)在[—1,1]上的图像.

同样,随着提高插值多项式次数,可以提高逼近的精度,但是次数的增加,在区间两端点附近与原函数偏离很远,即出现了Runge现象。

实验3。

1最小二乘拟合

一、实验内容

编制以函数

为基的多项式最小二乘拟合程序,并用于对下表中数据作3次多项式最小二乘拟合.

xi

-1.0

-0.5

0。

0

0.5

1。

0

1.5

2.0

yi

-4.447

—0。

452

0。

551

0。

048

-0.447

0.549

4.552

取权数

,求拟合曲线

中的参数

、平方误差

,并作离散数据

的拟合函数

的图形.

二、实验程序

functionchapter3

x0=-1:

0。

5:

2;

y0=[—4。

447-0.4520。

5510.048—0.4470.5494。

552];

n=3;

alph=polyfit(x0,y0,n);

y=polyval(alph,x0);

r=(y0—y)*(y0—y)’;

x=-1:

0.01:

2;

y=polyval(alph,x);

plot(x,y,’k--');

xlabel('x');ylabel('y0*andpolyfit.y-.');

holdon;

plot(x0,y0,'*');

title(’离散数据的多项式拟合');

gridon;

disp([’平方误差:

',sprintf(’%g',r)]);

disp(['参数alph:

’,sprintf(’%g\t’,alph)])

三、实验结果及分析

输出结果:

平方误差:

2.17619e-005

参数alph:

1。

99911-2.99767-3。

96825e—0050.549119

离散数据的拟合函数图形为:

实验3.2正交化多项式最小二乘拟合

一、实验内容

编制正交化多项式最小二乘拟合程序,并用于求解上题中的3次多项式最小二乘拟合问题,作拟合曲线的图形,计算平方误差,并与上题的结果进行比较。

二、实验程序

1。

主程序:

functionchapter3_2

x0=-1:

0.5:

2;

y0=[-4。

447—0。

4520。

5510。

048—0。

4470。

5494.552];

n=3;

result=inputdlg({'请输入权向量w:

'},’charpt_3’,1,{’[1111111]’});

w=str2num(char(result));

[a,b,c,alph,r]=ffun(x0,y0,w,n);

disp([’平方误差:

',sprintf(’%g’,r)]);

disp(['参数alph:

’,sprintf('%g\t’,alph)])

2。

正交化离散数据最小二乘拟合函数

function[a,b,c,alph,r]=ffun(x,y,w,n)

m=length(x)-1;

s1=0;s2=ones(1,m+1);v2=sum(w);

d

(1)=y*w’;c

(1)=d

(1)/v2;

fork=1:

n

xs=x。

*s2.^2*w';a(k)=xs/v2;

if(k==1)

b(k)=0;

else

b(k)=v2/v1;

end

s3=(x—a(k)).*s2-b(k)*s1;

v3=s3.^2*w’;

d(k+1)=y。

*s3*w’;c(k+1)=d(k+1)/v3;

s1=s2;s2=s3;v1=v2;v2=v3;

end

r=y.*y*w'—c*d’;

alph=zeros(1,n+1);

T=zeros(n+1,n+2);

T(:

,2)=ones(n+1,1);T(2,3)=—a

(1);

if(n〉=2)

fork=3:

n+1

fori=3:

k+1

T(k,i)=T(k-1,i)-a(k-1)*T(k—1,i—1)—b(k—1)*T(k-2,i—2);

end

end

end

fori=1:

n+1

fork=i:

n+1

alph(n+2-i)=alph(n+2-i)+c(k)*T(k,k+2-i);

end

end

xmin=min(x);xmax=max(x);dx=(xmax—xmin)/(25*m);

t=(xmin—dx):

dx:

(xmax+dx);

s=alph

(1);

fork=2:

n+1

s=s。

*t+alph(k);

end

plot(x,y,'*',t,s,’-’);

title(’离散数据的多项式拟合’);

xlabel('x');ylabel('y');

gridon;

三、实验结果及分析

输出结果:

平方误差:

2。

17619e-005

参数alph:

1.99911—2。

99767-3。

96825e—0050.549119

离散数据的拟合函数图形为:

与实验3.1的结果完全一致。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1