• Nenhum resultado encontrado

M´etodo dos Gradientes Conjugados

No documento MÉTODOS ITERATIVOS PARA SISTEMAS LINEARES (páginas 28-47)

2.2 Processos de Relaxac¸˜ao

2.2.3 M´etodo dos Gradientes Conjugados

Este ´e outro m´etodo de relaxac¸˜ao, que iremos apresentar agora, mas para isso precisamos considerar a seguinte definic¸˜ao:

Definic¸˜ao 2.1. Dada uma matriz positiva definida A, p(k)e p(k−1) s˜ao direc¸˜oes conjugadas se

hAp(k), p(k−1)i=hp(k), Ap(k−1)i= 0.

O primeiro passo deste m´etodo ´e igual ao primeiro passo do m´etodo dos Gra-dientes.

Agora escolhap(k), que ´e a direc¸˜ao de relaxac¸˜ao, como uma combinac¸˜ao linear der(k−1)ep(k−1), da seguinte forma:

p(k) =−r(k−1)k−1p(k−1), para k = 1,2,3,· · · . (2.18) Precisamos determinar o parˆametroαk−1 que ser´a obtido atrav´es das direc¸˜oes conjugadas. Como

hp(k), Ap(k−1)i= 0,

de (2.18) obtemos que

h−r(k−1)k−1p(k−1), Ap(k−1)i= 0

−hr(k−1), Ap(k−1)i+αk−1hp(k−1), Ap(k−1)i= 0, logo

αk−1 = hr(k−1), Ap(k−1)i hp(k−1), Ap(k−1)i.

Agora vamos determinar a sequˆencia de aproximac¸˜oes para a soluc¸˜ao:

v(k) =v(k−1)+qkp(k) (2.19)

em que

qk= −hr(k−1), p(k)i hAp(k), p(k)i .

Subtituimos (2.19) no res´ıduo, que ´e dado porr(k) =Av(k)+bobtemos, r(k) =A(v(k−1)+qkp(k)) +b

r(k) =r(k−1)+qkAp(k). (2.20)

Observac¸˜ao 2.3. O res´ıduo de cada passo, possui as seguintes propriedades:

a)hr(k), r(k−1)i= 0;

Temos que, substituindo emr(k−1)por (2.17) e pelo Teorema 2.5 segue que res´ıduos consecutivos s˜ao ortogonais:

hr(k), r(k−1)i=−hr(k), p(k)i= 0, k = 1,2,· · · . b)hr(k), p(k)i= 0;

Substituindo p(k) pela express˜ao (2.17) e pelo resultado da Observac¸˜ao 2.1 item a) temos:

hr(k), p(k)i=−hr(k), r(k−1)i= 0, k = 1,2,· · · .

Com estas propriedades obtemos algumas simplificac¸˜oes nas f´ormulas deqke αk−1.

Primeiramente temos

qk = −hr(k−1), p(k)i hAp(k), p(k)i substituindop(k), no numerador por (2.18) obtemos:

=hr(k−1), r(k−1)i −αk−1hr(k−1), p(k−1)i da Observac¸˜ao 2.1 item b) temos quehr(k−1), p(k−1)i= 0assim:

−hr(k−1), p(k)i=hr(k−1), r(k−1)i logo

qk= hr(k−1), r(k−1)i hAp(k), p(k)i . Agora vamos simplificar a express˜ao de

αk−1 = hr(k−1), Ap(k−1)i hp(k−1), Ap(k−1)i. primeiramente de (2.20) obtemos

Ap(k−1) = 1 qk−1

(r(k−1)−r(k−2)).

SubstituindoAp(k−1) no numerador deαk−1temos:

hr(k−1), Ap(k−1)i=hr(k−1), 1

qk−1(r(k−1)−r(k−2))i=

= 1 qk−1

hr(k−1), r(k−1)i − 1 qk−1

hr(k−1), r(k−2)i da Observac¸˜ao 2.1 item a) temos quehr(k−1), r(k−1)i= 0, segue:

hr(k−1), Ap(k−1)i= 1 qk−1

hr(k−1), r(k−1)i. (2.21)

Agora substituindoAp(k−1)no denominador deαk−1 temos:

hp(k−1), Ap(k−1)i=hp(k−1), 1 qk−1

