数值分析实验报告汇总_第1页
数值分析实验报告汇总_第2页
数值分析实验报告汇总_第3页
数值分析实验报告汇总_第4页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一、误差分析一、实验目的1通过上机编程,复习巩固以前所学程序设计语言及上机操作指令;2通过上机计算,了解误差、绝对误差、误差界、相对误差界的有关概念;3通过上机计算,了解舍入误差所引起的数值不稳定性。二实验原理误差问题是数值分析的基础,又是数值分析中一个困难的课题。在实际计算中, 如果选用了不同的算法,由于舍入误差的影响, 将会得到截然不同的结果。因此, 选取算法时注重分析舍入误差的影响, 在实际计算中是十分重要的。 同时, 由于在数值求解过程中用有限的过程代替无限的过程会产生截断误差,因此算法的好坏会影响到数值结果的精度。三实验内容对 n0,1,2,20 ,计算定积分yn1x ndxx0

2、5.算法 1:利用递推公式yn15 yn 1n1,2,20 ,n,11 dx ln 6 ln 5 0.1 8 2 3 2 2y0取0x5.算法 2:利用递推公式yn 1115nynn20,19,1 .5注意到11 1x20 dx1x 20dx1 1x20 dx11266 00x55 0105,y201 ( 11 ) 0.008730取201 0 51 2 6.:四.实验程序及运行结果程序一 :t=log(6)-log(5);n=1;y(1)=t;for k=2:1:20y(k)=1/k-5*y(k-1);n=n+1;endyy =0.0884 y =0.0581 y =0.0431 y =0.

3、0346 y =0.0271 y =0.0313 y =-0.0134 y =0.1920 y =-0.8487 y =4.3436 y =-21.6268 y =108.2176 y =-541.0110y =2.7051e+003 y =-1.3526e+004 y =6.7628e+004 y =-3.3814e+005 y =1.6907e+006 y =-8.4535e+006y =4.2267e+007程序 2:y=zeros(20,1);n=1;y1=(1/105+1/126)/2;y(20)=y1;for k=20:-1:2y(k-1)=1/(5*k)-(1/5)*y(k);n

4、=n+1;end运行结果: y =0.08840.05800.04310.03430.02850.02120.01880.01690.01540.01410.01300.01200.01120.01050.00990.00930.0089实验二、插值法一、实验目的1、理解插值的基本概念,掌握各种插值方法,包括拉格朗日插值和牛顿插值等,注意其不同特点;2、通过实验进一步理解并掌握各种插值的基本算法。二实验原理插值法是函数逼近的一种重要方法,它是数值积分、 微分方程数值解等数值计算的基础与工具, 其中多项式插值是最常用和最基本的方法。拉格朗日插值多项式的优点是表达式简单明确,形式对称,便于记忆,它

5、的缺点是如果想要增加插值节点,公式必须整个改变,这就增加了计算工作量。而牛顿插值多项式对此做了改进,当增加一个节点时只需在原牛顿插值多项式基础上增加一项,此时原有的项无需改变,从而达到节省计算次数、节约存储单元、应用较少节点达到应有精度的目的。三实验内容1、 已知函数表xi0.561600.562800.564010.56521yi0.827410.826590.825770.82495用二次拉格朗日插值多项式求x0.5635时的函数近似值。2、 已知函数表xi0.40.550.650.80.9yi0.410750.57815 0.696750.888111.02652用牛顿插值多项式求N3

