中易网

请matlab高手帮忙指点 以下是程序 望高手解释一下程序的意思及运行方法,这是LU分解 问题补充里面有程序

答案:2  悬赏:20  
解决时间 2021-03-07 09:43
function [x,L,U]= Doolittle (A,b)
N = size(A);
n = N(1);
L = eye(n,n); %L的对角元素为1
U = zeros(n,n);

U(1,1:n) = A(1,1:n); %U的第一行
L(1:n,1) = A(1:n,1)/U(1,1); %L的第一列

for k=2:n
for i=k:n
U(k,i) = A(k,i)-L(k,1:(k-1))*U(1:(k-1),i);
%U的第k行
end
for j=(k+1):n
L(j,k) = (A(j,k)-L(j,1:(k-1))*U(1:(k-1),k))/U(k,k);
%L的第k列
end
end

y = SolveDownTriangle(L,b);
x = SolveUpTriangle(U,y); %求解方程
最佳答案
先做LU分解,A=L*U。
再解 L*y=b
U*x=y
还缺 SolveDownTriangle.m 和SolveUpTriangle.m 2个程序文件。
否则 [x,L,U]= Doolittle (A,b) 就出结果。
全部回答
matlab有多种lu分解程序下面算一种: function [l,u]=mylu(a) %实现对矩阵a的lu分解,l为下三角矩阵 a [n,n]=size(a); l=zeros(n,n); u=zeros(n,n); for i=1:n l(i,i)=1; end for k=1:n for j=k:n u(k,j)=a(k,j)-sum(l(k,1:k-1).*u(1:k-1,j)'); end for i=k+1:n l(i,k)=(a(i,k)-sum(l(i,1:k-1).*u(1:k-1,k)'))/u(k,k); end end 用法,在控制台输入 a=[1 2 3 -4;-3 -4 -12 13;2 10 0 -3;4 14 9 -13];
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
陆子鞋服超市这个地址在什么地方,我要处理点
仓库货架用钢管好还是用架子管好?
我现在苏州吴中区通达路仁恒,请问哪个火车票
简·厨漯河店我想知道这个在什么地方
纪念12.9的作文
农业银行的卡能在农商银行激活吗
帮忙配置H3C s2626交换机
我11年读完初二上册就辍学了,现在想去读中专
你喜欢的未必适合你,在你身边的永远才是最好
电动车伤人,逃逸最高赔偿多少
by2《就这样吗》二姐妹歌词的分配是怎么样的
国际贸易换货怎么避免缴纳增值税
神州专车司机下班后怎么回家
根志堂骨病健康中心柳州总店地址在什么地方,
求 int 2F int 31 int cc 这三条汇编指令的解
推荐资讯
耳放的低噪是不是无法避免
293-52十48简便计算
淘宝楚楚街里买东西怎么给好评
苏州市演艺行业联合会我想知道这个在什么地方
黄檀木和胡桃木哪个好
求一段相声,是关于给人写书:其中有的一段写
长沙怎么查啊?公积金帐号查询?
丢了幸福的猪怎么配情侣网名?
几星级的酒店可以配泳池
唯美婚纱艺术摄影怎么去啊,有知道地址的么
解关于x的方程x的x-5次方=1
RAID组0变为降级状态什么意思?求解释,谢谢
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?