数值分析实验报告二.doc

数值分析实验报告二.doc

ID:51998527

大小:79.50 KB

页数:7页

时间:2020-03-21

数值分析实验报告二.doc_第1页
数值分析实验报告二.doc_第2页
数值分析实验报告二.doc_第3页
数值分析实验报告二.doc_第4页
数值分析实验报告二.doc_第5页
资源描述:

《数值分析实验报告二.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数值实验报告二一、实验名称解线性方程组的列主元素高斯消去法和LU分解法二、实验目的通过数值实验,从屮体会解线性方程组选主元的必耍性和LU分解法的优点,以及方程组系数矩阵和右端向量的微小变化对解向量的影响。三、实验内容解下列两个线性方程纽'3.016.031.99、(2)四、算法描述1、列主元素高斯消去法记:aij}=atj(i,j=1,2,3…斤)=

2、bj(i=1,2,3)消元过程:对J*k=1,2,3⑴选行号L'使

3、哦卜max

4、。絆

5、。(2)交换硝)与4?(j=k,k+l,k+2・・F)以及附与曙所含的数值。(3)对于i=k,k+l,k+2…〃,计算回代过程:心=(4")一工砧%)/血)(k=n-l,n-2,n-3…1)j=k+在此算法中的4?称为第k个列主元素,它的数值总耍被交换到第k个主对角线元素的位置上。2、LU分解法通过MATLAB口有的函数,把系数矩阵A分解成A=LU,其中:L是下三角矩阵,U是上三和矩阵,这时方程组Ax=b就可以分解成两个容易求解的三角形方程组Ly=b,Ux

6、=yo先由Ly=b解出向量y,再由Ux二y解出向量x,即为原方程组Ax二b的解。五、程序流程图1、列主元素高斯消去法的M文件主程序:function[RA,RB,n,X]=1iezhu(A,b)B=[Ab];n=length(b);RA=rank(A);RB=rank(B);zhica=RB-RA;ifzhica>0,dispC请注意:因为RA〜=RB,所以此方程组无解.)returnendifRA==RBifRA==ndisp(请注意:因为RA=RB=n,所以此方程组有唯一解・')X=zeros(n,1);C=zeros(1zn+1);fo

7、rp=1:n-1[Y,j]=max(abs(B(p:n,p)));C=B(p,:);B(p,:)=B(j+p-1,:);B(j+p-1,:)=C;fork=p+l:nm=B(kzp)/B(p,p);B(kzp:n+l)=B(kzp:n+1)-m*B(p,p:n+l);endendb=B(1:n,n+l);A=B(1:n,1:n);X(n)=b(n)/A(n,n);forq=n-l:-1:1X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)))/A(qrq);endelsedisp「请注意:因为RA=RB

8、穷多解.')endend在MATLABT作窗口输入的程序为:»A=[3.01,6.03,1.99;1.27,4.16,-1.23;0.987,-4.81,9.34],b=[l;l;l],det(A),[RA,RB,n,X]=liezhu(A,b)★变化系数矩阵在MATLAB工作窗口中输入:»A=[3.00,6.03,1.99;1.27,4」6,-1,23;0.987,-4.81,9.34],b=

9、1;1;1],det(A)JRA,RB,n,X]=liezhu(A,b)2、LU分解法的M文件程序:functionhl=zhijieLU(A)[n

10、n]=size(A);RA=rank(A);ifRA〜=ndisp(谛注意:因为A的n阶行列式hl等丁•零,所以A不能进行LU分解.A的秩RA如下门RA,hl=det(A);returnendifRA==nforp=l:nh(p)=det(A(l:p,1:p));endhl=h(1:n);fori=l:nifh(lzi)==0disp「请注意:因为A的i•阶主子式等丁•零,所以A不能进行LU分解.A的秩RA和各阶顺序主了式值hl依次如下门returnendendifh(l,i)~=0dispCffl注意:因为A的各阶主子式都不等丁•家所以A能

11、进行LU分解.A的秩RA和各阶顺序主子式值hl依次如下门forj=l:nU(l,j)=A(lzj);endfork=2:nfori=2:nforj=2:nL(l,l)=l;L(i,i)=l;ifi>jL(1Z1)=1;L(2Z1)=A(2,1)/U(1,1);L(izl)=A(izl)/U(l,l);L(i,k)=(A(izk)-L(i,l:k-l)*U(1:k-l,k))/U(kzk);elseU(k,j)=A(k,j)-L(k,l:k-l)*U(l:k-l,j);endendendendhl;RA,U,Lendend在MATLABT作窗口

12、输入的程序为:»A=ll0,-7,0,l;-3,2.099999,6,2;5,-l,5,-l;2,l,0,2J,b=[8;5.900001;5;lJ,det(A),

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。