数值分析第五章 第一题: LU 分解法: 建立 m文件 function h1=zhijieLU(A,b) %h1各 阶 主 子 式 的 行 列 式 值 [n n]=size(A);RA=rank(A); if RA~=n disp('请 注 意 : 因 为 A的 n阶 行 列 式 h1等 于 零 , 所 以 A不 能 进 行 LU分 解
A的 秩RA如下: ') RA,h1=det(A); return end if RA==n for p=1:n h(p)=det(A(1:p,1:p)); end h1=h(1:n); for i=1:n if h(1,i)==0 disp('请 注 意 : 因 为 A的 r阶 主 子 式 等 于 零 , 所 以 A不 能 进 行 LU分 解
A的 秩RA和各 阶 顺序主子 式 h1依次如下: ') h1;RA return end end if h(1,i)~=0 disp('请 注 意 : 因 为 A的 r阶 主 子 式 都不 等 于 零 , 所 以 A能 进 行 LU分 解
A的 秩RA和各 阶 顺序主 子式 h1依次如下: ') for j=1:n U(1,j)=A(1,j); end for k=2:n for i=2:n for j=2:n L(1,1)=1;L(i,i)=1; if i>j L(1,1)=1;L(2,1)=A(2,1)/U(1,1);L(i,1)=A(i,1)/U(1,1); L(i,k)=(A(i,k)-L(i,1:k-1)*U(1:k-1,k))/U(k,k); else U(k,j)=A(k,j)-L(k,1:k-1)*U(1:k-1,j); end end end end h1;RA,U,L, X=inv(U)*inv(L)*b en