Skip to content
Permalink
940eb8910e
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
27 lines (20 sloc) 620 Bytes
function [ud,uo,lo]=lu_tridiag(e,f,g)
%Takes main diaganol and diaganol to the top and bottom and make matrix A
%and then an Identity matrix B is made.
%The matrix A is then turned into the upper matrix while B turns into the
%lower matrix in LU decomposition.
%The function outputs the main diagnol of the upper matrix and the off
%diagnol of the lower and upper matrices.
A=diag(e,-1)+ diag(f)+diag(g,1);
B=eye(length(f));
for i=1:length(e)
x=A(i+1,i)/A(i,i);
A(i+1,i)= (-e(i)/f(i))*f(i)+e(i);
A(i+1,i+1)= (-x)*g(i)+f(i+1);
B(i+1,i)=x;
ud(1)=A(1,1);
ud(i+1)= A(i+1,i+1);
uo(i)=A(i,i+1);
lo(i)=B(i+1,i);
end
end