Está en la página 1de 1

Método Thomas (MatLab)

a=[5,4,-3,6,8,-4];
b=[7,8,4,-1,-5];
c=[1,-2,5,-9];
d=[3,6,-6,5,7];
x=zeros(1,5);
M=zeros(5,5);
for i=1:4
b(i+1)=b(i+1)-(a(i+1)/b(i))*c(i);
d(i+1)=d(i+1)-(a(i+1)/b(i))*d(i);
end
for i=1:4
M(i,i)=b(i);
M(i,i+1)=c(i);
end
M(5,5)=b(5);
x(5)= ((1/b(5))*d(5));
for k=4:-1:1
x(k)=(1/b(k))*(d(k)-c(k)*x(k+1));
end
fprintf('M=');
disp(M);
fprintf('d=');
disp(d);
for j=1:5
fprintf('\nx%d= %f\n',j,x(j));
end
Resultado

También podría gustarte