数值分析上机作业修改

  • 格式:doc
  • 大小:238.50 KB
  • 文档页数:13

下载文档原格式

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

西南交通大学

数值分析2015上机实习报告

2015年11月

数值分析2015上机实习报告

目录

第2题 (1)

1. 程序 (1)

2. 结果分析 (2)

第3题 (5)

1. 程序 (6)

2. 结果分析 (7)

第5题 (8)

1. 程序 (8)

2. 结果分析 (9)

第2题

2. 某过程测涉及两变量x 和y, 拟分别用插值多项式和多项式拟合给出其对应规律的近似多项式,已知xi与yi之间的对应数据如下,xi=1,2,…,10

yi = 34.6588 40.3719 14.6448 -14.2721 -13.3570 24.8234 75.2795

103.5743 97.4847 78.2392

(1)请用次数分别为3,4,5,6的多项式拟合并给出最好近似结果f(x)。

(2)请用插值多项式给出最好近似结果

下列数据为另外的对照记录,它们可以作为近似函数的评价参考数据。

xi =

Columns 1 through 7

1.5000 1.9000

2.3000 2.7000

3.1000 3.5000 3.9000

Columns 8 through 14

4.3000 4.7000

5.1000 5.5000 5.9000

6.3000 6.7000

Columns 15 through 17

7.1000 7.5000 7.9000

yi =

Columns 1 through 7

42.1498 41.4620 35.1182 24.3852 11.2732 -1.7813 -12.3006

Columns 8 through 14

-18.1566 -17.9069 -11.0226 2.0284 19.8549 40.3626 61.0840

Columns 15 through 17

79.5688 93.7700 102.3677

1. 程序

(1)多项式拟合程序

n=input('输入所要拟合的阶数n=');

hold on;

x=1:10;

y=[34.6588 40.3719 14.6448 -14.2721 -13.3570 24.8234 75.2795 103.5743 97.4847 78.2392];

P=polyfit(x,y,n)

xi=1:.2:10;

yi=polyval(P,xi);

plot(xi,yi,x,y,'r*');

legend('拟合曲线','原始数据')

(2)拉格朗日插值多项式拟合程序

clc;

x=1:10;

y=[34.6588 40.3719 14.6448 -14.2721 -13.3570 24.8234 75.2795 103.5743 97.4847 78.2392]; plot(x,y,'r*');

hold on;

syms t;

n=length(x);

f = 0.0;

for i =1:n

l = y(i);

for j = 1:i-1

l = l*(t-x(j))/(x(i)-x(j));

end;

for j = i+1:n

l = l*(t-x(j))/(x(i)-x(j));

end;

f = f + l;

simplify(f);

f = collect(f);

f = vpa(f,6);

end

ti=1.0:0.4:10;

f=subs(f,'t',ti);

plot(ti,f)

legend('拟合曲线','原始数据')

title '拉格朗日插值多项式拟合'

2. 结果分析

(1)请用次数分别为3,4,5,6的多项式拟合并给出最好近似结果f(x)。

图2-1 3次多项式拟合结果

图2-2 4次多项式拟合结果

图2-3 5次多项式拟合结果

图2-4 6次多项式拟合结果

从绘制的图形来看,当采用6次多项式拟合的时候,拟合的曲线已经与所给出的点非常逼近了。

6次多项式拟合曲线为:f(x)=0.0194x6-0.5408x5+5.1137x4-16.8973x3-0.8670x2+66.3750x-18.6991(2)拉格朗日插值多项式给出最好近似结果

图1-4 拉格朗日插值多项式拟合

第3题

3.用雅格比法与高斯-赛德尔迭代法解下列方程组Ax=b,研究其收敛性,上机验证理论分析是否正确,比较它们的收敛速度,观察右端项对迭代收敛有无影响。

(1)A行分别为A1=[6,2,-1],A2=[1,4,-2],A3=[-3,1,4];b1=[-3,2,4]T, b2=[100,-200,345]T,

(2) A行分别为A1=[1,0,8,0.8],A2=[0.8,1,0.8],A3=[0.8,0.8,1];b1=[3,2,1]T, b2=[5,0,-10]T,

(3)A行分别为A1=[1,3],A2=[-7,1];b=[4,6]T, 1. 程序

(1)雅格比法程序

function jacobi( )

clc;

clear;

A=[6 2 -1;1 4 -2;-3 1 4];

B=[-3;2;4];

Err_user=0.01;

N=500;

[m,n]=size(A);

X=zeros(n,1);

k=1;

while k<=N;

Xk=X;

for i=1:n

for j=1:n

if i~=j

AX(j)=A(i,j)*Xk(j);

end

end

Sum_AX=sum(AX);

AX=0;

X(i)=(B(i)-Sum_AX)/A(i,i);

end

E=max(abs(Xk-X));

if E

break;

end

k=k+1;

end

disp(X); %显示迭代结果

disp(k); %显示迭代次数

(2)高斯-赛德尔迭代法程序

相关主题