实验报告—数值分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数值分析》实验报告

姓名:

学号:

专业:

指导教师:刘建生教授

日期: 2015年12月25日

实验一 Lagrange/newton 插值

一:对于给定的一元函数)(x f y =的n+1个节点值(),0,1,,j j y f x j n ==。试用Lagrange

公式求其插值多项式或分段二次Lagrange 插值多项式。

数据如下:

计算(0.596)

f ,

(0.99)f 的值(提示:结果为(0.596)0.625732f ≈,

(0.99) 1.05423f ≈ )

试构造Lagrange 多项式6L ()x ,计算的(1.8)f ,(6.15)f 值。(提示:结果为

(1.8)0.164762f ≈, (6.15)0.001266f ≈ )

二:实验程序及注释

MATLAB 程序:function f=lagrange(x0,y0,x )

n=length(x0); m=length(y0); format long s=0.0; for k=1:n p=1.0; for j=1:n if j~=k

p=p*(x-x0(j))/(x0(k)-x0(j)); end end

s=s+y0(k)*p; End f=s; end

结果运行:

结果与提示值完全吻合,说明Lagrange 插值多项式的精度是很高的;

)

45)(35)(25)(15)(05()4)(3)(2)(1)(0()

50)(40)(30)(20)(10()

5)(4)(3)(2)(1()(f x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x ----------+

⋅⋅⋅+----------=

同时,若采用三点插值和两点插值的方法,用三点插值的精度更高。若同时采用两点插值,选取的节点距离x 越近,精度越高。

三:采用newton插值进行计算

算法程序如下:

format long;

x0=[0.4 0.55 0.65 0.80 0.95 1.05 ];

y0=[0.41075 0.57815 0.69675 0.90 1.00 1.25382 ]; x=0.596;

n=max(size(x0));

y=y0(1);

%disp(y);

s=1;

dx=y0;

for i=1:n-1

dx0=dx;

for j=1:n-i

dx(j)=(dx0(j+1)-dx0(j))/(x0(i+j)-x0(j));

end

df=dx(1);

s=s*(x-x0(i));

y=y+s*df; %计算

%%disp(y);

end

disp(y)

运行结果:

绘制出曲线图:

与结果相吻合。

所以newton法和Lagrange法的思想是一样的。Lagrange适合理论分析,但Lagrange法不如newton法灵活。Lagrange如果节点个数改变,算法需要重新编写,而Newton法克服这一缺点,所以应用更为灵活。

实验二 函数逼近与曲线拟合

一、问题提出

在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t 的拟合曲线。

要求:

1、用最小二乘法进行曲线拟合;

2、近似解析表达式为f(x)=a 1t+ a 2t 2

+ a 3t 3

3、计算出拟合函数f(x),并列出出f(x)与y(x)的误差;

4、另外选取一个近似表达式,尝试拟合效果的比较;

5、绘制出曲线拟合图。

二、问题分析

三、

从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。

三、实验程序及注释

三次拟合程序(最小二乘法):

t=[0 5 10 15 20 25 30 35 40 45 50 55]%输入时间t 的数据

y=[0 1.27 2.16 2.86 3.44 3.87 4.15 4.37 4.51 4.58 4.02 4.64]%输入含碳量数据

[p,s]=polyfit(t,y,3)%调用MATLAB 最小二乘法的程序进行三次拟合并给出误差分析 format long%14位精度小数

plot(t,y,'*r')%绘制被拟合数据点的离散图 hold on

plot(t,y1,'b')%绘制三次拟合函数图(其中y1是拟合之后的数据) xlabel('时间t (分钟)') %注释x 轴 ylabel('含碳量/10^-4') %注释y 轴 title('三次拟合图') %注释图名 grid%坐标系网格化

四次拟合程序(最小二乘法):

[p,s]=polyfit(t,y,4) %调用MATLAB 最小二乘法的程序进行四次拟合并给出误差分析 format long%14位精度小数

plot(t,y,'*r')%绘制被拟合数据点的离散图

t(分钟) 0

5 10 15 20 25 30 35 40 45 50 55 y (10

4

1.27

2.16

2.86

3.44

3.87

4.15

4.37

4.51

4.58

4.02

4.64

相关文档
最新文档