(r(k−1)−r(k−2))i=

= 1 qk−1

hp(k−1), r(k−1)i − 1 qk−1

hp(k−1), r(k−2)i pela Observac¸˜ao 2.1 item b)hp(k−1), r(k−1)i= 0segue que:

hp(k−1), Ap(k−1)i=− 1 qk−1

hp(k−1), r(k−2)i. (2.22) Agora substituimosp(k−1) por(2.18)temos:

− 1

qk−1hp(k−1), r(k−2)i=− 1

qk−2h−r(k−2)k−1p(k−1), r(k−2)i=

= 1

qk−1hr(k−2), r(k−2)i − αk−1

qk−1hp(k−2), r(k−2)i pela Observac¸˜ao 2.1 item b)hp(k−2), r(k−2)i= 0segue que:

− 1 qk−1

hp(k−1), r(k−2)i= 1 qk−1

hr(k−2), r(k−2)i. (2.23) Ent˜ao, usando (2.21) e (2.23) obtemos que,

αk−1 =

1

qk−1hr(k−1), r(k−1)i

1

qk−1hr(k−2), r(k−2)i = hr(k−1), r(k−1)i hr(k−2), r(k−2)i.

Resumindo, devemos efetuar o seguinte processo para encontrar a soluc¸˜ao aproximada do sistema utilizando o m´etodo dos gradiente conjugados:

Dadov(0) e >0, eM ∈Ndevemos calcular:

a)r(0) =Av(0)+b

p(1) =−r(0) q1 = hr(0), r(0)i

hAr(0), r(0)i v(1) =v(0)+q1p(1) r(1) =r(0)+q1Ap(1) b) 1)αk−1 = hrhr(k−1)(k−2),r,r(k−1)(k−2)ii

b2)p(k)=−r(k−1)k−1p(k−1) b3)qk= hrhAp(k−1)(k),r,p(k−1)(k)ii

b4)v(k) =v(k−1)+qkp(k) b5)r(k) =r(k−1)+qkAp(k)

Se ou , fim, caso contr´ariob).

Teorema 2.6. O m´etodo dos Gradientes Conjugados fornece a soluc¸˜ao aproxi-mada do sistema em no m´aximonpassos, onden ´e a ordem do sistema.

Cap´ıtulo 3

Aplicac¸˜oes dos M´etodos Iterativos

Neste cap´ıtulo veremos alguns problemas onde iremos aplicar os quatro m´eto-dos estudam´eto-dos: Jacobi, Gauss-Seidel, Gradiente e Gradiente Conjugado. Ser´a feita uma comparac¸˜ao entre os m´etodos, verificando o n´umero de iterac¸˜oes necess´arias e a soluc¸˜ao aproximada encontrada por cada m´etodo. Os problemas a seguir foram retirados do livro de C´alculo Num´erico da autora Neide Bertoldi Franco (4).

No primeiro exemplo vamos desenvolver o m´etodo dos Gradientes e Gradi-entes Conjugados, mostrando passo a passo como chegar a soluc¸˜ao. Mas antes disto vamos calcular a func¸˜ao quadr´atica dada por (2.20) e mostrar que o ponto de m´ınimo desta func¸˜ao ´e soluc¸˜ao do sistema. Nos exemplos seguintes vamos resolver problemas aplicados.

As soluc¸˜oes aproximadas deste Cap´ıtulo foram obtidas a partir de c´odigos es-critos usando a Linguagem de Programac¸˜aoC++.

Exemplo 3.1. Consideramos o seguinte sistema:

