永发信息网

用MATLAB编写矩阵A的LU分解程序.要求必须用数学软件MATLAB编写程序.

答案:2  悬赏:80  手机版
解决时间 2021-02-08 01:06
  • 提问者网友:回忆在搜索
  • 2021-02-07 09:45
用MATLAB编写矩阵A的LU分解程序.要求必须用数学软件MATLAB编写程序.
最佳答案
  • 五星知识达人网友:独行浪子会拥风
  • 2021-02-07 09:53
里面有自带的LU分解函数,你可在帮助文档搜索 LU给你一个我自己写的LU分解函数function [myl,myu,x]=MYLU(A,b)%依据《现代电力系统分析》编制的LU分解程序.%matlab自带的lu函数与书上所讲略有不同,不方便参照课本步骤进行后续计算.%A为待分解的矩阵,myl为分解后下三角矩阵,myu为分解后的上三角矩阵,未考虑单独的对角阵D%clc%A=[5,0,0,5,1;2,1,1,0,0;0,1,2,0,10;1,0,5,1,0;1,1,0,3,10] %两组测试用矩阵方程%b=[1,3,3,4,1]';%M=[1,2,1,1;2,1,0,0;1,0,1,0;1,0,0,1]%b=[-1,1,2,0]'%A=[2,3,1;3,7,-1;5,-4,2]%b=[12,13,5]'n=length(A);myl=speye(n); %可以先不分配内存,由系统自动分配内存myu=speye(n);%y=(zeros(1,n))';x=(zeros(1,n))';y(1)=b(1)/myl(1,1);%解Ly=bfor i=2:np=0;for k=1:i-1p=p+myl(i,k)*y(k);endy(i)=(b(i)-p)/myl(i,i);end%C=(myl*y) %测试Ly=b,如果相等表明结果正确x(n)=y(n);for i=1:n-1p=0;for k=n-i+1:np=p+myu(n-i,k)*x(k);endx(n-i)=y(n-i)-p;end%D=myl*myu*x里面注释部分可以删除
全部回答
  • 1楼网友:刀戟声无边
  • 2021-02-07 11:27
这个解释是对的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