1. 该方法只适用于对称正定矩阵
所以我们可以解得L
代入原方程组即可
2. MATLAB代码
function [L]=mycholesky (A)
n=length(A);
for k=1:n
A(k,k)=sqrt(A(k,k));
A(k+1:n,k)=A(k+1:n,k)/A(k,k);
for j=k+1:n
A(j:n,j)=A(j:n,j)-A(j:n,k)*A(j,k);
end
end
L=tril(A);
1. 该方法只适用于对称正定矩阵
所以我们可以解得L
代入原方程组即可
2. MATLAB代码
function [L]=mycholesky (A)
n=length(A);
for k=1:n
A(k,k)=sqrt(A(k,k));
A(k+1:n,k)=A(k+1:n,k)/A(k,k);
for j=k+1:n
A(j:n,j)=A(j:n,j)-A(j:n,k)*A(j,k);
end
end
L=tril(A);