数值分析(06)矩阵分解法

数值分析(06)矩阵分解法

ID:5617737

大小:946.00 KB

页数:69页

时间:2017-11-16

数值分析(06)矩阵分解法_第1页
数值分析(06)矩阵分解法_第2页
数值分析(06)矩阵分解法_第3页
数值分析(06)矩阵分解法_第4页
数值分析(06)矩阵分解法_第5页
资源描述:

《数值分析(06)矩阵分解法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、顺序高斯消元的基本思想:将矩阵A的下三角部分消为零,即第三节矩阵的三角分解法一、矩阵三角分解的基本定理顺序高斯消元与LU分解的等价性进行到第k步消元时其中消元过程全部完成后,原来的二维数组中存放的元素实际上是一个新的矩阵,记为functionA=lud(A)%功能:对方阵A作三角分解A=LU,其中,%L为单位下三角阵,U为上三角阵,%输入:方阵A。%输出:紧凑存储A=[LU].%注意:当A的主元=0时退出Matlab.LU分解的MATLAB程序[n,n]=size(A);%确定A的维数fork=1:n-1fori=k+1

2、:nifA(k,k)==0quit;endA(i,k)=A(i,k)/A(k,k);A(i,k+1:n)=A(i,k+1:n)-A(i,k)*A(k,k+1:n);endendfunctionA=lud(A)%功能:对方阵A作三角分解A=LU,其中,%L为单位下三角阵,U为上三角阵,%输入:方阵A。%输出:紧凑存储A=[LU].LU分解的MATLAB程序[n,n]=size(A);%确定A的维数fork=1:n-1ifA(k,k)==0break;endfori=k+1:nA(i,k)=A(i,k)/A(k,k);A(i

3、,k+1:n)=A(i,k+1:n)-A(i,k)*A(k,k+1:n);endendfunctionA=lud(A)%功能:对方阵A作三角分解A=LU,其中,%L为单位下三角阵,U为上三角阵,%输入:方阵A。%输出:紧凑存储A=[LU].[n,n]=size(A);%确定A的维数fork=1:n-1ifA(k,k)==0break;endA(k+1:n,k)=A(k+1:n,k)/A(k,k);A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);endLU分解的MAT

4、LAB程序推论1推论2列主元LU分解Lupd.m%功能:对方阵A作列主元三角分解PA=LU,其中,%L为单位下三角阵,U为上三角阵,排列阵P%用向量p表示。%输入:方阵A。%输出:紧凑存储LU=[LU],以及p。%注意:当A奇异时退出Matlab.function[LU,p]=lupd(A)%初始化n=length(A);p=1:n;LU=A;%分解过程fork=1:n%搜索列主元ik[s,i]=max(abs(LU(k:n,k)));ik=i+k-1;算法3-3列主元三角分解:PA=LU%判断矩阵的奇异性ifs==0q

5、uit;end%行交换ifik~=km=p(k);p(k)=p(ik);p(ik)=m;lk=LU(k,:);LU(k,:)=LU(ik,:);LU(ik,:)=lk;end%用消元法计算LU=[LU]ifk==nbreak;endLU(k+1:n,k)=LU(k+1:n,k)/LU(k,k);LU(k+1:n,k+1:n)=LU(k+1:n,k+1:n)-LU(k+1:n,k)*…LU(k,k+1:n);endA=[01-12;-1001;2-101;1301][L,U,P]=lu(A)[L,U]=lu(A)MATLA

6、B实现lupdsv.m%功能:调用列主元三角分解函数[LU,p]=lupd(A)%求解线性方程组Ax=b。%解法:PA=LU,Ax=b←→PAx=Pb%LUx=Pb,y=Ux%Ly=f=Pb,f(i)=b(p(i))%输入:方阵A,右端项b(行或列向量均可)%输出:解x(行向量)functionx=lupdsv(A,b)n=length(b);[LU,p]=lupd(A);y(1)=b(p(1));fori=2:ny(i)=b(p(i))-LU(i,1:i-1)*y(1:i-1)';endx(n)=y(n)/LU(n,n)

7、;fori=(n-1):-1:1x(i)=(y(i)-LU(i,i+1:n)*x(i+1:n)')/LU(i,i);end全主元LU分解Lupqd.m%功能:对方阵A作全主元三角分解PAQT=LU,其中,%L为单位下三角阵,U为上三角阵,排列阵P%和Q分别用向量p,q表示。%输入:方阵A。%输出:紧凑存储LU=[LU],以及p和q。%注意:当A奇异时退出Matlab.function[LU,p,q]=lupqd(A)%初始化n=length(A);p=1:n;q=p;LU=A;%分解过程fork=1:n%搜索全主元(ik

8、,jk)[xk,I]=max(abs(LU(k:n,k:n)));%列最大值及所在行[s,j]=max(xk);ik=I(j)+k-1;jk=j+k-1;%判断矩阵的奇异性ifs==0quit;end%行交换和列交换ifik~=km=p(k);p(k)=p(ik);p(ik)=m;lk=LU(k,:);

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

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

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