pmlu.m
来自「CG共轭梯度法迭代解矩阵方程」· M 代码 · 共 21 行
M
21 行
function[L,U]=pmlu(A)%部分选主元函数
[n,n]=size(A);
U=A;
L=eye(n,n);
P=eye(n,n);
t=eye(n,n);
l=eye(n,n);
c=eye(n,n);
for k=1:n-1
for m=1:n-1
[i,h]=max(abs(U(k:n,m))); %选择i>=k,使|uik|最大
t(k,k:n)=A(k,k:n);A(k,k:n)=A(i,k:n);A(i,k:n)=t(k,k:n);%交换两行
l(k,1:k-1)=L(k,1:k-1);L(k,1:k-1)=L(i,1:k-1);L(i,1:k-1)=l(k,1:k-1);
c(k,:)=P(k,:);P(k,:)=P(i,:);P(i,:)=c(k,:);
end
for j=k+1:n
L(j,k)=U(j,k)/U(k,k);
U(j,k:n)=U(j,k:n)-L(j,k)'*U(k,k:n);
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?