function [L] = Cho(A)
n=length(A);
L=zeros(n,n);
for i =1:n
A(i,i)=sqrt(A(i,i));
A(i+1:n,i)=A(i+1:n,i)/A(i,i);
for j =i+1:n
A(j:n,j)=A(j:n,j)-A(j:n,i)*A(j,i);
end
end
for j = 1:n
for k = 1:n
if j>=k
L(j,k) = A(j,k)' ; %将A矩阵转置并赋给L
end
end
end
disp(' L='); disp(L); % 验证一下结果,看下是否正确
disp(' LL''=');disp(L*L');
end
评论1