( 3x +2y −2 = 0

2x +6y + 8 = 0 (3.1)

Calcule a func¸˜ao quadr´atica, mostre que o ponto de m´ınimo ´e soluc¸˜ao do sistema (3.1) e aplique os m´etodos dos Gradientes e Gradientes Conjugados.

´E f´acil verificar que a soluc¸˜ao do sistema linear ´e:x= (2,−2)t. Para explicitar a func¸˜ao quadr´atica,F(v), primeiramente calculamos:

Av = 3 2 2 6

! v1

v2

!

= 3v1+ 2v2

2v1+ 6v2

!

,

assim,

que ´e uma matriz positiva definida, pela Definic¸˜ao 1.12. AssimF(v)tem um ponto de m´ınimo em (2,−2)t, que ´e a soluc¸˜ao do sistema (3.1), conforme foi provado no Teorema 2.4.

Agora vamos calcular uma aproximac¸˜ao da soluc¸˜ao a partir do vetor v(0) = (5,−3)tpelos m´etodos do Gradiente e Gradiente Conjugado.

Primeiramente pelo Gradiente. Sejav(0) = (5,−3)t, ent˜ao, r(0) =Av(0)+b = 3 2

Desse modo,tmin = 21.349126.78 = 0.168.

Ar(4) = 3 2 Agora aplicando o m´etodo dos Gradientes Conjugados. Considerev(0) = (5,−3)tent˜ao:

p(2) =−r(1)1p(1) = −0.07 4.62

!

+ 0.436 −7 0

!

= −3.12 4.62

!

, Ap(2) = 3 2

2 6

! −3.12 4.62

!

= −0.12 21.48

!

,

⇒ hAp(2), p(2)i= 0.37 + 99.24 = 99.61.

Assim,

q2 = hr(1), r(1)i

hAp(2), p(2)i = 21.349

99.61 = 0.214, v(2) =v(1)+q2p(2) = 2.69

−3

!

+ 0.214 −3.12 4.62

!

= 2.02

−2.01

!

. Comparando a soluc¸˜ao aproximada do m´etodo dos Gradientes na iterac¸˜aok= 2 com a obtida acima para o m´etodo dos Gradientes Conjugados vemos que o m´etodo dos Gradientes Conjugados converge para a soluc¸˜ao com menos iterac¸˜oes.

Pelo Teorema 2.6 o m´etodo dos Gradientes Conjugados deveria convergir em duas iterac¸˜oes (pois a matriz ´e2×2). No entanto, a soluc¸˜ao obtida acima parak = 2 n˜ao ´e exatamente(2,−2)t, isto provavelmente deve-se ao fato dos c´alculos terem sidos feitos sem a precis˜ao requerida.

Exemplo 3.2. Considere o circuito 3.1, com resistˆencias e baterias tal como indi-cado; escolhemos arbitrariamente as orientac¸˜oes das correntes.

Figura 3.1: Circuito de correntes.

Aplicando a lei de Kirchoff, que diz que a soma alg´ebrica das diferenc¸as de potencial em qualquer circuito fechado ´e zero, achamos para as correntesi1, i2, i3:

6i1 + 10(i1−i2) + 4(i1−i3) − 26 = 0 5i2 + 5i2 + 5(i2−i3) + 10(i2−i1) = 0 11i3 + 4(i3−i1) + 5(i3−i2) − 7 = 0 Organizando o sistema obtemos:

20i1 − 10i2 − 4i3 = 26

−10i1 + 25i2 − 5i3 = 0

−4i1 − 5i2 + 20i3 = 7

a) ´E poss´ıvel aplicar os m´etodos com convergˆencia assegurada? Justifique.

Vamos aplicar o crit´erio das linhas, conforme o Corol´ario 2.2, para verificar a convergˆencia do sistema. O crit´erio nos diz que se

|aii|> X

j=1i6=j

|aij| ∀i= 1,2,· · · , n.

Para a primeira linha temos que:

|a11|= 20e|a12|+|a13|= 10 + 4 = 14 assim|a11|>|a12|+|a13|.

Para a segunda linha :|a22|= 25e|a21|+|a23|= 10 + 5 = 15 assim|a22|>|a21|+|a23|.

Para a terceira linha: |a33|= 20e|a31|+|a32|= 4 + 5 = 9 logo|a33|>|a31|+|a32|.

Desta forma ´e poss´ıvel aplicar os m´etodos de Gauss e Jacobi, no sistema das correntes. Podemos aplicar tamb´em o m´etodo dos Gradientes Conjugados pois a matriz ´e sim´etrica positiva definida.

b)Obtenha a soluc¸˜ao aproximada com uma tolerˆancia <10−2 ei(0) = (0,0,0)t. A partir do m´etodo de Jacobi obtemos a soluc¸˜ao(1.99108,0.99216,0.993717)t na10a iterac¸˜ao com um tolerˆancia de0.00899503. Utilizando o m´etodo de Gauss encontramos a soluc¸˜ao (1.99814,0.998904,0.999355)t na 7a iterac¸˜ao com uma tolerˆancia de0.00391774. J´a o m´etodo do Gradiente Conjugado alcanc¸ou a soluc¸˜ao exata(2,1,1)tna3a iterac¸˜ao com tolerˆancia zero.

