Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
______________________________________________________________________
(1.01)
A figura acima mostra a forma matricial das equaes e pode ser resolvida atravs de
dois tipos de mtodos numricos, chamados de diretos e iterativos. Neste trabalho foi
utilizado um mtodo direto, chamado fatorao LU, no qual a matriz original
decomposta em duas matrizes diagonais, inferior (L) e superior (U), atravs de
sucessivas eliminaes de Gauss, tambm chamado de eliminao progressiva, e
ainda, utilizando o processo conhecido como pivotamento.
Aps a execuo desses processos determina-se o valor de uma das variveis e
utilizam-se as progresses regressivas ou progressivas, a fim de se encontrar os
valores das outras variveis. Os mtodos diretos realizam bem o trabalho de resoluo
at um nmero relativamente baixo de incgnitas, geralmente at trinta. Os mtodos
computacionais so utilizados na resoluo de sistemas lineares de equaes
algbricas devido extrema facilidade e velocidade que os computadores possuem de
realizar tarefas repetitivas, impossveis para os seres humanos.
2. Mtodo de decomposio LU
onde a matriz [L] uma matriz triangular inferior e a matriz [U] uma matriz triangular
superior. Com essa decomposio, o sistema de equaes a ser resolvido tem a
forma:
(1.04)
Para resolver essa equao, o produto [U][x] definido como
(1.05)
e substitudo na Eq. (1.04), levando a:
(1.06)
A soluo [x] agora obtida em dois passos. Primeiramente, a Eq. (1.06) resolvida
para [y]. Em seguida, a soluo [y] substituda na Eq. (1.05) e esta equao
resolvida para [x]. Como a matriz [L] uma matriz triangular inferior, a soluo [y] na
Eq. (1.06) obtida com o uso do mtodo da substituio progressiva. Assim que [y]
conhecido e substitudo na Eq. (1.05), esta equao resolvida com o emprego da
substituio regressiva, pois [U] uma matriz triangular superior.
Neste trabalho o processo de soluo do sistema linear proposto foi realizado
utilizando o programa MATLAB do desenvolvedor MathWorks e com ele escritas
funes que realizam o trabalho em partes: o script principal
(Resolve_Sistema_Por_LU.m), a funo que realiza o pivotamento
(GaussPivotamento.m), a que realiza a decomposio de A em L e U
(DecompLUCrout.m), a que faz a substituio progressiva (SubstProgres.m) e
regressiva (SubstRegres.m).
De acordo com a proposta do professor da disciplina foi desenvolvido o cdigo e
testado com o exerccio 31 da lista, cujo enunciado mostrado abaixo:
6x1+3x2+6x3 = 30
2x1+3x2+3x3 = 17
x1+2x2+2x3 = 11
3. Soluo:
Para melhor compreenso o algoritmo ser apresentado em partes, seguido de
explicaes do cdigo implementado.
Parte 1)
clc; clear all; close all; %Limpa a tela, apaga as variveis globais e
fecha as janelas abertas
format LONGG;
Parte 2)
Parte 3)
Neste trecho do cdigo solicitado ao usurio entrar com o vetor coluna b, que so os
termos independentes da soluo da matriz e testa se o nmero de elementos est
correto.
Parte 4)
[A,B] = GaussPivotamento(A,b);
Parte 5)
[L,U] = DecompLUCrout(A);
Parte 6)
y = SubstProgres(L,B);
Parte 7)
x = SubstRegres(U,y);
Parte 8)
%% Apresenta os dados
disp(' ');
disp('Os valores de [x1 x2 ... xn] = ');
x
Funo GaussPivotamento( )
end
Funo DecompLUCrout( )
function [ L, U ] = DecompLUCrout( A )
% A funo decompe a matriz A em uma matriz triangular inferior L e
% em uma matriz triangular superior U, usando o mtodo de Crout de
forma que A = LU.
% Variveis de entrada:
% A Matriz de coeficientes.
% Variveis de sada:
% L Matriz triangular inferior.
% U Matriz triangular superior.
for i = 2:linhas
for j = 2:i %Nmero das colunas
L(i,j) = A(i,j) - L(i,1:j-1)*U(1:j - 1,j); %Clculo dos
%valores dos elementos de L
end
for j = i + 1:linhas
U(i,j) = (A(i,j) - L(i,1:i-1)*U(1:i-1,j))/L(i,i); %Clculo dos
valores dos elementos de U
end
end
end
Funo SubstProgres( )
Para um sistema com n equaes na forma triangular superior, uma frmula geral para
a soluo usando a substituio progressiva :
Funo SubstRegres( )
Para um sistema com n equaes na forma triangular superior, uma frmula geral para
a soluo usando a substituio regressiva :
5. Resultados
Apresentando o resultado.
7. Referncias
[1] GRIFFITHS, D.V. ; SMITH, I.M. Numerical Methods for Engineers. 2.ed. Boca
Raton: CRC Press, 2000, 340p.
[2] CHAPRA, S.C; CANALE, R. P. Mtodos Numricos para Engenharia. 5.ed. So
Paulo: McGraw-Hill, 2008, 810p.
[3] CHAPRA, S.C. Mtodos Numricos Aplicados com MATLAB para Engenheiros
e Cientistas. 3. Ed. Porto Alegre: McGraw-Hill, 2013, 655p.
[4] F. F. CAMPOS. Algoritmos Numricos. 2. ed. Rio de Janeiro: LTC Editora, 2007.
v. 1. 444p .