Você está na página 1de 35

Mtodos Numricos, Notas de aula, 2011.

c Departamento de Computao, Universidade Federal de Ouro Preto.

Sistemas Lineares
Marcone Jamilson Freitas Souza, Departamento de Computao, Instituto de Cincias
Exatas e Biolgicas, Universidade Federal de Ouro Preto, 35400-000 Ouro Preto, MG, Brasil. Homepage: http://www.decom.ufop.br/prof/marcone, E-mail: marcone@iceb.ufop.br

Introduo

Prope-se, neste captulo, apresentar mtodos numricos para resolver sistemas lineares
postos na forma:

a11 x1 + a12 x2 + + a1n xn = b1

a21 x1 + a22 x2 + + a2n xn = b2


(1.1)
..
..
..
..
..
..
..
..
..

.
.
.
.
.
.
.
.
.

an1 x1 + an2 x2 + + ann xn = bn


ou, equivalentemente:
n
X

aij xj = bi

i = 1, 2, . . . , n

(1.2)

j=1

isto , resolveremos sistemas lineares nos quais o nmero de equaes igual ao de incgnitas.
Na forma
matricial, um sistema

linear representado por Ax = b, em que:


a11 a12 a1n
a21 a22 a2n

A= .
..
..
.. Matriz dos coeficientes
..
.
.
.

x=

b=

an1 an2 ann

x1
x2

.. Vetor das variveis (ou incgnitas)


.
xn

b1
b2

.. Vetor dos termos independentes


.

bn
comum tambm representar o
por:

a11 a12 a1n


a21 a22 a2n

[A | b] = .
..
..
..
..
.
.
.
an1

an2

ann

sistema Ax = b pela sua matriz aumentada, isto ,


|
|
|
|

b1
b2
..
.
bn

Matriz aumentada do sistema

Marcone Jamilson Freitas Souza

Definio: Denomina-se vetor soluo (ou simplesmente soluo) de uma sistema Ax = b,


e denota-se por x
= [
x1 , x
2 , , x
n ]t , ao vetor das variveis que contm os elementos
x
j , j = 1, , n, que satisfazem a todas as equaes do sistema.

Classificao de um sistema com relao ao nmero


de solues

Com relao ao nmero de solues, um sistema linear pode ser classificado em:
(a) Compatvel e determinado: Quando houver uma nica soluo;
(b) Compatvel e indeterminado: Quando houver uma infinidade de solues;
(c) Incompatvel: Quando o sistema no admitir soluo;

Sistemas Triangulares

3.1

Sistema Triangular Superior

Denomina-se sistema triangular superior a todo sistema Ax = b em


ou seja, a sistemas da forma:

a11 x1 + a12 x2 + a13 x3 + + a1n xn

a22 x2 + a23 x3 + + a2n xn

a33 x3 + + a3n xn

..

ann xn

que aij = 0 j < i,


=
=
=
..
.

b1
b2
b3
..
.

bn

(3.3)

Tais sistemas so resolvidos por substituies retroativas, atravs de equaes da forma:


bi
xi =
3.1.1

n
P
j=i+1

aii

aij xj
i = n, . . . , 1

(3.4)

Discusso da soluo

1. Se aii 6= 0 i = Sistema compatvel e determinado;


2. Se aii = 0 para algum i h dois casos a analisar:
(a) Se bi
(b) Se bi
3.1.2

n
P
j=i+1
n
P
j=i+1

aij xj = 0 = Sistema compatvel e indeterminado


aij xj 6= 0 = Sistema incompatvel

Algoritmo

Apresentamos, pela Figura 1, o pseudocdigo do procedimento que resolve um sistema


triangular superior por intermdio de substituies retroativas. Supe-se neste procedimento que aii 6= 0 i, isto , que os elementos diagonais da matriz dos coeficientes do
sistema so todos no-nulos.

Sistemas Lineares

procedimento SubstituicaoRetroativa(n,A,b,x);
1 xn bn /ann ;
2 para i de n 1 at 1 passo 1 faa
3
SOMA 0;
4
para j de i + 1 at n faa
5
SOMA SOMA + aij xj ;
6
fim-para;
7
xi (bi SOMA)/aii ;
8 fim-para;
9 Retorne x;
{ Retorne o vetor soluo }
fim SubstituicaoRetroativa;
Figura 1: Algoritmo para resolver sistemas triangulares superiores

3.2

Sistema Triangular Inferior

Denomina-se sistema triangular inferior a todo sistema Ax = b em que aij = 0 j > i, ou


seja, a sistemas da forma:

a11 x1

a21 x1
..

an1 x1

+
..
.

a22 x2
..
.

an2 x2

ann xn

=
=
..
.

b1
b2
..
.

bn

(3.5)

Tais sistemas so resolvidos por substituies progressivas atravs de equaes da


forma:
bi
xi =
3.2.1

i1
P
j=1

aii

aij xj
i = 1, . . . , n

(3.6)

Discusso da Soluo

1. Se aii 6= 0 i = Sistema compatvel e determinado;


2. Se aii = 0 para algum i h dois casos a considerar:
(a) Se bi
(b) Se bi

3.2.2

i1
P
j=1
i1
P
j=1

aij xj = 0 = Sistema compatvel e indeterminado


aij xj 6= 0 = Sistema incompatvel

Algoritmo

O pseudocdigo do procedimento para resolver um sistema triangular inferior por meio


de substituies progressivas mostrado na Figura 2. Supe-se neste procedimento que
aii 6= 0 i.

Marcone Jamilson Freitas Souza

procedimento SubstituicaoProgressiva(n,A,b,x);
1 para i de 1 at n faa
2
SOMA 0;
3
para j de 1 at i 1 faa
4
SOMA SOMA + aij xj ;
5
fim-para;
6
xi (bi SOMA)/aii ;
7 fim-para;
8 Retorne x;
{ Retorne o vetor soluo }
fim SubstituicaoProgressiva;
Figura 2: Algoritmo para resolver sistemas triangulares inferiores

Mtodos Numricos

Os mtodos numricos destinados a resolver sistemas lineares so divididos em dois grupos:


os mtodos diretos e os mtodos iterativos.

Mtodos Diretos

So mtodos que produzem a soluo exata de um sistema, a menos de erros de arredondamento, depois de um nmero finito de operaes aritmticas.
Com esses mtodos possvel determinar, a priori, o tempo mximo gasto para resolver
um sistema, uma vez que sua complexidade conhecida.
A clssica Regra de Cramer, ensinada no ensino mdio, um mtodo direto. Entretanto, pode-se mostrar que o nmero mximo de operaes aritmticas envolvidas na
resoluo de um sistema n n por este mtodo (n + 1)(n!n 1) + n. Assim, um
computador que efetua uma operao aritmtica em 108 segundos gastaria cerca de 36
dias para resolver um sistema de ordem n = 15. A complexidade exponencial desse
algoritmo inviabiliza sua utilizao em casos prticos.
O estudo de mtodos mais eficientes torna-se, portanto, necessrio, uma vez que, em
geral, os casos prticos exigem a resoluo de sistemas lineares de porte mais elevado.
Apresentaremos, a seguir, mtodos mais eficientes, cuja complexidade polinomial,
para resolver sistemas lineares. Antes, porm, introduziremos uma base terica necessria
apresentao de tais mtodos.
Transformaes elementares: Denominam-se transformaes elementares as seguintes operaes efetuadas sobre as equaes (ou linhas da matriz aumentada) de um
sistema linear:
1. Trocar duas equaes:
Li Lj ;
Lj Li ;
2. Multiplicar uma equao por uma constante no-nula:
Lj c Lj ;
c R, c 6= 0
3. Adicionar a uma equao um mltiplo de uma outra equao:
Lj Lj + c Li ; c R

Sistemas Lineares

e = eb se dizem equivalentes se a
Sistemas equivalentes: Dois sistemas Ax = b e Ax
soluo de um for tambm soluo do outro.
Teorema: Seja Ax = b um sistema linear. Aplicando-se somente transformaes elemene = eb, sendo que
tares sobre as equaes de Ax = b, obtemos um novo sistema Ax
e
e
Ax = b e Ax = b so equivalentes.

5.1

Mtodo de Gauss

O mtodo de Gauss consiste em operar transformaes elementares sobre as equaes de


um sistema Ax = b at que, depois de n 1 passos, se obtenha um sistema triangular superior, U x = c, equivalente ao sistema dado, sistema esse que resolvido por substituies
retroativas.

0
a11 a12 a1n | b1
a11 a012 a01n | b01
0
0
0
a21 a22 a2n | b2

Transf. Elem. 0 a22 a2n | b2


..
..
..
..
.. ..
..
..
..
..
.
.
.
.
.
| .
.
.
.
| .
|

an1

an2

