Beruflich Dokumente
Kultur Dokumente
Doolittle LU decomposition
Cholesky Method
Matlab-Code
[m,n]=size(a);
l=a;
if m~=n
disp('Matrix entered is not a sqaure matrix')
else
for i=2:n
sum=0;
for j=1:i-1
sum=sum+l(i,j)*z(j);
end
z(1)=b(1)
z(i)=(b(i)-sum)
end
for i=n:-1:1
sum1=0;
for j=i+1:n
sum1=sum1+a(i,j)*x(j);
end
x(i)=(z(i)-sum1)/a(i,i)
end
end
OUTPUT
enter matrix a :[1 4 1;1 6 -1;2 -1 2]
z=
7.0000
-93.8000
-431.1000
z=
7.0000
6.0000
-431.1000
z=
7.0000
6.0000
-431.1000
z=
7
6
18
x=
-44.9000 1.0000 -2.0000
x=
-44.9000 1.0000 -2.0000
x=
5 1 -2
Cholesky Method
clc;
clear all;
%A = [-2 -1 0 ; -1 -2 -1 ; 0 -1 1] ;
%B = [1 ; 0 ; 0] ;
[m,n]=size(A);
C=zeros(n);
for i=1:m
for j=1:n
C(i,j)=A(j,i);
end
end
if (C==A)
disp('Matrix A is a symmetric matrix ');
E=eig(A);
for i=1:m
if E(i,1)>0
kishan=1;
else
kishan=0;
end
end
if kishan==1
disp('Matrix A is positve Definite ');
for i=1:n
if i==1
for j=i+1:n
u(i,i)=sqrt(A(i,i))
u(i,j)=A(i,j)/u(i,i)
end
end
end
i=i+1;
end
l=u';
z=zeros(n,1);
else
disp('Matrix A is symmetric but not positive definite matrix');
disp('cholesky decomposition method cannot be applied');
end
else
disp('Matrix A is not a symmetric matrix');
disp('cholesky decomposition method cannot be applied');
end
OUTPUT:
enter matrix a :[10 -1 2;-1 12 -1;2 -1 20]
enter matrix b :[11 10 21]
u=
3.1623
u=
3.1623 -0.3162
u=
3.1623 -0.3162
u=
3.1623 -0.3162 0.6325
u=
3.1623 -0.3162 0.6325
0 3.4496 0
u=
3.1623 -0.3162 0.6325
0 3.4496 -0.2319
u=
3.1623 -0.3162 0.6325
0 3.4496 -0.2319
0 0 4.4211
z=
3.4785
0
0
z=
3.4785
3.2177
0
z=
3.4785
3.2177
4.4211
x=
001
x=
0 1.0000 1.0000
x=
1.0000 1.0000 1.0000