6、(0.596) 和 N4 ( 0.895)。四实验程序及运行结果1.程序如下:function y,R=lagranzi(X,Y,x,M)n=length(X); m=length(x);for i=1:mz=x(i);s=0.0;for k=1:np=1.0; q1=1.0; c1=1.0;for j=1:nif j=kp=p*(z-X(j)/(X(k)-X(j);endq1=abs(q1*(z-X(j);c1=c1*j;ends=p*Y(k)+s;endy(i)=s;endR=M*q1/c1;在 MA TLAB工作窗口输入程序: x=0.5635; M=1; X=0.56280,0.564

7、01; Y=0.82659,0.82577; y,R=lagranzi(X,Y ,x,M)实验结果如下:y =0.8261R =1.7850e-0072.程序如下:function y,R= newcz(X,Y,x,M)n=length(X); m=length(x);for t=1:mz=x(t); A=zeros(n,n);A(:,1)=Y;s=0.0; p=1.0; q1=1.0; c1=1.0;forj=2:nfor i=j:nendA(i,j)=(A(i,j-1)-A(i-1,j-1)/(X(i)-X(i-j+1);q1=abs(q1*(z-X(j-1);c1=c1*j;endC=A

8、(n,n);q1=abs(q1*(z-X(n);for k=(n-1):-1:1C=conv(C,poly(X(k);d=length(C); C(d)=C(d)+A(k,k);endy(k)= polyval(C, z);endR=M*q1/c1;在 MA TLAB 工作窗口输入程序:三次牛顿差值程序如下: X=0.4,0.55,0.6; Y=0.41075,0.57815,0.69675; y,R= newcz(X,Y ,x,M)实验结果如下:y =0.6861R =6.0107e-006四次牛顿差值程序如下: x=0.895; X=0.55,0.65,0.8,0.9; Y=0.57815

9、,0.69675,0.88811,1.02652;实验结果如下:y =1.0194R =1.6729e-006实验三、解线性方程组的直接法一、实验目的1了解求线性方程组的直接法的有关理论和方法;2会编制列主元消去法、LU 分解法的程序;二实验原理解线性方程组的直接法是指经过有限步运算后能求得方程组精确解的方法。 但由于实际计算中舍入误差是客观存在的, 因而使用这类方法也只能得到近似解。 目前较实用的直接法是古老的高斯消去法的变形, 即主元素消去法及矩阵的三角分解法。 引进选主元的技巧是为了控制计算过程中舍入误差的增长, 减少舍入误差的影响。 一般说来, 列主元消去法及列主元三角分解法是数值稳定

10、的算法,它具有精确度较高、计算量不大和算法组织容易等优点,是目前计算机上解中、小型稠密矩阵方程组可靠而有效的常用方法。三实验内容1. 用列主元高斯消去法求解方程组0. 101x1 2.304 x2 3.555x3 1.1831.347 x13.712x24.623x32.137 .2.835x11.072x25.643x33.0352用矩阵直接三角分解法求解方程组Axb ,其中12128275472b4A795,.3116128349四实验程序及运行结果1.主程序function RA,RB,n,X=liezhu(A,b)B=A b; n=length(b); RA=rank(A);RB=ra

11、nk(B);zhica=RB-RA;if zhica0,disp( 请注意:因为RA=RB ,所以此方程组无解.)returnendif RA=RBif RA=ndisp( 请注意:因为RA=RB=n ,所以此方程组有唯一解.)X=zeros(n,1); C=zeros(1,n+1);for p= 1:n-1Y,j=max(abs(B(p:n,p); C=B(p,:);B(p,:)= B(j+p-1,:); B(j+p-1,:)=C;for k=p+1:nm= B(k,p)/ B(p,p);B(k,p:n+1)= B(k,p:n+1)-m* B(p,p:n+1);endendb=B(1:n,n

12、+1);A=B(1:n,1:n); X(n)=b(n)/A(n,n);for q=n-1:-1:1 X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)/A(q,q); endelsedisp( 请注意:因为RA=RB A=0.101 2.304 3.555;-1.347 3.712 4.623;-2.835 1.072 5.643; b=1.183;2.137;3.035;RA,RB,n,x=liezhu(A,b)运行结果 RA =3RB =3n =3x =-0.39820.01380.33512.主程序function X=LUjfcz(A,b)n,n =size(A);X

13、=zeros(n,1);Y=zeros(n,1);C=zeros(1,n);r=1:n;for p=1:n-1max1,j=max(abs(A(p:n,p);C=A(p,:);A(p,:)= A(j+p-1,:);A(j+p-1,:)=C;g=r(p);r(p)= r(j+p-1);r(j+p-1)=g;if A(p,p)=0disp(A 是奇异阵 ,方程组无唯一解);break;endfor k=p+1:nH= A(k,p)/A(p,p);A(k,p) = H;A(k,p+1:n)=A(k,p+1:n)- H* A(p,p+1:n);endendY(1)=b(r(1);for k=2:nY(

14、k)= b(r(k)- A(k,1:k-1)* Y(1:k-1);endX(n)= Y(n)/ A(n,n);for i=n-1:-1:1X(i)= (Y(i)- A(i, i+1:n) * X (i+1:n)/ A(i,i);end在 MA TLAB工作窗口输入程序: A=1 2 -12 8;5 4 7 -2;-3 7 9 5;6 -12 -8 3; b=27;4;11;49;X=LUjfcz(A,b)运行结果X =3.0000-2.00001.00005.0000实验四、解线性方程组的迭代法一、实验目的1、熟悉迭代法的有关理论和方法;2、会编制雅可比迭代法、高斯-塞德尔迭代法的程序;3、注

15、意所用方法的收敛性及其收敛速度问题。二实验原理解线性方程组的迭代法是用某种极限过程去逐步逼近线性方程组精确解的方法, 即是从一个初始向量 出发,按照一定的迭代格式产生一个向量序列 ,使其收敛到方程组 的解。迭代法的优点是所需计算机存储单元少, 程序设计简单, 原始系数矩阵在计算过程中始终不变等。但迭代法存在收敛性及收敛速度问题。迭代法是解大型稀疏矩阵方程组的重要方法。三.实验内容1. 用改进欧拉法解 y xy2 0 x 5 . y(0) 2yxy20x52用龙格 -库塔方法求解y(0)2四.实验程序及运行结果1.主程序function X=jacdd(A,b,X0,P,wucha,max1)n

16、 m=size(A);for j=1:ma(j)=sum(abs(A(:,j)-2*(abs(A(j,j);endfor k=1:max1kfor j=1:mX(j)=(b(j)-A(j,1:j-1,j+1:m)*X0(1:j-1,j+1:m)/A(j,j);endX,djwcX=norm(X-X0,P); xdwcX=djwcX/(norm(X,P)+eps); X0=X;X1=Ab; if (djwcXwucha)&(xdwcXwucha)&(xdwcXwucha)disp( 请注意:雅可比迭代次数已经超过最大迭代次数max1 )enda,X=X;jX=X1,在 MA TLAB工作窗口输入

17、程序: A=1 2 -2;1 1 1;2 2 1; b=7;2;5;X=jacdd(A,b,X0,P,wucha,max1)运行结果X =12-12.主程序function X=gsdddy(A,b,X0,P,wucha,max1)D=diag(diag(A);U=-triu(A,1);L=-tril(A,-1); dD=det(D);if dD=0disp( 请注意:因为对角矩阵D 奇异,所以此方程组无解.)elsedisp( 请注意:因为对角矩阵D 非奇异,所以此方程组有解.)iD=inv(D-L); B2=iD*U;f2=iD*b;jX=Ab; X=X0;n m=size(A);for

18、k=1:max1X1= B2*X+f2; djwcX=norm(X1-X,P);xdwcX=djwcX/(norm(X,P)+eps);if (djwcXwucha)|(xdwcXwucha)returnelsek,X1,k=k+1;X=X1;endendif (djwcXwucha)|(xdwcX A=1 0.9 0.9;0.9 1 0.9;0.9 0.9 1; b=1.9;2.0;1.7;X0=0 0 0;X=gsdddy(A,b,X0,inf, 0.001,100)运行结果k =1ans =1.90000.2900-0.2710k =2ans =1.88290.5493-0.4890k

19、=3ans =1.84570.7789-0.6622k =4ans =1.79490.9805-0.7979k =5ans =1.73561.1560-0.9025k =6ans =1.67181.3076-0.9815k =7ans =1.60651.4375-1.0396k =8ans =1.54191.5479-1.0808k =9ans =1.47961.6411-1.1086k =10ans =1.42081.7191-1.1259k =11ans =1.36611.7838-1.1349k =12ans =1.31601.8370-1.1377k =13ans =1.27061.8804-1.1359k =14ans =1.23001.9153-1.1308k =15ans =1.19391.9432-1.1234k =16ans =1.16221.9651-1.1145k =17ans =1.13451.9820-1.1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论