ann
{z

bn

| b0n

U x=c

Ax=b

5.1.1

a0nn
{z

Descrio do Mtodo

Para descrevermos o mtodo, consideraremos o

7x1 + 4x2 2x3

3x1 + 11x2 + 4x3


2x1 + 3x2 + 8x3

10x1 5x2 +
x3

sistema linear 4 4 abaixo.


+
x4
5x4
+ 2x4
3x4

= 14, 308
= 25, 744
= 3, 872
= 36, 334

(5.7)

A resoluo deste sistema pelo mtodo de Gauss envolve duas fases distintas. A primeira, chamada de fase de eliminao, consiste em transformar o sistema dado em um
sistema triangular superior. A segunda, chamada de fase de substituio, consiste em
resolver o sistema triangular superior atravs de substituies retroativas.
Para aplicar a primeira fase, utilizemos o quadro abaixo, onde cada grupo de linhas representa um passo (ou estgio) da obteno do sistema triangular superior. Trabalharemos
com 3 dgitos com arredondamento na apresentao em ponto flutuante.
Tabela 1: Fase de eliminao
Linha Multiplicadores
(0)

L1
(0)
L2
(0)
L3
(0)
L4
(1)
L2
(1)
L3
(1)
L4

m21 = 3/7 = 0, 429


m31 = 2/7 = 0, 286
m41 = 10/7 = 1, 429

m32 = 4, 144/9, 284 = 0, 446


m42 = 10, 716/9, 284 = 1, 154

(2)

L3
(2)
L4
(3)

L4

m43 = 9, 464/5, 261 = 1, 799

Coeficientes
das incgnitas
7
4
-2
3
11
4
-2
3
8
10
-5
1
0 9,284 4,858
0 4,144 7,428
0 -10,716 3,858

1
-5
2
-3
-5,429
2,286
-4,429

Termos
Ind.

Transformaes
Elementares

14,308
25,744
-3,872
36,334
(1)
(0)
(0)
19,606 L2 0, 429 L1 + L2
(1)
(0)
(0)
0,220 L3 0, 286 L1 + L3
(1)
(0)
(0)
15,888 L4 1, 429 L1 + L4
(2)

(1)

(1)

0
0

0 5,261 4,707
0 9,464 -10,694

-8,524 L3 0, 446 L2 + L3
(2)
(1)
(1)
38,513 L4 1, 154 L2 + L4

53,848 L4

0 -19,162

(3)

(2)

1, 799 L3

(2)

+ L4

Marcone Jamilson Freitas Souza

Detalhemos a Tabela 1. Nela constam 3 passos:


Passo k = 1:
(0)
piv: a11 = 7
(0)
Linha pivotal: L1
(0)
Objetivo: zerar os elementos abaixo do piv a11 .
Ao final do primeiro passo obtemos o sistema A1 x = b1 equivalente ao sistema dado,
em que:

7
4
2
1 | 14, 308
0
9, 284 4, 858 5, 429 | 19, 606

[A(1) | b(1) ] =
0
4, 144 7, 428
2, 286 | 0, 220
0 10, 716 3, 858 4, 429 | 15, 888
Passo k = 2:
(1)
piv: a22 = 9, 284
(1)
Linha pivotal: L2
(1)
Objetivo: zerar os elementos abaixo do piv a22 .
Ao final do segundo passo obtemos o sistema A(2) x = b(2)
isto :

7
4
2
1
0 9, 284 4, 858 5, 429
(2)
(2)
[A | b ] =
0
0 5, 261
4, 707
0
0 9, 464 10, 694

equivalente ao sistema dado,

| 14, 308
| 19, 606

| 8, 524
| 38, 513

Passo k = 3:
(2)
piv: a33 = 5, 261
(2)
Linha pivotal: L3
(2)
Objetivo: zerar os elementos abaixo do piv a33 .
Ao final do terceiro
passo obtemos o sistema A(3) x = b(3) equivalente
ao sistema dado:

7
4
2
1 | 14, 308
0 9, 284 4, 858
5, 429 | 19, 606

[A(3) | b(3) ] =
0
0 5, 261
4, 707 | 8, 524
0
0
0 19, 162 | 53, 848
Portanto, ao final de 3 passos, o sistema Ax = b,
no seguinte sistema triangular superior A3 x = b3 :

7x1 +
4x2
2x3 +

9, 284x2 + 4, 858x3
5, 261x3 +

expresso por (5.7), foi transformado


x4
5, 429x4
4, 707x4
19, 162x4

=
=
=
=

14, 308
19, 606
8, 524
53, 848

(5.8)

Terminada a fase de eliminao, passamos, agora, fase de substituio, resolvendo o


sistema anterior atravs das seguintes substituies retroativas:
x4 = 53,848
19,162 = 2, 810
x3 =
x2 =
x1 =

8,5244,707(2,810)
= 0, 894
5,261
19,606+5,429(2,810)4,8580,894
= 0, 001
9,284
14,30840,001+20,8942,810
=
2,
700
7

Portanto, a soluo do sistema :

Sistemas Lineares

2, 700
0, 001

x
=
0, 894
2, 810
5.1.2

Avaliao do Resduo/Erro

O erro produzido por uma soluo x


do sistema Ax = b pode ser avaliado pela expresso:
= max |ri |

(5.9)

1in

sendo ri a i-sima componente do vetor resduo R, o qual dado por:


R = b A
x

(5.10)

Para o exemplo considerado, o vetor resduo :


14, 308
7
25, 744 3

R = b A
x=
3, 872 2
36, 334
10

4
11
3
5

2
4
8
1

1
2, 700
0, 001
5

2 0, 894
3
2, 810

0, 002
0, 007
=

0, 007
0, 015

Assim, o erro cometido vale:


= max |ri | = max {|0, 002|, |0, 007|, | 0, 007|, |0, 015|} = 0, 015
1in

5.1.3

1i4

Algoritmo

Apresentamos, a seguir, o pseudocdigo do procedimento relativo fase de eliminao


do mtodo de Gauss. ele se segue o procedimento de substituio retroativa descrito
pgina 3. Esse algoritmo supe que os elementos diagonais (akk ) so no-nulos. Na
hiptese de existir algum akk = 0, esse elemento deve ser colocado em outra posio fora
da diagonal principal, por intermdio de operaes de troca de linhas e/ou colunas.
procedimento Eliminacao(n,A,b);
1 para k de 1 at n 1 faa
2
para i de k + 1 at n faa
3
m aik /akk ;
4
para j de k + 1 at n faa
5
aij aij + m akj ;
6
fim-para;
7
bi bi + m bk ;
8
fim-para;
9 fim-para;
10 Retorne A e b;
{ Retorne a matriz aumentada modificada }
fim Eliminacao;
Figura 3: Algoritmo da fase de eliminao do mtodo de Gauss

Marcone Jamilson Freitas Souza

Tabela 2: Complexidade de pior caso do Mtodo de Gauss


Divises Multiplicaes
Adies
Total
n1
n(n 1)
n(n 1)
n2
(n 1)(n 2)
(n 1)(n 2)
..
..
..
.
.
.
n1
1
(2).(1)
(2).(1)
n(n1)
1
1
1 2
7
1 3
1 3
2 3
Eliminao
2
3n 3n
3n 3n
3n 2n 6n
n
0 + 1 + + (n 1) 0 + 1 + + (n 1)
n(n1)
n(n1)
Substituio
n
n2
2
2
1 2
1 3
1 3
2 3
1
1 2
5
1 2
1
3 2
7
TOTAL
2n + 2n
3n + 2n 6n
3n + 2n 3n
3n + 2n 6n
Fase
1
2
..
.

5.1.4

Complexidade

Para avaliar o nmero mximo de operaes aritmticas envolvidas na resoluo de um


sistema n n pelo mtodo de Gauss, mostra-se, pela Tabela 2, a complexidade de pior
caso das fases de eliminao e substituio.
Como se observa, o mtodo de Gauss tem complexidade polinomial O(n3 ). Um computador que faz uma operao aritmtica em 108 segundos gastaria 0, 0000257 segundos
para resolver um sistema 1515 (Um tempo infinitamente inferior quele gasto pela Regra
de Cramer, conforme pgina 4).
5.1.5

Observaes Finais

No mtodo de Gauss, os multiplicadores do passo k da fase de eliminao so calculados


pela expresso:
(k)

mik =

(k1)

aik

(k1)

akk

i = k + 1, , n

(5.11)
(k1)

Observe que o piv do k-simo passo da fase de eliminao sempre akk , isto , o
elemento diagonal da matriz A(k1) do sistema transformado A(k1) x = b(k1) obtido no
passo anterior.
Desvantagens do mtodo de Gauss:
(i) No pode ser aplicado quando o piv for nulo (akk = 0);
(ii) Os erros de arredondamento cometidos durante um passo da obteno do sistema
triangular se propagam para os passos seguintes, podendo comprometer a validade
da soluo obtida.
Para contornar o problema (i) e minimizar o problema (ii), a ideia usar uma estratgia
de pivoteamento, conforme a seguir se descreve.

5.2

O Mtodo de Gauss com Pivotao Parcial

Esta estratgia de pivoteamento consiste em:


(i) No incio da etapa k da etapa de eliminao, escolher para piv o maior elemento,
em mdulo, dentre os coeficientes:

Sistemas Lineares

(k1)

aik

i = k, k + 1, , n

(ii) Trocar as linhas k e i se necessrio


Exemplo: Resolver o sistema a seguir, avaliando o erro cometido em cada caso:

0, 0002x1 + 2x2 = 5
(5.12)
2x1 + 2x2 = 6
(a) Pelo mtodo de Gauss
(b) Pelo mtodo de Gauss com pivotao parcial
Resoluo do item (a):
A Tabela 3 apresenta a fase de eliminao do Mtodo de Gauss aplicado ao sistema
linear 5.12.
Tabela 3: Fase de eliminao do Mtodo de Gauss do sistema (5.12)
Linha

Multiplicadores

Coeficientes
das incgnitas

(0)

L1
(0)
L2
(1)
L2

m21 = 2/0, 002 = 104

0, 002
2
0

Termos
Ind.

2
2
-19998

5
6
-49994

Transformaes
Elementares

(1)

L2

(0)

10000 L1

(0)

+ L2

Tendo triangularizado a matriz dos coeficientes do sistema (5.12), passemos fase de


resoluo do sistema triangular (5.13), o qual equivalente ao sistema dado:

0, 0002x1 +
2x2 =
5
(5.13)
19998x2 = 49994
cuja soluo :

x
=

0, 0001
2, 4999

Avaliemos o resduo R e o erro produzido por esta soluo.



5
4, 9998
0, 0002
R = b A
x=

=
6
5
1
= max |ri | = max {|0, 002|, |1|} = 1
1in

1i2

Resoluo do item (b):


A Tabela 4 apresenta a fase de eliminao do Mtodo de Gauss, com pivotao parcial,
aplicado ao sistema linear (5.12).
Tendo triangularizado a matriz dos coeficientes do sistema (5.12), passemos fase de
resoluo do sistema triangular (5.14), que equivalente ao sistema dado:

2x1 +
2x2 =
6
(5.14)
1, 9998x2 = 4, 9994
cuja soluo :

10

Marcone Jamilson Freitas Souza

Tabela 4: Fase de eliminao do Mtodo de Gauss c/ pivotao aplicado ao sistema (5.12)


Linha

Multiplicadores

Coeficientes
das incgnitas

(0)

L1
(0)
L2

(0)0

L1

(0)0
L2
(1)
L2

m21 = 0, 0002/2 = 0, 0001

Termos
Ind.

0, 0002
2

2
2

5
6

0,0002

1,9998

4,9994

x
=

0, 5001
2, 4999

Transformaes
Elementares

(0)0

(0)
L2
(0)0
(0)
L2 L1
(1)
L2 0, 0001

L1

(0)0

L1

(0)0

+ L2

O resduo R e o erro produzido por esta soluo so apresentados a seguir.

5
4, 9999
0, 0001
R = b A
x=

=
6
6, 0018
0, 0018
= max |ri | = max {|0, 001|, | 0, 0018|} = 0, 0018
1in

1i2

Tais resultados mostram, claramente, a melhora obtida com a tcnica de pivotao.


Observamos, finalmente, que a escolha do maior elemento em mdulo entre os candidatos a piv faz com que os multiplicadores, em mdulo, estejam entre zero e um, o que
minimiza a ampliao dos erros de arredondamento.
Apresentamos, pela Figura 4, pgina 11, o pseudocdigo do procedimento de Gauss
com pivoteamento parcial para resolver sistemas lineares. Neste procedimento, A a
matriz aumentada do sistema, isto , A = [A | b].

5.3

O Mtodo de Gauss com Pivotao Completa

Nesta estratgia, no incio do passo k da fase de eliminao escolhido para piv o elemento
de maior mdulo dentre aqueles que ainda atuam no processo de eliminao, isto :
(k1)

Piv = a(k1)
= max |aij
rs
i,jk

|;

Assim, aps localizado o maior elemento em mdulo da matriz sob transformao,


necessrio pass-lo para a posio akk . Para tanto, so feitas, se necessrio, uma troca de
linhas e uma troca de colunas a cada passo k. Esta estratgia, entretanto, no muito
(k1)
empregada, pois envolve uma comparao extensa entre os elementos aij
, i, j k e
troca de linhas e colunas para posicionar o piv. Todo este processo acarreta um esforo
computacional bem maior que a estratgia de pivoteamento parcial e nem sempre resulta
em ganho significativo na qualidade da soluo produzida.

5.4
5.4.1

O Mtodo da Decomposio LU
Introduo

Em muitas situaes, desejvel resolver vrios sistemas lineares nos quais a matriz dos
coeficientes a mesma. Nesses casos, indicado resolver o sistema linear Ax = b por uma
tcnica de decomposio da matriz A. Dentre as tcnicas de decomposio mais utilizadas,
destacamos a da decomposio LU.

Sistemas Lineares

11

x);
procedimento GaussPivoteamentoParcial(n, A,
1 para k de 1 at n 1 faa
2
w |akk |;
3
r k;
4
para i de k at n faa
5
se |aik | > w ento
6
w |aik |;
7
r i;
8
fim-se;
9
fim-para;
10
para j de k at n + 1 faa
11
aux akj ;
12
akj arj ;
13
arj aux;
14
fim-para;
15
para i de k + 1 at n faa
16
mik aik /akk ;
17
para j de k + 1 at n + 1 faa
18
aij aij + mik akj ;
19
fim-para;
20
fim-para;
21 fim-para;
22 xn an,n+1 /ann ;
23 para i de n 1 at 1 passo 1 faa
24
SOM A 0;
25
para j de i + 1 at n faa
26
SOM A SOM A + aij xj ;
27
fim-para;
28
xi (ai,n+1 SOM A)/aii ;
29 fim-para;
30 Retorne x;
{ Retorne o vetor soluo }

fim GaussPivoteamentoParcial(n,A,x);
Figura 4: Algoritmo do Mtodo de Gauss com Pivoteamento Parcial
Por esta tcnica, uma matriz A decomposta como o produto de duas matrizes L e
U , sendo L uma matriz triangular inferior e U , uma matriz triangular superior, isto :
A = L.U
Desta forma, podemos reescrever o sistema Ax = b na seguinte forma:
Ax = (L.U )x = L.(U x) = b
Fazendo-se U x = y podemos resolver o sistema Ax = b em dois passos: Primeiramente,
resolvemos o sistema triangular inferior Ly = b, obtendo y como soluo. Em seguida, com
a soluo y obtida no passo anterior, resolvemos o sistema triangular superior U x = y,
obtendo x
como soluo. Em outras palavras, decompomos a resoluo de um sistema
linear na resoluo de dois sistemas triangulares: o primeiro, triangular inferior, que se
resolve facilmente por substituies progressivas (basta aplicar o Algoritmo da Fig. 2,

12

Marcone Jamilson Freitas Souza

considerando elementos diagonais unitrios) e o segundo, triangular superior, que se resolve


por substituies retroativas (Algoritmo da Fig. 1).
Antes de descrevermos o mtodo da decomposio LU com detalhes, apresentaremos
alguns conceitos necessrios sua fundamentao.
Definio: Seja A uma matriz quadrada de orden n, no-singular, isto , det(A) 6= 0.
Diz-se que A1 a inversa de A se AA1 = A1 A = I.
Teorema 2: Se A e B so matrizes de ordem n, inversveis, ento: (AB)1 = B 1 A1
Teorema 3: Se

M (0)

1
= m21
m31

(i) (M (0) )1

(ii) (M (1) )1

5.4.2

1
0 0
1 0 e M (1) = 0
0 1
0

1
0 0
= m21 1 0
m31 0 1

1
0
0
1
0
= 0
0 m32 1

0
1
m32

0
0 ento:
1

Fatorao LU de uma matriz

Os fatores L e U podem ser obtidos utilizando-se a ideia bsica do Mtodo de Gauss.


Mostremos como isso pode ser feito fatorando-se uma matriz A genrica de ordem 3.
Tabela 5: Fatorao LU de uma matriz
Linha Multiplicadores Coeficientes
Transformaes
das incgnitas
Elementares
(0)
(0)
(0)
(0)
a13
L1
a11 a12
(0)
(0)
(0)
(0)
(0)
(0)
L2
m21 = a21 /a11
a21 a22
a23
(0)
(0)
(0)
(0)
(0)
(0)
L3
m31 = a31 /a11
a31 a32
a33
(0)
(1)
(0)
(1)
(1)
(1)
L2
0 a22
a23 L2 m21 L1 + L2
(1)
(0)
(0)
(1)
(1)
(1)
(1)
(1)
a33 L3 m31 L1 + L3
L3
m32 = a32 /a22
0 a32
(2)
(2)
(2)
(1)
(1)
L3
0
0 a33 L3 m32 L2 + L3
(0)
(1)
(1)
Sejam A
A(2) , M (0)
matrizes definidas conforme a seguir:
,(0)A ,(0)
eM
(0)
a12 a13
a
11
(0)
(0)
A(0) = a(0)
a22 a2n Matriz A original
21
(0)
(0)
(0)
a31 a32 a33
(0)

(0)
(0)
a11 a12 a13

(1)
(1)
A(1) = 0
a22 a23 Matriz obtida ao final do passo k = 1
(1)
(1)
0
a32 a33
(0)

(0)
(0)
a11 a12 a13

(1)
(1)
A(2) = 0
a22 a23 Matriz obtida ao final do passo k = 2
(2)
0
0
a33

Sistemas Lineares

13

0 0
1
1 0 e M (1) = 0
0 1
0

1
M (0) = m21
m31
Observe que:

M (0) A(0)

1
= m21
m31

0
1
m32

0
0
1

(0)
a
0 0
11
1 0 a(0)
21
(0)
0 1
a31

a12
(0)
a22
(0)
a32

(0)

(0)

a11

(0)
= m21 a(0)
11 + a21
(0)
(0)
m31 a11 + a31
(0)
(0)
(0)
a
a12 a13
11
(1)
(1)
= 0
a22 a23
(1)
(1)
0
a32 a33

(0)

(0)
a13
(0)
a2n
(0)
a33

a12
(0)
(0)
m21 a12 + a22
(0)
(0)
m31 a12 + a32

(0)
a13
(0)
(0)
m21 a13 + a23
(0)
(0)
m31 a13 + a33

(1)
=A

De forma anloga podemos mostrar que M (1) A(1) = A(2)


Resumindo, temos:
A(0) = A
A(1) = M (0) A(0)
(1)
(1)
(0) (0)
(1)
(0)
A(2) = M (1) A
|{z} = M M A
|{z} = M M A
A

M (0) A(0)

Logo:
A(2) = M (1) M (0) A
Premultiplicando ambos os membros da expresso anterior pela inversa de M (1) M (0) ,
obtemos:
(M (1) M (0) )1 A(2) = (M (1) M (0) )1 M (1) M (0) A = IA = A
|
{z
}
I

= (M (0) )1 (M (1) )1 A(2)

(0)
(0)
a11 a12
1
0 0
1
0
0

(1)
1
0 0
A = m21 1 0 0
a22
m31 0 1
0 m32 1
0
0
|
{z
}|
{z
}|
{z
A = (M

(1)

(0) 1

(2)

(M (0) )1

1
0
1
A = m21
m31 m32
|
{z
L

(M (0) )1

(0)

a
0
11

0 0
1
}| 0

(0)

a12
(1)
a22
0
{z

(0)

(0)
a13
(1)
a23
(2)
a33
}

A(2)

a13
(1)
a23
(2)
a33
}

Assim, podemos concluir que A = LU , sendo:


(i) U a matriz triangular superior obtida ao final da fase de eliminao do mtodo de
Gauss;
(ii) L uma matriz triangular inferior, cujos elementos da diagonal principal so unitrios
e abaixo de cada elemento diagonal lkk = 1 encontram-se os multiplicadores da etapa
k da fase de eliminao com sinal trocado.

14

Marcone Jamilson Freitas Souza

5.4.3

O Mtodo da Decomposio LU

Este mtodo, tambm conhecido como Mtodo de Doolittle, consiste na seguinte sequncia
de passos:
(i) Obter a fatorao LU da matriz A;
(ii) Fazer U x = y;
(iii) Resolver o sistema triangular inferior Ly = b;
(iv) Obtida a soluo y do sistema Ly = b, resolver o sistema triangular superior U x = y.
Exemplo: Resolver pelo Mtodo da Decomposio LU

3x1 + 2x2 + 4x3


x1 + x2 + 2x3

4x1 + 3x2 2x3

o seguinte sistema linear:


= 1
= 2
= 3

(5.15)

(a) Obteno da fatorao LU da matriz dos coeficientes:


Tabela 6: Fatorao LU da matriz do sistema (5.15)
Linha Multiplicadores
Coeficientes
Transformaes
das incgnitas
Elementares
(0)
L1
3
2
4
(0)
L2
m21 = 1/3
1
1
2
(0)
L3
m31 = 4/3
4
3
-2
..
(0)
(0)
(1)
(1)
L2
1/3 . 1/3
2/3 L2 (1/3) L1 + L2
.
(0)
(0)
(1)
(1)
L3
m32 = (1/3)/(1/3) = 1 4/3 .. 1/3
-22/3 L3 (4/3) L1 + L3
.
(1)
(1)
(2)
(2)
L3
4/3
1 ..
-8
L3 1 L2 + L3
Logo:

A(2)

3
2
......
.
1/3 .. 1/3
.........
..
4/3
1
.

1 0 0
3 2
4

e U = 0 1/3 2/3
2/3
= L = 1/3 1 0

4/3
1
1
0 0
8

(b) Resoluo do sistema Ly = b:

y1 +

(1/3)y1 + y2

(4/3)y1 + y2

(c) Resoluo do sistema U x = y:

2x2
3x1 +
(1/3)x2

= 1
= 2
= 3

+ y3

y = 1 5/3

+
+

4x3
(2/3)x3
8x3

=
=
=

y1 = 1
y2 = 5/3
y3 = 0

1
5/3
0

x1 = 3
x2 =
5
x3 =
0

Sistemas Lineares

15

x
=

3 5

A obteno dos fatores L = [lij ] (com diagonal principal unitria) e U = [uij ] no


Mtodo de Doolittle pode ser realizada utilizando as seguintes frmulas:
u1j

uij

a1j

j = 1, , n

aij

li1

ai1
u11

lij

1
ujj

i1
P

lik ukj

j = i, , n; i 2

k=1

j1
P
aij
lik ukj

i = 2, , n
i = j + 1, , n; j 2

k=1

Figura 5: Frmulas para obteno dos fatores L e U

5.5

O Mtodo da Decomposio LU com Pivotao Parcial

Para aplicar a estratgia de pivoteamento parcial ao Mtodo da Decomposio LU faz-se


necessrio armazenar um vetor de permutao P .
Mostremos atravs de um exemplo como o mtodo funciona.
Seja resolver o seguinte sistema linear:

9
3x1 4x2 + x3 =
x1 + 2x2 + 2x3 =
3
(5.16)

4x1
3x3 = 2
(a) Fatorao LU :
Tabela 7: Fatorao LU da matriz
Linha Multiplicadores
Coeficientes
das incgnitas
(0)
L1
3
-4
1
(0)
L2
1
2
2
(0)
L3
4
0
-3
(0)0
L1
4
0
-3
(0)
L2
m21 = 1/4
1
2
2
(0)0
L3
m31 = 3/4
3
-4
1
..
(1)
L2
1/4 .
2
11/4
.
(1)
L
3/4 .. -4
13/4
3

(1)

(1)
L3

L2

(2)

L3

.
3/4 ..
..
m32 = 2/(4) = 1/2 1/4 .
1/4

-4
2

do sistema (5.16)
Transformaes
Elementares

(0)0

L1

(0)0

L3

(0)

L3

(0)

L1

(1)

(0)0

(1)

L2 (1/4) L1

(0)

L3 (3/4) L1
0

(1)

13/4 L2

(1)
L3

Vetor
Permutao
1
2
3
3
2
1
(0)

+ L2

(0)

+ L3

2
1

(1)

(1)
L2

L3

11/4

..
(2)
(1)0
(1)0
-1/2 . 35/8 L3 (1/2) L2 + L3

Passo k = 1:
A matriz dos coeficientes e o vetor de permutao originais so:

16

Marcone Jamilson Freitas Souza

A(0)

3
= 1
4

4
2
0


1
1
2 ; P (0) = 2
3
3

Dado que na coluna k = 1 o maior elemento est na terceira linha, devemos permutar
as linhas L1 e L3 , o que resultar na seguinte matriz dos coeficientes transformada:


4
0 3
3
0
0
2
2 ; P (0) = 2
A(0) = 1
1
3 4
1
Prosseguindo com o Mtodo de Gauss, obtemos a seguinte matriz transformada ao
final do passo k = 1:

4
0
3
3
2 11/4 ; P (1) = 2
A(1) = 1/4
1
3/4 4 13/4
Passo k = 2:
Analogamente, dado que na coluna k = 2, o maior elemento est na terceira linha,
devemos permutar as linhas L2 e L3 , o que resultar na seguinte matriz dos coeficientes
transformada:


4
0
3
3
0
0
A(1) = 3/4 4 13/4 ; P (1) = 1
1/4
2 11/4
2
Encerrado o passo k = 2 obteremos:


4
0
3
3
4 13/4 ; P (2) = 1
A(2) = 3/4
1/4 1/2 35/8
2
A partir da matriz A(2) extraimos

1
0
1
L = 3/4
1/4 1/2

as matrizes L e

0
0 e U =
1

U:
4
0
0

0
3
4 13/4
0 35/8

(b) Resoluo do sistema Ly = b:


onde b o resultado da aplicao do vetor de permutao ao vetor b.

Aplicando P (2) = 3 1 2 ao vetor b = 9 3 2 , obtemos: b = 2

y1 +
= 2 y1 = 2

(3/4)y1 +
y2
=
9 y2 = 21/2

(1/4)y1 (1/2)y2 + y3 =
3 y3 = 35/4

t
y = 2 21/2 35/4
(c) Resoluo do sistema U x = y:

3x3 = 2 x1 =
4x1 + 0x2
4x2 + (13/4)x3 = 21/2 x2 =

(35/8)x3 = 35/4 x3 =

t
x
= 1 1 2

1
1
2

Sistemas Lineares

5.6

17

Mtodo de Cholesky

Este mtodo se aplica quando a matriz dos coeficientes A simtrica (A = At ) e definida


positiva (xt Ax > 0 x 6= 0). Nesta situao, a matriz A pode ser fatorada em
A = LU = LLt , sendo os elementos lij de L obtidos a partir das seguintes frmulas:
l11

lii

li1

lij

sa11
aii

i1
P
j=1

ai1
l11
1
ljj

aij

2
lij

j1
P

i = 2, , n
i = 2, , n

lik ljk

i = j + 1, , n; j 2

k=1

Figura 6: Frmulas para obteno do fator L do Mtodo de Cholesky


Conhecido o fator L, o sistema Ax = L |{z}
Lt = b se resolve em dois passos. Primeiy

ramente, resolvemos o sistema Ly = b, obtendo y como soluo. A seguir, resolvemos o


sistema Lt x = y, obtendo x
como soluo.
Observamos que em uma matriz definida positiva todos os autovalores da matriz so
positivos, isto , so positivas todas as razes do polinmio caracterstico det(A I) = 0).
Devido estabilidade numrica da decomposio de uma matriz simtrica definida positiva, no se faz necessrio o uso da pivotao parcial na decomposio de Cholesky.
Exemplo: Seja resolver o seguinte sistema linear pelo

4x1 + 2x2 + 14x3


2x1 + 17x2 5x3

14x1 5x2 + 83x3

Mtodo de Cholesky:
=
=
=

14
101
155

(5.17)

Soluo:
Procuremos coeficientes lij tais que:

14
l11
5 = l21
83
l31
}
|

4
2
2 17
14 5
|
{z
A

0
l22
l32
{z

0
l11
0 0
l33
0
}|

l21
l22
0
{z

l31
l32
l33
}

Lt

Resolvendo-o,
obtemos:

21
31
l11 = a11 = 4 = 2
l21 = al11
= 22 = 1
l31 = al11
=
p

2
l22 = a22 l21 = 17 1 = 4
1
l32 = l22
(a l31 l21 ) = 14 (5 7 1) = 3
p 32
p
2 l2 =
l33 = a33 l31
83 72 (3)2 = 5
32
Conhecido o fator L, resolvamos, agora, o sistema triangular inferior Ly = b:

2
1
7

0 0
y1
14
4 0 y2 = 101
3 5
y3
155

14
2

=7

18

Marcone Jamilson Freitas Souza

t
cuja soluo : y = 7 27 5
O passo seguinte, agora, resolver o sistema triangular superior U x = Lt x = y:

2 1
7
x1
0 4 3 x2 =
0 0
5
x3

7
27
5

cuja soluo :
x
=

5.7

6 1

Refinamento da Soluo

Em vista da possibilidade de existncia de erros gerados nos clculos dos multiplicadores,


em geral a soluo x
(0) de um sistema linear Ax = b no exata.
Procuremos, ento, uma soluo x
(1) melhor que x
(0) na forma:
x
(1) = x
(0) + (0)

(5.18)

onde:

x
(0) =

(0)

x
1
(0)
x
2
..
.

; (0) =

(0)

(0)

1
(0)
2
..
.

(0)

x
n

isto , (0) a parcela de correo do vetor x


(0) .
Logo, podemos escrever:
A
x(1) = b
A(
x(0) + (0) ) = b
A
x(0) + A(0) = b
A(0) = b A
x(0) = R(0)
(0)

A
= R(0) , isto , para determinarmos a parcela de correo A(0) basta
resolvermos um sistema linear onde A a matriz dos coeficientes do sistema original e
R(0) o resduo produzido pela soluo x
(0) .
Com isso, obteremos:
(0)

(0)
x
1 + 1
(0)
(0)
x
2 + 2

x
(1) = x
(0) + (0) =
..

.
(0)

(0)

x
n + n

Evidentemente, x
(1) tambm pode no ser uma boa soluo. Neste caso, procuraremos uma soluo ainda melhor x
(2) , na forma: x
(2) = x
(1) + (1) , sendo a parcela de
(2)
(1)
(1)
correo obtida resolvendo-se o sistema A = R , sendo R(1) o resduo produzido
pela soluo aproximada x
(1) .
Este processo se repete at que uma das seguintes condies seja satisfeita:
(k)

(i) max |ri | < , onde a preciso estabelecida;


1in

Sistemas Lineares

19

(ii) k > ITERMAX, onde ITERMAX o nmero mximo de iteraes.


Obs.: Dado o fato de que no processo de refinamento de uma soluo devem ser resolvidos
vrios sistemas A(k) = R(k) , com k = 1, 2, , ITERMAX, sendo a matriz dos coeficientes a mesma, o mtodo mais indicado o da decomposio LU com pivotao parcial.
Exerccio
Resolva o sistema 5.19, a seguir, pelo Mtodo da Decomposio LU retendo durante os
(k)
clculos 3 casas decimais (com truncamento). Refine a soluo at que max |ri | < 0, 010
1in

ou k > 2 iteraes.

3x1
7x1

2x1

5x2
3x2
4x2

+ 3x3
+ x3
5x3

=
=
=

5
10, 416
19, 652

(5.19)

(a) Obteno da fatorao LU da matriz dos coeficientes:


A tabela 8 apresenta os passos relativos fatorao LU , sem pivotao, da matriz dos
coeficientes do sistema (5.19).
Tabela 8: Fatorao LU da matriz do sistema (5.19)
Linha Multiplicadores
(0)

L1
(0)
L2
(0)
L3

m21 = 7/3 = 2, 333


m31 = 2/3 = 0, 666

(1)
L2
(1)

L3

(2)

L3

m32 = (0, 670)/(14, 665) = 0, 045

Coeficientes
das incgnitas
3
5
3
7
-3
1
2
4
-5
.
(1)
2,333 .. -14,665
-5,999 L2
.
(1)
0,666 .. 0,670
-6,998 L3
..
(2)
0,666
-0,045 . -7,267 L3

Transformaes
Elementares

(0)

(0)

(0)

(0)

2, 333 L1 + L2
0, 666 L1 + L3
(1)

Desta tabela resulta a seguinte matriz:

3
5
3
........

.
.
(2)

2,
333
.
14,
665
5,
999
A =

.
.
.
.
.
.
.
.
.
.
.
.
.
.

..
0, 666
0, 045 . 7, 267

1
0
0
3
5
3
1
0 e U = 0 14, 665 5, 999
L = 2, 333
0, 666 0, 045 1
0
0
7, 267
(b) Determinao de x
(0) :
(b.1) Resoluo do sistema Ly = b:

y1 +

2, 333y1 +
y2

0, 666y1 0, 045y2 +

y3

(1)

0, 045 L2 + L3

=
5
y1 = 5
= 10, 416 y2 = 1, 249
= 19, 652 y3 = 16, 265

20

Marcone Jamilson Freitas Souza

y =

1, 249 16, 265

(b.2) Resoluo do sistema U x = y:

5x2 +
3x3 =
5
x1 =
3x1 +
14, 665x2 5, 999x3 = 1, 249 x2 =

7, 267x3 = 16, 265 x3 =

t
x
(0) = 2, 238 1, 000 2, 238

2, 238
1, 000
2, 238

(b.3) Avaliao de R(0) :

R(0) = b A
x(0)


5
3
= 10, 416 7
19, 652
2

3
2, 238
0
1 1, 000 = 0, 012
5
2, 238
0, 014

5
3
4

(k)

Como max |ri | = 0, 014 > 0, 010 devemos prosseguir com o refinamento da soluo
1i3

atual x
(0) .
(c) Determinao de x
(1) :
Como x
(1) = x
(0) + (0) , ento para calcular a nova soluo x
(1) , devemos obter a
(0)
(0)
parcela , a qual obtida resolvendo-se o sistema linear A = R(0) .
(c.1) Resoluo do sistema Ly = R(0) :

y1 +
=
0

2, 333y1 +
y2
= 0, 012

0, 666y1 0, 045y2 + y3 = 0, 014

t
y = 0 0, 012 0, 014

y1 =
y2 =
y3 =

0
0, 012
0, 014

(c.2) Resoluo do sistema U (0) = y:


(1)
3

5 (2)
14, 665 (2)

3 (3)
5, 999 (3)
7, 267 (3)

= 0, 001

(0)

0 (1) =
0, 012 (2) =
0, 014 (3) =
t
0, 000 0, 001
=
=
=

0, 001
0, 000
0, 001

(c.3) Determinao da nova soluo x


(1) :

2, 238
0, 001
2, 237
x
(1) = x
(0) + (0) = 1, 000 + 0, 000 = 1, 000
2, 238
0, 001
2, 237
(c.4) Avaliao de R(1) :

R(1) = b A
x(1)


5
3
= 10, 416 7
19, 652
2

(k)

5
3
4

3
2, 237
0, 000
1 1, 000 = 0, 006
5
2, 237
0, 007

Como max |ri | = 0, 007 < 0, 010, concluimos que x


(1) a soluo do sistema (5.19)
1i3

com a preciso requerida.

Sistemas Lineares

5.8

21

Mtodos Iterativos

Tratam-se de mtodos nos quais a soluo x


de um sistema linear Ax = b obtida como
limite de uma sequncia de aproximaes sucessivas x
(0) , x
(1) , x
(2) , , x
(k) , , sendo
(0)
dada uma aproximao inicial x
, isto :
x
= lim x
(k)

(5.20)

5.8.1

Mtodo de Jacobi

Seja o sistema linear Ax = b em sua forma expandida:

a11 x1

a21 x1
..

an1 x1

+
+
..
.

a12 x2
a22 x2
..
.

+
+
..
.

..
.

+
+
..
.

a1n xn
a2n xn
..
.

=
=
..
.

b1
b2
..
.

an2 x2

ann xn

bn

Explicitemos x1 na primeira equao, x2 na segunda equao e assim sucessivamente.


b1 (a12 x2 + a13 x3 + + a1n xn )
a11
b2 (a21 x1 + a23 x3 + + a2n xn )
x2 =
a22
..
.
x1 =

xn =

bn (an1 x1 + an2 x2 + + an,n1 xn1 )


ann

O mtodo de Jacobi consiste na seguinte sequncia de passos:


(i) Escolher uma aproximao inicial x(0) =

(0)

x1

(0)

x2

(0)

xn

it

arbitrria;

(ii) Gerar aproximaes sucessivas x(k) a partir de x(k1) com base nas seguintes equaes
de iterao:
(k1)

+ a13 x3
a11

(k1)

+ a23 x3
a22

(k1)

+ an2 x2
+ + an,n1 xn1 )
ann

(k)

b1 (a12 x2

(k)

b2 (a21 x1

x1 =
x2 =

(k1)

+ + a1n xn

(k1)

+ + a2n xn

(k1)

(k1)

..
.
x(k)
n

bn (an1 x1

(k1)

(k1)

22

Marcone Jamilson Freitas Souza


(k)

Sinteticamente, cada componente xi


bi
(k)

xi

n
P

determinada com base na seguinte equao:


(k1)

j=1
j6=i

aij xj

i = 1, 2, , n

aii

(5.21)

Na forma matricial:
x(k) = J.x(k1) + D k = 1, 2,

(5.22)

sendo J e D definidas de acordo com (5.23) e (5.24). A matriz J conhecida como


matriz de iterao de Jacobi.

J =

0
a21 /a22
..
.

a12 /a11
0
..
.

a13 /a11
a23 /a22
..
.

..
.

a1n /a11
a2n /a22
..
.

an1 /ann

an2 /ann

an3 /ann

D=

b1 /a11
b2 /a22
..
.

(5.23)

(5.24)

bn /ann
(iii) Interromper o processo quando um dos critrios abaixo for satisfeito:
(k)

(1) max |xi


1in

(k1)

xi

| < , onde a tolerncia permitida;

(2) k > ITERMAX, onde ITERMAX o nmero mximo de iteraes.


Exemplo:
Resolver o sistema (5.25), a seguir, pelo mtodo de Jacobi usando como aproximao

t
(k)
(k1)
inicial x(0) = 0 0 0
e como critrio de parada max |xi xi
| < 0, 001 ou
1i3

k > 10 iteraes:

10x1
x1

2x1

2x2
15x2
3x2

+
+
+

x3
x3
10x3

= 7
= 32
= 6

(a) Equaes de iterao:


x(k) = J.x(k1) + D, onde:

0
J = 1/15
2/10

2/10
0
3/10

1/10
1/15
0

7/10
D = 32/15
6/10

(5.25)

Sistemas Lineares

23

(k1)

(k)

x1 =

7 2x2

10
(k1)
x1

(k)

32

(k)

6 2x1

x2 =

(k1)

x3

(k1)

x3
15

(k1)

x3 =

(k1)

3x2
10

(b) Determinao da soluo do sistema:


(k)

x1

0
1
2
3
4
5
6

0
0,7000
1,0667
0,9993
0,9977
1,0003
1,0000

(k)

x2

0
-2,1333
-2,0467
-1,9889
-2,0000
-2,0004
-1,9999

Portanto, x
= 1, 0000
ciso < 0, 001.
5.8.2

(k)

(k)

x3

Erro = max |xi


1i3

(k1)

xi

0
0,6000
1,1000
1,0007
0,9968
1,0005
1,0000

2,1333
0,5000
0,0993
0,0111
0,0037
0,0004
t
1, 9999 1, 0000
a soluo do sistema (5.25) com pre-

Convergncia do Mtodo de Jacobi

Seja o sistema Ax = b posto na forma x = Jx + D, onde J = (fij )nn e:


(
fij =

0
aij /ajj

se i = j
se i =
6 j

Se x
a soluo de Ax = b ento podemos escrever:
x
= Jx
+D

(5.26)

Por outro lado, as equaes de iterao no Mtodo de Jacobi so:


x(k) = Jx(k1) + D

k = 1, 2,

(5.27)

Fazendo (5.27) - (5.26), obtemos:

x(k) x
= J x(k1) x

k = 1, 2,

(5.28)

Seja E (k) = x(k) x


o erro cometido na k-sima iterao. Logo:
E (k) = J.E (k1)
Ou, em termos de componentes:

k = 1, 2,

(5.29)

24

Marcone Jamilson Freitas Souza

(k)

e1

e(k)
2
..

(k)
en

(k1)

=
=

(k1)

0e1
(k1)
f21 e1
..
.

+
+

f12 e2
(k1)
0e2
..
.

(k1)

fn2 en

= fn1 e1

(k1)

+
+

..
.

(k1)

f1n en
(k1)
f2n en
..
.

(5.30)

(k1)

0en

Aplicando propriedades de mdulo sobre as equaes do sistema (5.30), obtemos:


n
X

n
(k1) X
(k1) X
(k1) X
(k)
|ei | e1
|f
|
+
e
|f
|
+

+
e
|fin |

i1
i2

i=1

i=1
i6=1

i=1
i6=2

(5.31)

i=1
i6=n

Teorema: (Critrio das colunas) condio suficiente para que o Mtodo de Jacobi
convirja que:
|ajj | >

n
X

|aij |

j = 1, 2, , n

(5.32)

i=1
i6=j

O critrio das colunas estabelece que se os elementos diagonais forem dominantes nas
colunas, ento o Mtodo de Jacobi converge, independentemente da soluo inicial.
Provaremos, agora, esse fato.
Prova:
Hiptese: Os elementos diagonais so dominantes nas colunas
(k)
Tese: ei 0, isto , x(k) x

A partir da hiptese, isto , do fato de que:


|ajj | >

n
X

|aij |

j = 1, 2, , n

i=1
i6=j

podemos escrever:

n
X
aij

ajj < 1

j = 1, 2, , n

i=1
i6=j

n
X

|fij | < 1

j = 1, 2, , n

i=1
i6=j

Seja

n
P
i=1
i6=j

|fij | < L < 1

j = 1, 2, , n. Levando esse resultado na expresso (5.31),

obtemos:
n
n

X
X
(k)
(k1)
ei L
ei

i=1

i=1

Fazendo k = 1, 2, 3, podemos escrever:

k = 1, 2,

Sistemas Lineares

25

n
n

X
X
(1)
(0)
e i L
ei
i=1

i=1

n
n
n

X
X
X
(2)
(1)
(0)
e i L
ei L2
e i
i=1

i=1

i=1

..
.
n
n

X
X
(0)
(k)
ei
ei Lk
i=1

i=1

Tendo em vista que 0 < L < 1, ento fazendo k , obteremos:


lim

X
(k)
e i 0
i=1

(k)
(k)
Do resultado anterior extramos que ei 0 = ei 0 i = 1, 2, , n. Assim,
(k)

(k)

como ei = xi
demonstrar.
5.8.3

xi

(k)

i, obteremos: xi

xi = x(k) x
, conforme queramos

Algoritmo do Mtodo de Jacobi

A Figura 7, a seguir, apresenta o pseudocdigo do Mtodo de Jacobi. Tol a tolerncia


admitida, ITERMAX o nmero mximo de iteraes permitida e x o vetor soluo, o
qual comea com uma aproximao inicial.

26

Marcone Jamilson Freitas Souza

procedimento Jacobi(n, A, b, ITERMAX, Tol, x);


1 PARE FALSE ;
2 k 0;
3 erro ;
4 enquanto (k < ITERMAX e erro Tol) faa
5
erro 0;
6
para i de 1 at n faa
7
xanti xi ;
8
fim-para;
9
para i de 1 at n faa
10
soma 0;
11
para j de 1 at n faa
12
se (j 6= i) ento soma soma + aij xantj ;
13
fim-para;
14
xi (bi soma)/aii ;
15
se (|xi xanti | > erro) ento
16
erro |xi xanti |;
17
fim-se;
18
fim-para;
19
k k + 1;
20 fim-enquanto;
21 se (erro < Tol ) ento
22
Retorne x;
{ Retorne o vetor soluo }
23 seno
24
Imprima: No houve convergncia em ITERMAX iteraes
fim Jacobi
Figura 7: Algoritmo do Mtodo Iterativo de Jacobi
5.8.4

Mtodo de Gauss-Seidel

Este mtodo difere do anterior apenas com relao s equaes de iterao, as quais so:

(k)

x1 =
(k)

x2 =
(k)

x3 =

(k1)

b1 (a12 x2

(k1)

+ a13 x3
a11

(k)

(k1)

(k)

(k)

(k1)

+ + a1n xn

(k1)

+ + a2n xn
b2 (a21 x1 + a23 x3
a22

(k1)

b3 (a31 x1 + a32 x2 + + a3n xn


a33

..
.
(k)

x(k)
n =

(k)

(k)

bn (an1 x1 + an2 x2 + + an,n1 xn1 )


ann

Sinteticamente:

Sistemas Lineares

27

bi
(k)

xi

i1
P
j=1

(k)

aij xj

n
P

j=i+1

(k1)

aij xj

i = 1, 2, , n

aii

(5.33)

Na forma matricial, o Mtodo de Gauss-Seidel pode ser posto na forma:


x(k) = Lx(k) + U x(k1) + D
sendo:

L=

U =

0
a21 /a22
a31 /a33
..
.

0
0
a32 /a33
..
.

0
0
0
..
.

..
.

0
0
0
..
.

an1 /ann

an2 /ann

an3 /ann

0
0
0
..
.

a12 /a11
0
0
..
.

a13 /a11
a23 /a22
0
..
.

..
.

a1n /a11
a2n /a22
a31 /a33
..
.

b1 /a11
b2 /a22

D=
..

.
bn /ann

(5.34)

A equao (5.34) pode ser escrita na forma x(k) = Gx(k1) + D. De fato, a partir de
(5.34), podemos escrever:
x(k) Lx(k) = U x(k1) + D
(I L) x(k) = U x(k1) + D
1

x(k) = (I L)
|
{z

U x(k1) + (I L)
}
{z
|

G
(k)

(k1)

= Gx

D
}

+ D.

A matriz G, dada pela equao (5.35), a chamada matriz de iterao de GaussSeidel.


G = (I L)1 U

(5.35)

Exemplo:
Resolver o sistema abaixo (que o mesmo sistema 5.25 usado para exemplificar o Mtodo de Jacobi) pelo Mtodo de Gauss-Seidel usando como aproximao inicial x(0) =

t
(k)
(k1)
0 0 0
e como critrio de parada max |xi xi
| < 0, 001 ou k > 10 iteraes:
1i3

x3 = 7
10x1 + 2x2 +
x1 15x2 +
x3 = 32

2x1 + 3x2 + 10x3 = 6

28

Marcone Jamilson Freitas Souza

(a) Equaes de iterao:


(k)
(k1)
x(k) =
+ D,
Lx + U x
onde:
0
0
0
0 2/10
0
0 , U = 0
0
L = 1/15
2/10 3/10 0
0
0

(k1)

(k)

x1 =
(k)

x2

(k)

7 2x2

1/10
7/10
1/15 e D = 32/15
0
6/10

(k1)

x3

10
(k)
(k1)
32 x1 x3
=
15
(k)

x3 =

(k)

6 2x1 3x2
10

(b) Determinao da soluo do sistema:


(k)

x1

0
1
2
3
4

0
0,7000
1,0087
0,9991
1,0000

(k)

x2

0
-2,0867
-1,9937
-2,0003
-2,0000

Portanto, x
= 1, 0000
ciso < 0, 001.
5.8.5

(k)

x3

(k)

Erro = max |xi


1i3

(k1)

xi

0
1,0860
0,9964
1,0003
1,0000

2,0867
0,3087
0,0096
0,0009
t
2, 0000 1, 0000
a soluo do sistema (5.25) com pre-

Algoritmo do Mtodo de Gauss-Seidel

A Figura 8, a seguir, apresenta o pseudocdigo do Mtodo de Gauss-Seidel. Tol a


tolerncia admitida, ITERMAX o nmero mximo de iteraes permitida e x o vetor
soluo, o qual comea com uma aproximao inicial.
5.8.6

Convergncia dos Mtodos Iterativos

Para os mtodos iterativos de Jacobi e Gauss-Seidel so vlidos os seguintes critrios de


convergncia:
CRITRIO DAS COLUNAS: condio suficiente para que um sistema linear convirja usando um mtodo iterativo que:
|ajj | >

n
X

|aij |

j = 1, 2, , n

i=1
i6=j

Alm do mais, quanto mais prximo de zero estiver a relao


rpida ser a convergncia.

Pn
i=1 |aij |
=j
max i6|a
,
jj |
1jn

mais

Sistemas Lineares

29

procedimento Gauss-Seidel(n, A, b, ITERMAX, Tol, x);


1 PARE FALSE ;
2 k 0;
3 erro ;
4 enquanto (k < ITERMAX e erro Tol) faa
5
erro 0;
6
para i de 1 at n faa
7
xant xi ;
8
soma 0;
9
para j de 1 at n faa
10
se (j 6= i) ento soma soma + aij xj ;
11
fim-para;
12
xi (bi soma)/aii ;
13
se (|xi xant| > erro) ento
14
erro |xi xant|;
15
fim-se;
16
fim-para;
17
k k + 1;
18 fim-enquanto;
19 se (erro < Tol ) ento
20
Retorne x;
{ Retorne o vetor soluo }
21 seno
22
Imprima: No houve convergncia em ITERMAX iteraes
fim Gauss-Seidel
Figura 8: Algoritmo do Mtodo Iterativo de Gauss-Seidel
CRITRIO DAS LINHAS: condio suficiente para que um sistema linear convirja
usando um mtodo iterativo que:
|aii | >

n
X

|aij |

i = 1, 2, , n

j=1
j6=i

Alm do mais, quanto mais prximo de zero estiver a relao

Pn
j=1 |aij |
=i
max j6|a
,
ii |
1in

mais

rpida ser a convergncia.


CRITRIO DE SASSENFELD: Seja
i1
P

i =

(|aij | j ) +

j=1

n
P
j=i+1

|aij |

|aii |

condio suficiente para que um mtodo iterativo convirja, que:


= max i < 1
1in

Alm disso, quanto menor for mais rpida ser a convergncia.

(5.36)

30

Marcone Jamilson Freitas Souza

CRITRIO DO RAIO ESPECTRAL: condio necessria e suficiente para que


um mtodo iterativo convirja que (F ) < 1, isto , que o raio espectral (maior
autovalor, em mdulo) da matriz de iterao do mtodo seja menor que a unidade.
Alm disso, quanto mais prximo de zero for (F ) mais rpida ser a convergncia.
Exemplo 1:
Verificar se h garantia de convergncia do sistema a

+
x3
3x1
x1 x2

2x1 + x2 + 3x3

seguir usando um mtodo iterativo.


= 3
= 1
= 9

(5.37)

(a) Critrio das colunas:


|a11 | = |3| = 3

6>

|a21 | + |a31 | = |1| + |2| = 3

|a22 | = | 1| = 1 6> |a12 | + |a32 | = |1| + |0| = 2


|a33 | = |3| = 3

> |a13 | + |a23 | = |2| + |1| = 3

Como o critrio das colunas no verificado para as colunas 1 e 2 (bastava que no fosse
satisfeito para uma nica coluna), concluimos que esse critrio no garante convergncia
se usarmos um mtodo iterativo.
(b) Critrio das linhas:
|a11 | = |3| = 3

>

|a12 | + |a13 | = |0| + |1| = 1

|a22 | = | 1| = 1 6> |a21 | + |a23 | = |1| + |0| = 1


|a33 | = |3| = 3

6> |a31 | + |a32 | = |2| + |1| = 3

Como o critrio das linhas no verificado para as linhas 2 e 3, concluimos que no h


garantia de convergncia, por esse critrio, se usarmos um mtodo iterativo.
(c) Critrio de Sassenfeld:
|a12 |+|a13 |
= |0|+|1|
= 1/3
|a11 |
|3|
|1| 13 +|0|
|a21 |1 +|a23 |
2 =
= |1| = 1/3
|a22 |
|2| 13 +|1| 31
1 +|a32 |2
=
=
3 = |a31 ||a
|3|
33 |
= max j = max{ 13 , 13 , 31 } = 13
1i3

1 =

1/3

Como = 1/3 < 1 resulta que o critrio de Sassenfeld foi satisfeito. Portanto, pode-se
aplicar um mtodo iterativo ao sistema (5.37), uma vez que h garantia de convergncia
do mesmo.
Exemplo 2:
Verificar se h garantia de convergncia do sistema a seguir usando um mtodo iterativo.

Sistemas Lineares

31

0, 5x1
x1

0, 4x1

+
+

0, 6x2
x2
0, 4x2

+ 0, 3x3
+
x3
+
1x3

=
=
=

0, 2
0
0, 6

(5.38)

Soluo:
Claramente os critrios da linha e da coluna no se aplicam. Apliquemos, ento, o
critrio do raio espectral. As matrizes de iterao dos mtodos de Jacobi e Gauss-Seidel,
dadas respectivamente por (5.23) e (5.35), so:

J =L+U

0
1, 2
0
= 1
0, 4 0, 4

0, 6
1 = (J) = 1, 1200
0

S = (I L)1 U

0 1, 2
0 1, 2
0 0, 96

0, 6
0, 4 = (S) = 0, 6928
0, 08

Como (J) > 1 e (S) < 1 ento somente pelo Mtodo de Gauss-Seidel haver convergncia.

5.9

Clculo de Determinantes

Um subproduto da resoluo de sistemas lineares por meio de mtodos diretos o clculo


de determinantes. Mostremos como calcular o determinante de uma matriz pelo Mtodo
da Decomposio LU .
Como vimos, a matriz A pode ser decomposta como produto de dois fatores L e U ,
onde L uma matriz triangular inferior com elementos diagonais unitrios e U uma matriz
triangular superior, isto : A = LU . Assim, podemos escrever:
det(A)

det(L.U ) = (det(L)) (det(U ))


n ! n
!
Y
Y
=
lii
uii
i=1

n
Y

i=1

uii = produto dos pivs

i=1

No caso de haver pivoteamento:


det(A) = (1)k det(L.U ) = (1)k produto dos pivs
sendo k o nmero de trocas de linhas que ocorreram durante o processo de decomposio.
Exemplo:
Na decomposio LU da matriz

3
A= 1
4

4
2
0

1
2
3

32

Marcone Jamilson Freitas Souza

com decomposio parcial, obtemos os seguintes fatores L e U :

1
0 0
4
0
3
1 0 e U = 0 4 13/4
L = 3/4
1/4 1/2 1
0
0 35/8
com 2 trocas de linhas. Logo:
det(A) = (1)k det(L.U ) = (1)2 4 (4) 35/8 = 70

5.10

Sistemas Lineares Complexos

Um sistema linear Ax = b dito complexo se seus elementos so nmeros complexos, isto


, se:
A = M + Ni
x = s + ti
b

= c + di

sendo M e N matrizes n n, s, t, c, d vetores n 1 e i2 = 1.


Exemplo: Dado o sistema linear complexo:

(2 + 3i)x1 + (4 2i)x2
7ix1

4x2
temos:

= 3 + 5i
= 9 + 3i

(5.39)

3 + 5i
s1 + t1 i
2 + 3i 4 2i
, b=
, x=
A=
9 + 3i
s2 + t2 i
7i
4



2
4
3 2
3
5
M=
, N=
, c=
, d=
0 4
7
0
9
3

Para descomplexificar esse sistema procedemos como segue:


Ax = b
(M + N i)(s + ti) = (c + di)
M s + N si + M ti + N ti2 = c + di
M s + N si + M ti N t = c + di
M s N t + (N s + M t)i = c + di
Como duas entidades complexas so iguais se forem iguais as suas partes real e imaginria, ento:

Ms Nt = c
Ns + Mt = d
As equaes anteriores formam um sistema linear de coeficientes reais, cujas incgnitas
so os vetores s e t, que pode ser resolvido por qualquer um dos mtodos apresentados
anteriormente. Esse sistema pode ser colocado na seguinte forma matricial:

M N
s
c
=
N
M
t
d
Exemplo: Resolver o sistema (5.39) por qualquer mtodo numrico.

Sistemas Lineares

5.11

33

Clculo da Inversa de uma Matriz

Seja Ann a matriz que se deseja inverter. Se Ann possui a inversa Xnn ento AX = I.
Sejam X1 , X2 , , Xn as colunas de X. Para se achar a matriz inversa faz-se necessrio
resolver n sistemas lineares cuja matriz dos coeficientes a mesma, isto , devem ser
resolvidos os sistemas:
AX1 = ( 1 0 0 0 )t
AX2 = ( 0 1 0 0 )t
..
.
AXn = ( 0 0 0 1 )t
O mtodo mais indicado para calcular a inversa de uma matriz o Mtodo da Decomposio LU , uma vez que tem-se que resolver vrios sistemas lineares com uma mesma
matriz dos coeficientes.
Exerccio:
Aplicar o mtodo anterior para encontrar a inversa da matriz:

3
5
3
1
A = 7 3
2
4 5

5.12

Comparao entre Mtodos

A Tabela 9 compara os mtodos iterativos e diretos com relao a vrios aspectos.


Tabela 9: Comparao entre os mtodos numricos
Mtodo Direto
Mtodo Iterativo
A soluo sempre obtida
H garantia de obter soluo
somente sob certas condies
Nmero de
possvel determinar a priori
No possvel determinar a
operaes
o nmero de operaes necessrias princpio a complexidade
Esparsidade
Destri a esparsidade da matriz
Preserva a esparsidade da
durante a fase de eliminao
matriz
Erros de
Os erros aparecem durante a
Apenas a soluo corrente
arredondamento aplicao das transformaes
sujeita a erro. No h
elementares sobre as equaes
propagao dos erros porque
do sistema. Esse erro se propaga
so usados os coeficientes
porque as transformaes de cada originais da matriz A e vetor
fase so realizadas a partir de
b no clculo das componentes
equaes transformadas da fase
da soluo.
anterior, as quais esto sujeitas
a erros. Essa propagao de erros
pode ser minimizada usando-se
tcnicas de pivoteamento.
Item
Convergncia

5.13

Mal Condicionamento de Sistemas Lineares

Resolva os sistemas lineares (a) e (b) a seguir e compare suas solues.

34

Marcone Jamilson Freitas Souza

(a)

x
x

y
1, 00001y

=
=

1
0

(b)

x
y
x 0, 99999y

= 1
= 0

O que aconteceu e por qu? Esta uma situao em que o sistema dito mal condicionado".
Dizemos que um sistema bem condicionado (estvel) se pequenas mudanas nos coeficientes e nos termos independentes acarretam pequenas mudanas na soluo do sistema.
No caso de sistemas mal condicionados, pequenas mudanas nos dados de entrada
provocam grandes variaes na soluo final.
Um critrio prtico para verificar se um sistema mal condicionado consiste em avaliar
o determinante normalizado da matriz dos coeficientes, a saber:
det(NormA) =

det A
1 2 . . . n

(5.40)
p
onde i = a2i1 + a2i2 + + a2in
Se o mdulo desse determinante estiver muito prximo de zero (| det(NormA)| 1)
pode-se esperar o mal condicionamento do sistema.
Exerccio:
Verifique se o sistema (5.41) mal condicionado.

8x2 +
9x3
7x1 +
8x1 +
9x2 + 10x3

9x1 + 10x2 +
8x3

5.14

Aplicaes

5.14.1

Eletricidade

= 24
= 27
= 27

(5.41)

Seja o diagrama de circuito dado pela Figura 9:


A

2
1

100 V

0V
3

Figura 9: Diagrama de circuito de uma rede eltrica


Pela Lei de Ohm, a corrente que flui do n p para o n q de uma rede eltrica
V V
calculada com base na frmula Ipq = pRpq q , com I em ampres e R em Ohms, sendo Vp
e Vq as voltagens nos ns p e q, respectivamente, e Rpq a resistncia no arco pq.
Pela Lei de Kirchoff, a soma das correntes que chegam a cada n nula; assim, as
equaes que relacionam as voltagens podem ser obtidas.
Para o diagrama de circuito considerado, pede-se:

Sistemas Lineares

35

(a) Obter as equaes dos ns 1, 2 e 3;


(b) Aplique o critrio de Sassenfeld ao sistema resultante para mostrar que o mesmo
converge usando um mtodo iterativo;
(c) Resolver o sistema formado por um mtodo iterativo, com < 0.5, a fim de se obter
as voltagens em cada n do circuito.
Resposta: A soluo do sistema que contm as voltagens do circuito com erro < 0, 5 ,
pelo Mtodo de Gauss-Seidel:

74, 99
V = 70, 95
59, 17
t
Observao: A soluo exata V = [76 72 60] :

5.14.2

Estequiometria de reao qumica

Equilibrar a reao qumica:


KMnO4 + H2 SO4 + NaNO2 = K2 SO4 + MnSO4 + NaNO3 + H2 O
Sugesto: Atribua coeficientes xi s substncias que aparecem na equao. Como pela Lei
de Lavoisier, em uma reao qumica a soma das massas dos reagentes igual soma das
massas dos produtos resultantes, ento iguale a quantidade de cada elemento qumico que
aparece no lado esquerdo da equao quantidade desse mesmo elemento que aparece no
lado direito da equao. Esse procedimento, feito para cada elemento qumico, resultar
em um sistema de equaes lineares, onde as incgnitas so os coeficientes estequiomtricos xi da reao qumica. No caso de haver mais incgnitas do que equaes, o sistema
indeterminado, isto , h uma infinidade de solues para ele. Para gerar uma dessas
solues, basta atribuir um valor qualquer a uma das incgnitas. Caso apaream valores
negativos para alguma incgnita, tente outra atribuio, j que no caso real os coeficientes
estequiomtricos so nmeros inteiros positivos. Se a soluo do sistema for fracionria,
multiplique-a pelo determinante do sistema. Isto far com que todos os coeficientes sejam
inteiros.
Resposta: Uma das possveis solues :
2KMnO4 + 3H2 SO4 + 5NaNO2 = K2 SO4 + 2MnSO4 + 5NaNO3 + 3H2 O

Referncias
[1] L.C. Barroso, M.M.A. Barroso, F.F. Campos Filho, M.L.B. de Carvalho e M.L. Maia.
Clculo Numrico (com aplicaes), Editora HARBRA, So Paulo, 2a edio, 1987.
[2] F.F. Campos Filho, Algoritmos Numricos, Livros Tcnicos Cientficos Editora, 2a
edio, Rio de Janeiro, 2007.
[3] E. Kreyzig, Advanced Engineering Mathematics, John Wiles & Sons Inc., 70th
edition, New York, 1993.
[4] M.A.G. Ruggiero e V. L. R. Lopes, Clculo Numrico: Aspectos Tericos e Computacionais, Editora McGraw-Hill, So Paulo, 1988.

Você também pode gostar