Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
clc clear n = 4; A = [225 0 -25 0; 0 175 0 -125; -225 0 275 -50; 0 -25 -250 275]; b = [1400 100 2000 0]; L = zeros(n,n); U = zeros(n,n); for j=1:n L(j,j) = 1; for i=1:j soma = 0.0; for k=1:i-1 soma = soma + L(i,k)*U(k,j); end U(i,j) = A(i,j) - soma; end for i=j+1:n soma = 0.0; for k=1:j-1 soma = soma + L(i,k)*U(k,j); end L(i,j) = (A(i,j)-soma)/U(j,j); end end printf('Matriz L: \n') disp(L) printf('\nMatriz U: \n') disp(U) printf('\nMatriz LU: \n') disp(L*U) printf('\nMatriz A: \n') disp(A) // resolve L y = b: substituicao progressiva y = zeros(1,n); y(1) = b(1)/L(1,1); for i=2:n soma = 0.0; for j=1:i-1 soma = soma + L(i,j)*y(j); end y(i) = (b(i)-soma)/L(i,i); end // resolve U x = y: substituicao regressiva x(n) = y(n)/U(n,n); for i=n-1:-1:1 soma = 0.0; for j=i+1:n soma = soma + U(i,j)*x(j); end x(i) = (y(i)-soma)/U(i,i); end printf('Resultados: \n') disp(x)
Compartilhar