矩阵的LU分解(自编MATLAB)实验报告31893.pdf

上传人:得** 文档编号:75794871 上传时间:2023-03-05 格式:PDF 页数:7 大小:363.60KB
返回 下载 相关 举报
矩阵的LU分解(自编MATLAB)实验报告31893.pdf_第1页
第1页 / 共7页
矩阵的LU分解(自编MATLAB)实验报告31893.pdf_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《矩阵的LU分解(自编MATLAB)实验报告31893.pdf》由会员分享,可在线阅读,更多相关《矩阵的LU分解(自编MATLAB)实验报告31893.pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.1/7 1 矩阵的LU分解 1.1 LU 分解原理 定理:设ACnn,如果A的顺序主子式 0,0,,0 则存在唯一的主对角线上元素全为 1 的下三角矩阵L与唯一的上三角矩阵U,使得 A=LU.证明:对矩阵A的阶数使用数学归纳法.显然,当 n=1 时,=1就是唯一的分解式。现假定对 n-1 阶矩阵,定理的结论成立。对A进行分块 A=其中.由于 n-1 阶矩阵的k阶顺序主子式就是 A 的k阶主子式(k=1,2,n-2),故它们都不为零.从而由归纳法假设,有唯一的LU分解 其中的主对角线上的元素都 1.由于=0 所以是 n-1 阶可逆矩阵 先假设已有A=LU,其中 L=,U=.2/7,=A 则,是

2、 n-1 阶可逆矩阵,则由上式可惟一确定,这就证明了A的 LU分解的存在性和唯一性.1.2 LU 分解算法 当n 阶矩阵满足定理的条件时,可以用初等变换的方法求出L和 U.因为当A=LU时,由于L 可逆,故必存在可逆矩阵P 使得 即PA=PLU=U.也就是说,可以先对A施行行的初等变换得出上三角矩阵U,而矩阵P可以通过对单位矩阵I进行相同的行初等变换得出,即 P(A,I)(PA,PI)(U,P)于是,为保持P为下三角矩阵(从而也是下三角矩阵),在进行行初等变换时,不能进行行的对换,上行的倍数应加到下行的对应元.1.3 LU 分解用于解方程组 矩阵的三角分解在求解线性方程组时十分方便.如对线性方

3、程组 由于 是下三角矩阵,则解向量 可以通过依次求出其分量而求出,在求解方程组可以通过该方程组依次求出分量而快速得出.于是由两个方程组的求解而给出 的解.1.4 程序流程图 .3/7 输入矩阵A判断A是否为nn矩阵?计算A的n-1阶顺序主子式是否为0?输出:“无法进行LU分解”设定 n 阶单位矩阵L和全零矩阵 U输出L,U是是否否计算U 的第一行 U1j=A1j j=1,2,n计算L 的第一列U 的第 r 行(逐行算出)L 的第 r 列(逐列算出)1.5 MATLAB 程序 function f=LU_decom(A)m,n=size(A)if m=n.4/7 fprintf(Error:m

4、and n must be equal!m=%d,n=%dn,m,n)end for i=1:n-1 if(det(A(1:i,1:i)=0)fprintf(Error:det A(%d,%d)=0!n,i,i)flag=failure return;else flag=ok;end end L=eye(n);U=zeros(n);for i=1:n U(1,i)=A(1,i);end for r=2:n L(r,1)=A(r,1)/U(1,1);end for i=2:n for j=i:n z=0;for r=1:i-1 z=z+L(i,r)*U(r,j);end U(i,j)=A(i,j

5、)-z;end if abs(U(i,i)A=2 1 1;4 1 0;-2 2 1;LU_decom(A)m=3 n=3 L=1 0 0 2 1 0 -1 -3 1 U=2 1 1.6/7 0 -1 -2 0 0 -4(2)解方程组,程序与结果如下%-用LU分解解线性方程组-y=zeros(n,1);y(1)=b(1);for i=2:n y(i)=b(i)-sum(L(i,1:i-1).*y(1:i-1);end y x(n)=y(n)/U(n,n);for i=n-1:-1:1 x(i)=(y(i)-sum(U(i,i+1:n).*x(i+1)/U(i,i);end x=x 运行结果如下:y=1 0 2 x=-0.5000 1.0000 -0.5000 1.7 数据分析 调用MATLAB固有的LU分解函数,以与解方程组相关函数对以上数据进行计算,运行结果如下:A=2 1 1;4 1 0;-2 2 1;b=1 2 1;L,U=lu(A)L=0.5000 0.2000 1.0000.7/7 1.0000 0 0 -0.5000 1.0000 0 U=4.0000 1.0000 0 0 2.5000 1.0000 0 0 0.8000 X=inv(A)*b X=0.2500 1.0000 -0.5000 经比对结果相同,可见以上程序可行。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