Podemos ver que o m´etodo de Gauss converge mais r´apido que o de Jacobi, conforme o esperado. O Gradiente Conjugado convergiu para a soluc¸˜ao, na ter-ceira iterac¸˜ao, satisfazendo o Teorema 2.6.

Exemplo 3.3. Suponha uma barraRde metal homegˆeneo onde: AB =CD = 4 eAC =BD = 3u.m.. Veja Figura 3.2.

Figura 3.2: Barra de metal homogˆeneo.

A temperatura ao longo deAB, AC, BD ´e mantida constante e igual a 0C, enquanto ao longo de CD ela ´e igual a1C. A distribuic¸˜ao do calor na barraR obedece `a seguinte equac¸˜ao, conhecida como Equac¸˜ao de Laplace.

2u

∂x2 +∂2u

∂y2 = 0 (3.2)

com as condic¸˜oes de contorno:

u(x,3) = 1 para 0< x <4, u(x,0) = 0 para 0< x <4, u(0, y) = 0 para 0< y < 3, u(4, y) = 0 para 0< y < 3,

Consideremos uma divis˜ao do retˆangulo ABCD em retˆangulos menores a partir de uma divis˜ao deAB em intervalos de amplitude h= 1, e de uma divis˜ao deCDem intervalos iguais de amplitudek = 1, como mostra a Figura 3.3.

A temperaturaunos pontos internos pode ser obtida numericamente aproxi-mando as derivadas segundas da equac¸˜ao (3.2) pelas diferenc¸as de segunda ordem.

Considando o desenvolvimento deu(x+h, y)eu(x−h, y)em s´erie de Taylor em torno do pontox,

Figura 3.3: Divis˜ao da barra homogˆenea em retˆangulos.

u(x+h, y) =u(x, y)+hux(x, y)+h2

2!uxx(x, y)+h3

3!uxxx(x, y)+h4

4!uxxxx(x, y)+· · · e

u(x−h, y) = u(x, y)−hux(x, y)+h2

2!uxx(x, y)−h3

3!uxxx(x, y)+h4

4!uxxxx(x, y)+· · · . Somando, obtemos:

u(x+h, y) +u(x−h, y) = 2u(x, y) + 2h2

2!uxx(x, y) + 2h4

4!uxxxx(x, y) +· · · isolandouxx(x, y),

uxx(x, y) = u(x−h, y)−2u(x, y) +u(x+h, y)−2h4!4uxxxx(x, y)

h2 +· · ·

dessa forma, o ´ultimo termo ´e o erro de truncamento em que uxx(x, y) = u(x−h, y)−2u(x, y) +u(x+h, y)

h2 +θ(h2)

em que o ´ultimo termo ´e o erro de truncamento. De modo an´alogo desenvolvendo u(x, y+h)eu(x, y−h), estamos considerandok =hna s´erie de Taylor em torno do pontoy, obtemos:

uyy(x, y) = u(x, y−h)−2u(x, y) +u(x, y+h)

h2 +θ(h2).

Desta forma;

u(x−h, y)−2u(x, y) +u(x+h, y)

h2 (3.3)

e u(x, y−h)−2u(x, y) +u(x, y+h)

h2 (3.4)

aproximam as derivadas segundasuxxeuyy, respectivamente, comθ(h2). Substi-tuindo(3.3)e(3.4)em(3.2)obtemos

u(x−h, y)−2u(x, y) +u(x+h, y)

h2 +u(x, y−h)−2u(x, y) +u(x, y+h)

h2 = 0

(3.5) para cada par(x, y)emR.

Agora vamos determinar um sistema de seis equac¸˜oes lineares nas inc´ognitas u1, u2,· · · , u6. Resolva-o pelos m´etodos de: Jacobi, Gauss-Seidel e Gradiente Conjugado e resolvˆe-los.

Parau1 =u(1,2)em (3.5) temos:

u(0,2)−2u(1,2) +u(2,2) +u(1,1)−2u(1,2) +u(1,3)

1 = 0

−4u1 +u2+u4+ 1 = 0

−4u1+u2+u4 =−1 (3.6)

Parau2 =u(2,2)em (3.5) temos:

u(1,2)−2u(2,2) +u(3,2) +u(2,1)−2u(2,2) +u(2,3)

1 = 0

u1−2u2+u3+u5 −2u2+ 1 = 0 ou

u1−4u2+u3 +u5 =−1. (3.7)

Parau3 =u(3,2)em (3.5) temos:

u(2,2)−2u(3,2) +u(4,2) +u(3,1)−2u(3,2) +u(3,3)

1 = 0

u2 −2u3+ 0 +u6−2u3+ 1 = 0 ou

u2−4u3+u6 =−1. (3.8)

Parau4 =u(1,1)em (3.5) temos:

u(0,1)−2u(1,1) +u(2,1) +u(1,0)−2u(1,1) +u(1,2)

1 = 0

0−2u4+u5+ 0−2u4+u1 = 0 ou

u1−4u4+u5 = 0. (3.9)

Parau5 =u(2,1)em (3.5) temos:

u(1,1)−2u(2,1) +u(3,1) +u(2,0)−2u(2,1) +u(2,2)

1 = 0

u4−2u5+u6+ 0−2u5+u2 = 0 ou

u2+u4−4u5 +u6 = 0. (3.10) Parau6 =u(3,1)em (3.5) temos:

u(2,1)−2u(3,1) +u(4,1) +u(3,0)−2u(3,1) +u(3,2)

1 = 0

u5 −2u6+ 0 + 0−2u6+u3 = 0 ou

u3+u5−4u6 = 0. (3.11)

A partir das equac¸˜oes (3.6) `a (3.11), obtemos o seguinte sistema:

−4u1 + u2 + 0 + u4 + 0 + 0 = −1

u1 + −4u2 + u3 + 0 + u5 + 0 = −1

0 + u2 + −4u3 + 0 + 0 + u6 = −1

u1 + 0 + 0 + −4u4 + u5 + 0 = 0

0 + u2 + 0 + u4 + −4u5 + u6 = 0

0 + 0 + u3 + 0 + u5 + −4u6 = 0

Escrevendo da formaAx=bsegue:

A partir do m´etodo de Jacobi obtemos a soluc¸˜ao(0.415786,0.508757,0.415786, 0.154884,0.204455,0.154884)tna13aiterac¸˜ao com uma tolerˆancia0.000715441.

Atrav´es do m´etodo de Gauss obtemos a soluc¸˜ao (0.415963,0.509158,0.416081, 0.155167,0.204873,0.155239)tna8aiterac¸˜ao com tolerˆancia9.08881e−6.

J´a m´etodo do Gradiente Conjugado teve como soluc¸˜ao (0.416149,0.509317,0.416149,0.15528,0.204969,0.15528)t na 4a iterac¸˜ao com tolerˆancia zero.

Podemos observar que o m´etodo dos Gradientes Conjugados converge mais depressa que os outros dois. E, o Teorema 2.6 foi novamente satisfeito, pois o sis-tema no m´etodo dos Gradientes Conjugados convergiu em4aiterac¸˜oes, enquanto que o sistema tem ordem6.

Exemplo 3.4. Considere a malha quadrada da Figura 3.4, cujos bordosACeBD s˜ao mantidos `a temperatura de20C, o bordoAB, a40C; e o bordoCD, a10C, com o uso de isolantes t´ermicos emA,B,C,D.

Para determinar a temperatura nos pontos interiores da malha, pode-se supor que a temperatura em cada ponto ´e igual a m´edia aritm´etica dos quatro pontos vizinhos. Considerando as coordenadas na Figura 3.4 vamos determinar as 16 relac¸˜oes que s˜ao encontradas a partir da temperatura dos pontos interiores. Na verdade, faremos a seguir somente algumas delas.

a11= a01+a12+a10+a21

Figura 3.4: Malha quadrada.

a12−4a13+a14+a23=−40 (3.14) a14= a04+a13+a15+a24

4 = 40 +a13+ 20 +a24

4

a13−4a14+a24=−60 (3.15)

a21 = a20+a11+a22+a31

4 = 20 +a11+a22+a31 4

a11−4a21+a22+a31=−20 (3.16) a31 = a30+a21+a32+a41

4 = 20 +a21+a32+a41 4

a21−4a31+a32+a41=−20 (3.17) a41= a40+a31+a42+a51

4 = 20 +a31+a42+ 10 4

a31−4a41+a42=−30 (3.18)

A partir das equac¸˜oes (3.12) `a (3.18) e de modo an´alogo para as demais

