Você está na página 1de 15

Universidade de Braslia

Faculdade de Tecnologia-FT
Departamento de Engenharia Civil e Ambiental
Disciplina: Mtodos Computacionais para
Engenharia Ambiental
Professor: Raul Durand

GRUPO AMBIENTAIS
DECOMPOSICO DE CHOLESKY E MTODOS DOS GRADIENTES CONJUGADOS

Bruna Karla Soares Araujo 12/0060019


Franco Lo Monaco Vidili - 11/0011686
Daniel Rodriguez Ribeiro - 11/0010353

Braslia, 2014

SUMRIO
1. Introduo .............................................................................. Error! Bookmark not defined.
2.Decomposio de Cholesky .................................................... Error! Bookmark not defined.
2.1 Exemplo ............................................................................................................................... 5
2.2 Algoritmo ............................................................................................................................. 7
2.3 Python .................................................................................................................................. 9
3. MTODO DO PONTO FIXO ............................................................................................. 9
3.1 Exemplos ........................................................................................................................... 12
3.2 Algoritmo .............................................................................. Error! Bookmark not defined.
3.3 Python ................................................................................... Error! Bookmark not defined.
4. BIBLIOGRAFIA ................................................................................................................ 15

1. Introduo

Uma equao linear se cada termo contm mais do que uma varivel e cada varivel
aparece ma primeira potncia. Um conjunto de equaes lineares cujas variveis esto
relacionadas denominado de sistema de equao linear:

a11 x1 a12 x 2 ... a1n x n b1

* a 21 x1 a 22 x 2 ... a 2 n x n b2

a x a x ... a x b
m2 2
mn n
m
m1 1
Onde:
a1 , a 2 ,..., a n so os coeficientes (reais ou complexos) b o termo independente da equao
A resoluo de um sistema linear consiste em calcular os valores de xj (j = 1,....n),caso eles
existam.H dois mtodos para solucionar esses sistemas:
Mtodos diretos ou exatos: So mtodos que fornecem a soluo exata do sistema
utilizando um nmero finito de operaes. Entre os mtodos de soluo diretos esto:
Soluo por inverso de matriz de coeficientes, Mtodo de Eliminao de Gauss e
Decomposio de LU e Decomposio de Cholesky.
Mtodos iterativos: So aqueles que permitem determinas a soluo do sistema com
uma dada preciso atravs da aplicao de um processo repetitivo convergente. Entre
os mtodos iterativos esto os Mtodos Gauss- Seildel, Gauss-Jacobi,Gradientes
conjugados.
2.Decomposio de Cholesky
Quando a matriz dos coeficientes A for simtrica e definida positiva,

Uma matriz simtrica uma matriz quadrada de ordem n, que satisfaz At = A e


quando isso coerente:

LLT

Matriz positiva: xTAx > 0

A pode ser decomposta assim:

Onde
: n x m, uma matriz triangular inferior com elementos da diagonal estritamente
positivos, Est decomposio conhecida como decomposio de Choleskye .
E a sua existncia garantida pelo Teorema 2, que diz: Se A for uma matriz simtrica
e definida positiva ento existe uma nica matriz triangular G com elementos da diagonal
positivos tal que A=LLT.

Ento
A
pode
ser
fatorada,
na
forma
de
LDLT
(L=matriz, triangular inferior com a diagonal unitria, D= diagonal e LT = triangular superior
com a diagonal unitria).
A maneira mais prtica para obter os coeficientes (lij ) e comeando pela primeira coluna,
depois para a a segunda coluna e assim por diante:
2.1Exemplo

2.2Algoritmo

2.3 Python

Exemplo Rodado:

10

2. Mtodo dos gradientes conjugados


O mtodo dos gradientes conjugados um mtodo iterativo que se aplica a sistemas que
so grandes demais para serem resolvidos por mtodos diretos, como por exemplo a
decomposio de Cholesky.
Para que o mtodo possa ser aplicado, a matriz deve ser simtrica e positiva definida, ou
seja, AT=A. A essncia do mtodo minimizar a funo de x

