数值分析(06)矩阵的三角分解_第1页
数值分析(06)矩阵的三角分解_第2页
数值分析(06)矩阵的三角分解_第3页
数值分析(06)矩阵的三角分解_第4页
数值分析(06)矩阵的三角分解_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、 第五节 高斯变换阵与矩阵的三角分解一、Gauss变换阵定义Gauss变换阵为数值分析数值分析数值分析数值分析Gauss变换阵的性质:数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析Gauss变换阵的作用:数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析mi2=xi/x2 (i=3,4) -m32=-x3/x2=2-m42=-x4/x2=-3 顺序高斯消元的基本思想:将矩阵A的下三角部分消为零,即二、矩阵的三角分解1. 顺序高斯消元与LU分解的等价性数值分析数值分析数值分析数值分析数值分析数值分析则有 A=LU 上三角单位下三角数值分析数值分析 数值分析数值分析

2、数值分析数值分析数值分析数值分析进行到第k步消元时数值分析数值分析数值分析数值分析数值分析数值分析对A进行顺序高斯消元等价于对矩阵A的三角分解A=LU其中数值分析数值分析数值分析数值分析 消元过程全部完成后,原来的二维数组中存放的元素实际上是一个新的矩阵,记为数值分析数值分析function A=lud(A)%功能:对方阵A作三角分解A=LU,其中,% L为单位下三角阵,U为上三角阵,%输入:方阵A。%输出:紧凑存储A=LU.%注意:当A的主元=0时退出Matlab.LU分解的MATLAB程序n,n=size(A); % 确定A的维数for k=1:n-1 for i=k+1:n if A(k

3、,k) =0 quit; end A(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); endend数值分析数值分析2. 矩阵三角分解的基本定理数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析主要结论数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析3. Cholesky分解(平方根分解)(1) (用直接三角分解法)数值分析数值分析(k)若已求出了L的前k-1列元素,则为求第k列元素,先用L的第k行乘 LT的第k列数值分析数值分析再用L的第k行乘 LT的第j列( j=

4、k+1 ,k+2,n )有数值分析数值分析Cholesky分解公式数值分析数值分析数值分析数值分析 4. 列主元LU分解数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析数值分析MATLAB实现,格式 l,u,p=lu(A)数值分析数值分析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

5、=A;%分解过程for k=1:n %搜索列主元ik s,i=max(abs(LU(k:n,k); ik=i+k-1;数值分析数值分析%判断矩阵的奇异性if s=0 quit; end%行交换 if ik=k m=p(k); p(k)=p(ik); p(ik)=m; lk=LU(k,:); LU(k,:)=LU(ik,:); LU(ik,:)=lk; end%用消元法计算LU=LU if k=n break; end LU(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)

6、;end数值分析数值分析5. 全主元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;数值分析数值分析%分解过程for k=1:n %搜索全主元(ik,jk)xk,I=max(abs(LU(k:n,k:n); %列最大值及所在行s,j=max(xk);ik=I(j)+k-1;

7、jk=j+k-1;%判断矩阵的奇异性if s=0 quit; end%行交换和列交换 if ik=k m=p(k); p(k)=p(ik); p(ik)=m; lk=LU(k,:); LU(k,:)=LU(ik,:); LU(ik,:)=lk; end数值分析数值分析if jk=k m=q(k); q(k)=q(jk); q(jk)=m; ck=LU(:,k); LU(:,k)=LU(:,jk); LU(:,jk)=ck;end%用消元法计算LU=LU if k=n break; end LU(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

温馨提示

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

评论

0/150

提交评论