Para resolver o sistema Ax=b, vamos considerar a tolerˆanciacomo sendo <10−3 ev(0) = (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)t.

Atrav´es do m´etodo de Jacobi obteve-se na47a iterac¸˜ao uma tolerˆancia de

0.000950029. J´a no m´etodo de Gauss obteve-se uma tolerˆancia de0.000843505 na26a iterac¸˜ao. E no m´etodo do Gradiente Conjugado obtivesse tolerˆancia0na6aiterac¸˜ao.

Neste exemplo temos que o Teorema 2.6 foi novamente satisfeito, pois obtemos a soluc¸˜ao na 6aiterac¸˜ao e o sistema ´e de ordem16.

Considerac¸˜oes Finais

No primeiro cap´ıtulo, apresentamos definic¸˜oes e resultados b´asicos necess´arios para o desenvolvimento dos m´etodos iterativos abordados nesse trabalho. Na sequˆencia, no Capitulo 2, desenvolvemos os m´etodos iterativos de Jacobi, Gauss-Seidel, Gradiente e Gradiente Conjugado. Al´em disso, apresentamos tamb´em resultados te´oricos referentes a convergˆencia dos m´etodos.

No terceiro cap´ıtulo, resolvemos numericamente alguns problemas aplica-dos, com a finalidade de aplicar e comparar os m´etodos desenvolvidos. Para isso, usamos c´odigos escritos na linguagem de programac¸˜aoC++. Dessa forma, podemos evidenciar que o m´etodo dos Gradientes Conjugados converge com um n´umero menor de iterac¸˜oes quando comparado com os outros m´etodos apresenta-dos e tamb´em em at´enpassos, onden ´e a ordem do sistema.

Os m´etodos iterativos tamb´em podem ser estudados a partir do subespac¸o de Krilov, tanto os m´etodos deste trabalho como os que n˜ao foram como: Gradiente Pr´e-Condicionado, SOR, SSOR e outros. Uma ´area bastante interessante para continuar o estudo sobre este assunto.

Referˆencias Bibliogr´aficas

[1] BARROSO, Leˆonidas Conceic¸˜ao -C´alculo Num´erico. 2aedic¸˜ao, Ed. Harbra, S˜ao Paulo, 1987.

[2] BOLDRINI, J.L.; COSTA S.I.R.; FIGUEIREDO, V.L.; H. G. Wetzler

-´Algebra Linear.3a edic¸˜ao, Ed. Harbra, 1980.

[3] BURDEN, Richard L.; FARIES J. Douglas - An´alise Num´erica. Cengage Leaning, S˜ao Paulo, 2008.

[4] FRANCO, Neide Bertoldi -C´alculo Num´erico. Pearson Pretince Hall, S˜ao Paulo, 2006.

[5] ISSACSON, E.; KELLER, H. B. -Analysis of numerical methods. John Wi-ley e Sons, New York, 1966.

[6] ORTEGA, J.M.- Numerical analysis; a second course. Academic Press, New York, 1972.

[7] POOLE, David - ´Algebra Linear. Thonson, S˜ao Paulo, 2004.

[8] SANTOS, Vitoriano Ruas de Barros - Curso de C´alculo Num´erico. 3a edic¸˜ao, Livros T´ecnicos e Cient´ıficos Editora S. A., Rio de Janeiro, 1976.

[9] SCHWARZ, H.R.; RUTISHAUSER, H. ; STIEFEL, E. -Numerical analysis of symmetric matrices. Prentice-Hall, 1973.

[10] STEWART, James -C´alculo, 2v. Ed.Thomson, S˜ao Paulo, 2006.

No documento MÉTODOS ITERATIVOS PARA SISTEMAS LINEARES (páginas 28-47)

Documentos relacionados