F ( x)

1 T
x Ax b T x
2

A fim de resolver o sistema Ax = b. As curvas de nvel da funo F(x) so definidas


por F(x1,x2) = Constante.Dessa forma o grfico de F(x) um parabolide e esta funo possui
apenas um mnimo.
O mnimo da funo atingido no vetor x que anula o gradiente da funo,

F
x a11 x1 a12 x2 b1
1
Ax b
grad F ( x1 , x 2 ) F
a12 x1 a 22 x2 b2
x2
E sendo assim, grad
= 0 quando o mnimo atingido. Podemos dizer que Ax=b,
ou seja, a soluo do sistema de equaes lineares minimiza a funo quadrtica e vice-versa.
Para achar o mnimo da funo f(x), chutamos um valor inicial x0 e andamos na direo
de menor decrescimento naquele ponto: -grad(F(x0)), ou seja:
x1 = x0 - s grad(F(x0))
onde s o valor do passo. Para achar o passo, buscamos o s que minimiza F(x + sr),
Na qual r a direo oposta ao gradiente: r = -grad(F) = b-Ax. Isso ocorre quando dF/ds = 0.
Fazendo as contas:

11

Neste mtodo, queremos construir uma sequencia de aproximaes que venha a nos
fornecer o mnimo dessa F(x) aps n passos, sendo que n o numero de equaes do sistema.
possvel escolher n direes linearmente independentes, v1 , ...., vn e, por meio da
minimizao da funo F(x(k) + svk), em cada uma das direes separadamente.
Neste mtodo, cada novo vetor vj gerado depois de completo um ciclo de minimizao,
como descreveremos a seguir. Dada uma aproximao inicial x(0) , tomamos a primeira
direo v1 = grad F(x(0)). Conhecidas as direes v1 , ...., vj e as aproximaes x(1) , x(2) ,
......, x(j) , tomamos:

1.
2.

3.

vj+1 tal que

vTj A v j = 0.

sj+1 o nmero real que minimiza F(x(j) + svj+1), isto , o mnomo de F ao longo da
reta que passa por x(j) e tem direo de vj+1 .
x(j+1) = x(j) + sj+1 vj+1

Existem vrias maneiras de construir vetores que satisfazem o item 1. No algoritmo


abaixo, que poder ser usado na implementao do mtodo GC, apresentamos um destes
procedimentos. Quanto ao item 2, repetimos as mesmas contas realizadas ao minimizar a
funo (4) e podemos mostrar que

s j1

rjT v j1
vTj1Av j1

Onde, conforme a notao anterior, rj = b A x(j) .

Dados A, b, max e Erro


1) x(0)=0
2) k = 0
3) r = b - Ax(k)
4) s = rT r/rTAr
5) x(k+1) = x(k) + s r
6) Se ||xk+1-xk||/||xk+1|| < Erro ento faa soluo = x(k+1) e PARE
7) k = k+1
8) Se (k<max) ento volte ao Passo 3.
9) Seno escreva que a soluo x(k+1) e o erro. PARE.

12

3.1 Exemplo

13

14

3.2 Algoritmo

15

4. BIBLIOGRAFIA
[1] CHAPRA, S.C. & Canale, R.P. (2008) Mtodos Numricos para Engenharia. 5.ed.,
McGraw-Hill.
[2]GALVO, Lauro Csar; NUNES, Luiz Fernando. Clculo Numrico. Disponvel em:
<http://www1.univap.br/spilling/CN/apostila2.pdf>.
[3]CARVALHO, Flvia Pereira. Algoritimos e Programao. 2014. Disponvel em:
<https://fit.faccat.br/~fpereira/apostilas/python/Apostila_Algoritmos_Programacao_Python_F
ev2014.pdf>.
[4]RUGGIERO, M.A.G. & Lopes, V.L.R. (2011) Clculo Numrico, Aspectos tericos e
computacionais. Pearson. 2 Ed.