资源预览内容
第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
亲,该文档总共4页全部预览完了,如果喜欢就下载吧!
资源描述
计算机上机实验报告计算机上机实验报告课程名称:MATLAB 数值计算 教师姓名:谭小球 日期:2016 年 9 月 12 日 学号:150607116 学生姓名:李妙锋 班级:Z15 计算机 院系:数理与信息学院 实验题目:UL 分解实验报告1、实验名称、实验名称实现 LU 算法,并利用该算法求解线性方程组2、实验目的、实验目的了解如何用 LU 三角分解法解线性方程组,利用 LU 三角分解法解线性方程组3、实验原理、实验原理设无行交换变换的高斯消去法可求解一般线性方程组 AX=B,则矩阵 A 可分解为一个下三角矩阵 L 和一个上三角矩阵 U 乘积:A=LU而且 L 的对角线元素为 1,U 的对角线元素非零。得到 L 和 U 后,可通过如下步骤得到X:1.利用向前替换法对方程组 LY=B 求解 Y。2.利用回带法对方程组 UX=Y 求解 X。4、实验步骤、实验步骤1.输入矩阵 A2.LU 分解 A,得到 L 矩阵与 U 矩阵的值 L U=LU_1(A)3.输入矩阵 B,利用向前回带法求出 Y 值 Y=upsub(L,B)4.利用回带发求出 X 值 X=backsub(U,Y)5、实验程序、实验程序1.LU 分解代码:function L U=LU_1(A)n=length(A(1,:);L=eye(n);U=zeros(n);for j=1:nU(1,j)=A(1,j);endfor i=2:nL(i,1)=A(i,1)/U(1,1);endfor k=2:nfor j=k:nU(k,j)=A(k,j)-L(k,1:k-1)*U(1:k-1,j);endfor i=k+1:nL(i,k)=(A(i,k)-L(i,1:k-1)*U(1:k-1,k)/U(k,k);endend结果:2.向前回带法代码:%向前代入法function Y=upsub(A,B)n=length(B);Y=zeros(n,1);Y(1)=B(1)/A(1,1);for k=2:nY(k)=(B(k)-A(k,1:k-1)*Y(1:k-1)/A(k,k);end结果:3.回带法代码:%回代法function X=backsub(A,B)n=length(B);X=zeros(n,1); X(n)=B(n)/A(n,n);for k=n-1:(-1):1X(k)=(B(k)-A(k,k+1:n)*X(k+1:n)/A(k,k);end结果:6、实验分析、实验分析LU 分解法比较简便迅速,当解多个系数矩阵为 A 的线性方程做时,LU 分解法就显得特别优越,只要对系数矩阵做一次 LU 分解,以后只要解三角形方程即可。也可以根据系数矩阵的形状来设计算法。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号