Você está na página 1de 18

Capı́tulo 2

Resolução Numérica de Sistemas


Lineares

Métodos Diretos e Métodos Iterativos


O objetivo nesse capı́tulo é apresentarmos métodos numéricos para resolução de sistemas lineares.
Dependendo do método escolhido, buscaremos uma solução exata ou uma solução aproximada, o
que nos permite definir duas classes de métodos: métodos diretos e métodos iterativos. No caso
dos métodos diretos, as soluções não apresentam nenhum tipo de erro de truncamento, ou seja, a
solução encontrada será a solução exata. Os erros que possam vir a ocorrer serão decorrentes da
máquina empregada (erros de arredondamento).
Na segunda classe temos os chamados métodos iterativos, que diferente dos métodos diretos,
não produzem soluções exatas e sim, soluções aproximadas.

2.1 Método de Eliminação de Gauss


Começaremos nosso estudo com um método direto, o método da eliminação de Gauss. Considere o
sitema linear abaixo:


 a11 x1 + a12 x2 + ··· + a1n xn = b1

 a21 x1 + a22 x2 + ··· + a2n xn = b2
.. .. .. (2.1)


 . . .

an1 x1 + an2 x2 + ··· + ann xn = bn
n
X 
Podemos escrever o sistema (2.1) na forma matricial Ax = b aij xj = bi , i = 1, 2, · · · , n ,
j=1
onde A = [aij ]n×n , x = {xj }n×1 e b = {bi }n×1 .

Sabemos da álgebra linear que o sistema (2.1) admite solução se det A 6= 0, ou seja, se A é
invertı́vel, e assim sua solução é x = A−1 b. Mas do ponto de vista computacional, calcular a inversa
de uma matriz é muito custoso e, para evitar esse problema, utilizaremos o método de eliminação
de Gauss.

Eliminação Gaussiana

A idéia do método de Gauss é transformar o sistema dado num sistema triangular inferior (ou
superior), utilizando escalonamento de matrizes. Após esse processo, teremos o seguinte sistema:

9
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 10



 u11 x1 + u12 x2 + ··· + u1n xn = g1

 u22 x2 + ··· + u2n xn = g2
.. .. .. . (2.2)


 . . .

unn xn = gn
Uma vez triangularizado o sistema, através do algoritmo da retrosubstituição, encontramos a
solução procurada:
n
X
gi − uij xj
j=i+1
xi = , i = n, n − 1, · · · , 2, 1,
uii
n
X
onde uij xj = 0 sempre que j > n.
j=i+1

O que garante que o sistema Ax = b é equivalente ao sistema U x = g é o processo de escalona-


mento, onde o segundo sistema é obtido a partir do primeiro através de operações elementares.

Exemplo 2.1 Vamos utilizar o método de eliminação de Gauss para resolver o seguinte sistema
linear

 2x1 + x2 + x3 = 7
4x1 + 4x2 + 3x3 = 21 . (2.3)

6x1 + 7x2 + 4x3 = 32
Considerando a matriz ampliada do sistema, temos
 
2 1 1 | 7
[A | b] =  4 4 3 | 21  .
6 7 4 | 32
Passo 1: zerar a21 e a31

• defino 1 o pivô: a11 = 2


 a21 4
 m21 = a11 = 2 = 2
• defino os multiplicadores de linha =⇒
 a31 6
m31 = a11 = 2 = 3
 ′
 L2 = L2 − m21 L1
• defino as novas linhas da matriz =⇒
 ′
L3 = L3 − m31 L1

após estas operações teremos uma nova matriz


 
2 1 1 | 7
[A | b]′ =  0 2 1 | 7  .
0 4 1 | 11


Passo 2: zerar a32

• defino 2 o pivô: a22 = 2
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 11

a21 4
• defino os multiplicadores de linha =⇒ m21 = a11 = 2 =2
′′ ′ ′
• defino as novas linhas da matriz =⇒ L3 = L3 − m32 L2

e assim,
 
2 1 1 | 7
′′
[A | b] =  0 2 1 | 7  = [U | g]
0 0 −1 | −3

Usando o algoritmo da retrosubstituição,


=0
z }| {
X3
g3 − u3j xj
j=4 −3
x3 = = = 3
u33 −1

g2 − u23 x3
7 − 1(3)
x2 = = = 2
u22 2

g1 − u12 x2 − u13 x3
7 − 1(2) − 1(3)
x1 = = = 1
u11 2

e a solução do sistema (2.3) fica


 
1
x = (1, 2, 3)T ou x =  2  .
3

ALGORITMO DE GAUSS

Passo k: (O objetivo é eliminar xk das equações)

• i = k + 1, · · · , n, com n = dim A
(k)
• assumo akk 6= 0 → k o pivô
(k)
aik
• definição dos multiplicadores de linha =⇒ mik = (k)
, i = k + 1, · · · , n
akk

(k+1) (k) (k)
 aij
 := aij − mik akj
• definição das novas linhas da matriz =⇒ .

 (k+1) (k) (k)
bi := bi − mik bk
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 12

2.2 Decomposição LU

“Toda matriz não singular admite uma decomposição em duas matrizes triangulares, uma superior
e outra inferior”. Quem garante esse resultado é o próximo teorema.

Teorema 2.1 - Teorema de Gauss


Seja A uma matriz quadrada de ordem n tal que det A 6= 0. Sejam U uma matriz triangular
superior, 
uij se i ≤ j
U= ,
0 se i > j
e L uma matriz triangular inferior unitária,

 0 se i < j
L= 1 se i = j .

lij se i > j

Então existe e é única a decomposição A = LU , onde U é a matriz resultante do processo de


eliminação gaussiana e lij = mij (multiplicadores de linha).

Aproveitando nosso último exemplo, podemos encontrar a decomposição LU da matriz associada


ao sistema (2.3)
L U
  }| z
 z
{  }| {
2 1 1 1 0 0 2 1 1
A =  4 4 3  =  2 1 0   0 2 1 .
6 7 4 3 2 1 0 0 −1

Exercı́cio 2.1 Resolver o sistema linear abaixo através do método de eliminação de Gauss uti-
lizando quatro casas decimais de precisão na solução.

 x + y + z = 1
2x − y + 3z = 0 .

−x + y − 5z = 2

2.3 Métodos Iterativos

Vamos agora introduzir dois novos métodos que pertencem a classe dos métodos iterativos. Estes
métodos não mais resolvem o sistema exatamente, mas sim, a partir de uma estimativa inicial,
constróem uma sequência de aproximações que converge para a solução exata do sistema. Devido as
limitações de memória computacinal, esses métodos se mostram mais interessantes que os diretos, os
quais gastam grande quantidade de memória computacional (problemas de interesse da engenharia
possuem aproximadamente 105 incógnitas).
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 13

Método de Gauss–Jacobi

Considere o sistema linear


n
X
aij xj = bi , i = 1, 2, ... , n
j=1

Podemos escrevê–lo como:


 
n
1  X 
xi =  bi − aij xj  , i = 1, 2, ... , n
aii j=1
j6=i

O método de G.J. usa a maneira de escrever um sistema linear para gerar uma sequência de
aproximações:
 
n
(k+1) 1  X (k) 
xi = bi − aij xj  , i = 1, 2, ... , n k = 0, 1, 2, ...
aii j=1
j6=i
| {z }
F ormula de Gauss−Jacobi

Exemplo 2.2 Resolva numericamente o sistema abaixo usando o método de Gauss-Jacobi.


  
 10x1 + 3x2 + x3 = 14 0
2x1 − 10x2 + 3x3 = −5 , chute: x(0) = (0, 0, 0)T , x(0) = 0 

x1 + 3x2 + 10x3 = 14 0

solução:

Input: x(0) = (0, 0, 0)T


 h i
(1) 1 (0) (0) 1

 1
 x = b
a11 h 1 − a x
12 2 − a x
13 3 = 10 (14 − 3 × 0 − 1 × 0) = 1, 4
 i
(1) (0) (0)
K=0 x2 = a122 b2 − a21 x1 − a23 x3 = 1
−10 (−5 − 2 × 0 − 3 × 0) = 0, 5

 h i
 x(1) = 1 b3 − a31 x(0) − a32 x(0) =
 1
3 a33 1 2 10 (14 − 1 × 0 − 3 × 0) = 1, 4
Output: x(1) = (1, 4 , 0, 5 , 1, 4)T

Input: x(1) = (1, 4 , 0, 5 , 1, 4)T


 (2)
1
 x1
 = 10 ( 14 − 3 × 0, 5 − 1 × 1, 4) = 1, 11
(2) 1
K=1 x2 = −10 ( −5 − 2 × (1, 4) − 3 × (1, 4)) = 1, 20

 (2) 1
x3 = 10 ( 14 − 1 × (1, 4) − 3 × (0, 5)) = 1, 11
Output: x(2) = (1, 11 , 1, 20 , 1, 11)T

Com algumas iterações do algoritmo, convergimos para x = (1, 1, 1)(T ) . 


CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 14

(6) (6) (6)


Exercı́cio 2.2 Verifique que x1 = 1, 000251, x2 = 1, 005795 e x3 = 1, 000251.

Método de Gauss–Seidel

Podemos construir uma variante do método de G.J. permitindo que as versões atualizadas das
componentes de x entre na computação na mesma iteração K na qual são calculadas. Isto dá
origem ao método de Gauss-Seidel.

Fórmula Gauss-Seidel :
 
T ermo novo
z }| { z antigo
}| {
 i−1 n 
(k+1)  X (k+1)
X (k) 
1 
xi = aii bi − aij xj − aij xj   , i = 1, 2, ... , n k = 0, 1, 2, ...
 j=1 j=i+1 

Exemplo 2.3 Refaça o exemplo anterior empregando agora o método GS:

Input: x(0) = (0, 0, 0)T


 h i
(1) 1 (0) (0) 1

 x = b
a11 h 1 − a x
12 2 − a x
13 3 = (14 − 3 × 0 − 1 × 0) = 1, 4
 1
 i 10
(1) (1) (0)
K=0 x2 = a122 b2 − a21 x1 − a23 x3 = 1
−10 (−5 − 2 × 1, 4 − 3 × 0) = 0, 78

 h i
 x(1) = 1 b3 − a31 x(1) − a32 x(1) =
 1
3 a33 1 2 10 (14 − 1 × 1, 4 − 3 × 0, 78) = 1, 026

Output: x(1) = (1, 4 , 0, 78 , 1, 026)T

Input: x(1) = (1, 4 , 0, 78 , 1, 026)T


 (2)
1
 x1
 = 10 ( 14 − 3 × (0, 78) − 1 × (1, 026)) = 1, 0634
(2) 1
K=1 x2 = −10 ( −5 − 2 × (1, 0634) − 3 × (1, 026)) = 1, 02048

 (2) 1
x3 = 10 ( 14 − 1 × (1, 0634) − 3 × (1, 02048)) = 0, 98752

Output: x(2) = (1, 0634 , 1, 02048 , 0, 98752)T . 

(5) (5) (5)


Exercı́cio 2.3 Verifique que x1 = 0, 99979 , x2 = 0, 99985 e x3 = 1, 00007.

Estudo de Convergência
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 15

Por se tratar de um método iterativo, necessitamos estabelecer critérios de parada para


interromper a computação.

I) Controle do número de iterações :

Se a estrutura de repetição do programa exceder um dado número de iterações, interrompemos a


computação.

itera ≥ itera máx → stop

II) Controle na precisão da solução :

Se a diferença, em módulo, entre duas aproximações consecutivas for menor que um parâmetro
pré-estabelecido ε > 0, finalize a computação .

(k+1) (k)
maxi xi − xi ≤ ε → stop

Vantagens dos métodos iterativos :

• Em sistemas mal condicionados (detA ∼ = 0), os erros de arredondamento normalmente de-


stroem uma solução direta. Já as soluções iterativas propagam pouco este tipo de erro;

• Caso a matriz for esparsa, também devemos optar por soluções iterativas, pois nestas situações
elas apresentam boa velocidade.

Desvantagens :

• Sua convergência não será garantida;

• Para matrizes cheias, apresentam um número maior de contas.

Comentário Importante :

Caso a solução não seja convergente, podemos tentar uma reorganização das equações antes de
aplicarmos o método iterativo. Por exemplo, considere o sistema abaixo:



 x1 + x2 + 3x4 = 5

5x1 + x2 − x 3 − x4 = 4
x − x2 + 5x3 − x4 = 4
 1


x1 − 7x2 + x3 + x4 = −4

Tomando chute x(0) = (0, 0, 0, 0)T , a solução utilizando “GS” diverge, lim x(k) 6= x .Entretanto,
k→∞
ao reordenamento do sistema, [L1 ↔ L2 , e depois, L4 ↔ L2 ]

 (antes)  (depois)
1 5
 1   −7 
  −→  
 5   5 
1 3
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 16

a solução converge para x = ( 1.0000 , 1.0000 , 1.0000 , 1.0000 )T , com 6 iterações.

Critério de convergência:

“Toda matriz diagonal dominante é convergente, para qualquer chute inicial.”

Condição de diagonal dominante:

n
X
|aii | > |aij | , ∀i = 1, 2, ... , n. (2.4)
j=1
j6=i
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 17

2.4 Exercı́cios

1. Resolver os sistemas abaixo pelo método de eliminação de Gauss:


 10x1 + 2x2 + x3 = 15
a) 20x1 − 5x2 + 2x3 = 32

5x1 + 15x2 − 2x3 = 33


 3x1 + 10x2 + x3 = −16
b) x1 − 5x2 + 10x3 = 1

x1 + 2x2 + 5x3 = 2


 5x1 − 2x2 = 10
c) 10x2 − 3x3 = −50

−2x1 + 5x2 − 2x3 = 60


 50x1 − 5x2 + 2x3 = 300
d) − 2x2 + 5x3 = 10

10x1 − 20x3 = −950

2. Encontre a decomposição LU das matrizes dos coeficientes associados aos sistemas do exercı́cio
anterior.

3. Considere o seguinte sistema de equações lineares:




 x1 + 2x2 − x3 = 1

2x1 − x2 = 1

 − x2 + 2x3 − x4 = 1

− x3 + 2x4 = 1

a) Mostre que esse sistema não satisfaz a condição de diagonal dominante;

b) Se permutarmos as linhas desse sistema, podemos utilizar os métodos de Gauss-Jacobi e


Gauss-Seidel para resolvê-lo tendo garantia de convergência?

4. Considere o sistema linear abaixo:




 x1 − 3x2 + x3 − 4x4 = −1

x2 − 2x3 = 3

 10x1 + x2 + x4 = −8

x1 − x3 + 3x4 = 8

a) Resolva o sistema utilizando o método de eliminação de Gauss;

b) Podemos determinar a solução aproximada do sistema, usando o Método de Gauss-Seidel


para qualquer aproximação inicial? Porquê?
CAPÍTULO 2. RESOLUÇÃO NUMÉRICA DE SISTEMAS LINEARES 18

5. Considere o sistema linear abaixo:



 ax1 + 3x2 + x3 = 1
ax1 + 8x2 + x3 = 2

x1 + 2x2 + 4x3 = 3

a) Determine para que valores de a se tem garantia de que os métodos de Gauss-Seidel e


Gauss-Jacobi geram uma sequência convergente, para qualquer aproximação inicial;

b) Escolha o menor valor inteiro positivo de a e determine uma solução aproximada do sistema,
usando os métodos acima, com critério de parada estabelecido pelo erro abaixo

maxi=1,··· ,3 |xk+1
i − xki | ≤ ε = 1 × 10−3 .

6. Considere o sistema linear abaixo:



 x1 − 2x2 − 5x3 + 18 = 0
−4x1 + x2 − 2x3 + 8 = 0 .

−x1 + 5x2 + 2x3 − 15 = 0

Verifique que, para o sistema de equações dado, o método de Gauss-Jacobi é convergente.


Utilize-o para obter uma aproximação da solução, x(1) , partindo da aproximação x(0) =
(1.05, 2.16, 3.0)T .

7. Considere o sistema de equações lineares AX = B, onde


     
−1 2 4 x 17.0
A =  5 −2 1  , X =  y  e B =  4.8  .
2 3 0 z 9.3

a) Verifique que é possı́vel, partindo de um sistema de equações equivalente ao anterior,


provar a convergência do método de Gauss-Seidel para a solução, X ∗ , do sistema;
b) Considerando X (0) = (0.6, −0.7, 0.2)T , determine X (1) utilizando Gauss-Seidel.

8. Explique a diferença entre métodos diretos e métodos iterativos.

9. Descreva as vantagens e as desvantagens, caso existam, do método de eliminação de Gauss.


Capı́tulo 3

Zero de Funções

O estudo das equações algébricas é, juntamente com a trigonometria uma das áreas mais antigas
da matemática. Ainda na idade média, os matemáticos árabes solucionaram a equação do 2o grau,
e na renascença foram solucionadas as equações do 3o e 4o graus.
Após muito esforço e dedicação por parte dos que pesquisam matemática, ficou provado que
para equações de grau maior que 4, não é possı́vel obter uma solução do tipo combinação dos
coeficientes da equação. É justamente aı́ que surgem os métodos que capturam as raı́zrs dessas
equações.
Estes métodos, também conhecidos como iterativos, constroem uma sequência de aproximações
que poderá convergir para a solução do problema. A seguir, serão apresentados 4 destes métodos:
Bisseção, Falsa-Posição, Iteração Linear e Newton-Raphson.

raiz de uma equação

Um escalar ξ é dito um zero de uma função f (x) (ou simplesmente raiz da equação f (x) = 0), se
e somente se, f (ξ) = 0. Estes zeros são representados geometricamente pela interseção da função
f (x) com o eixo x.

f(x)

x1 x2 x3
raiz múltipla

raízes simples

Figura 3.1: raı́zes simples e raı́z múltipla

Conforme ilustrado na figura acima, temos dois tipos de raı́zes: simples (f ′ (ξ) 6= 0) e múltipla
(f ′ (ξ)
= 0). Os dois primeiros métodos supracitados (Bisseção e Falsa-Posição) só capturam raı́zes
simples, enquanto que o último (Newton-Raphson) captura ambas.

19
CAPÍTULO 3. ZERO DE FUNÇÕES 20

3.1 Método da Bisseção

Seja f (x) uma função contı́nua no intervalo [a, b] contendo apenas 1 raiz de f (x) (se f (a) · f (b) < 0
então existe 1 raiz simples no intervalo). A idéia do método é:

1. escolher [a, b] contendo ξ;


a+b
2. calcular o ponto médio do intervalo, c = ;
2
3. quebrar o intervalo da seguinte forma
f (b) · f (c) > 0 ⇒ b := c
f (b) · f (c) < 0 ⇒ a := c

4. reinicie o algoritmo.

Exemplo 3.1 Aproxime a raiz ξ da equação ex − 4x = 0, sabendo que ξ ∈ [0, 0.5].


 a=0 b = 0.5 c = 0.25
1o passo f (a) = 1 f (b) = −0.3513 f (c) = 0.2840

f (b) · f (c) < 0 ⇒ a := c


 a = 0.25 b = 0.5 c = 0.3750
2o passo f (a) = 0, 2840 f (b) = −0.3513 f (c) = −0.0450

f (b) · f (c) > 0 ⇒ b := c


 a = 0.25 b = 0.3750 c = 0.3125
3o passo f (a) = 0.2840 f (b) = −0.0450 f (c) = 0.1168

f (b) · f (c) < 0 ⇒ a := c

..
.

critérios de parada

Se ξ¯ é a aproximação da raiz ξ da equação f (x) = 0 pertencente ao intervalo [a, b], então temos
dois critérios de parada:
 
I) |f ξ¯ | ≤ ε

II) |b − a| ≤ ε,

onde ε é um parâmetro pré-estabelecido.


CAPÍTULO 3. ZERO DE FUNÇÕES 21

f(b)
f(x)

raiz

a
c b

f(a)

Figura 3.2: novo ponto “c” escolhido

3.2 Método da Falsa-Posição

É uma variante do método da bisseção, na medida em que utiliza o mesmo algoritmo que o método
da bisseção, diferindo
 apenas
 na escolha do ponto “c”, que passa a ser a raiz da secante que liga os
pontos a, f (a) e b, f (b) . Veja a figura 3.2.
O novo valor de “c” será dado por

f (b)a − f (a)b
c= .
f (b) − f (a)

Exercı́cio 3.1 Verifique que com o método da falsa-posição, após 3 iterações, o exemplo anterior
nos leva ao seguinte resultado: c = 0.3575 e f (c) = −0.0002.

ALGORITMO BISSECAO

entrada: (f(x),a,b,aux)

defina c:= (a+b)/2;


se |b-c| <= aux entao raiz:= c e stop;
caso contrario,
se f(b)f(c) < 0 entao a:=c;
caso contrario, b:=c;
fim-se;
fim-se;
reinice o algoritmo

ALGORITMO FALSA-POSICAO

entrada: (f(x),a,b,aux)

defina c:= (f(b)a-f(a)b)/(f(b)-f(a));


CAPÍTULO 3. ZERO DE FUNÇÕES 22

se |b-c| <= aux ent~ao raiz:= c e stop;


caso contrário,
se f(b)f(c) < 0 ent~ao a:=c;
caso contrário, b:=c;
fim-se;
fim-se;
reinice o algoritmo

Exercı́cio 3.2 Encontre as raı́zes das equações abaixo:


a) x3 − 9x + 3 = 0;
b) x3 − 11x2 + 39x − 45 = 0;
c) x3 − 5x2 + 17x + 21 = 0;
d) e−x − x = 0.

3.3 Método da Iteração Linear

Vamos estudar agora os chamados métodos do ponto fixo. O mais simples deles é o método da
iteração linear, o qual, mesmo não tendo boa eficiência computacional, é importante para a in-
trodução do método de Newton-Raphson.
Inicialmente, vamos reescrever o problema “Encontrar ξ ∈ R tal que f (ξ) = 0” como “Encontrar
ξ ∈ R tal que ξ = ϕ(ξ)”, onde ϕ(x) é uma função de iteração da equação f (x) = 0.
Pra tornar estes problemas equivalente, façamos f (x) = x − ϕ(x), assim, como f (ξ) = 0, temos
que ξ − ϕ(ξ) = 0 e, portanto, ξ = ϕ(ξ) .

Exemplo 3.2 Considere a equação x2 + x − 6 = 0. A sua função de iteração é a função ϕ(x) =



6 − x.

Uma vez determinada ϕ(x), o M.I.L. consiste em construir uma sequência de aproximações
{xi }i∈N a partir de um chute inicial x0 e gerada através da relação recursiva xi+1 := ϕ(xi ) ,
i = 0, 1, 2, · · · .
No exemplo acima, partindo de x0 = 1, 5 terı́amos

1. x1 = ϕ(x0 ) = 6 − 1.5 = 2.1213;

2. x2 = ϕ(x1 ) = 6 − 2.1213 = 1.9694;

3. x3 = ϕ(x2 ) = 6 − 1.9694 = 2.0076;

4. x4 = ϕ(x3 ) = 6 − 2.0076 = 1.9981;

5. x5 = ϕ(x4 ) = 6 − 1.9981 = 2.0005;
e, portanto podemos perceber que o processo converge para ξ = 2.
Entretanto, o M.I.L. não é incondicionalmente convergente como os métodos da bisseção e falsa-
posição. Ao tomarmos como função de iteração ϕ(x) = 6 − x2 (note que ϕ(x) não é única), geramos
um processo iterativo divergente, verifique!
CAPÍTULO 3. ZERO DE FUNÇÕES 23

estudo da convergência

Como vimos, ϕ(x) não é única. Na verdade, sua forma geral é dada pela relação

ϕ(x) = x + A(x)f (x),

com A(ξ) 6= 0. Podemos mostrar a equivalência entre os problemas f (ξ) = 0 e ξ = ϕ(ξ) da seguinte
maneira

I) Seja ξ tal que f (ξ) = 0, então

ϕ(ξ) = ξ + A(ξ) f (ξ) ∴ ξ = ϕ(ξ).


|{z}
=0

II) Seja ξ tal que ξ = ϕ(ξ), então

ϕ(ξ) = ξ + A(ξ)f (ξ) ∴ 0 = ϕ(ξ) − ξ = A(ξ)f (ξ),

e como A(ξ) 6= 0, temos que f (ξ) = 0. 

A interpretação gráfica do problema de ponto fixo é a interseção da curva y = ϕ(x) com a reta
y = x, conforme ilustra a figura 3.3:
y=x

y y

y= ϕ(x) y=x

y= ϕ(x)

ξ=ϕ (ξ) ξ=ϕ (ξ)

ξ x2 x1 x0 x ξ x2 x1 x0 x

situação convergente, lim xi = ξ situação divergente, lim xi ≠ ξ


i 00 i 00

Figura 3.3: interpretação gráfica do MIL

Estas figuras sugerem que, para gerarmos um processo convergente, devemos ter baixas derivadas
de ϕ(x) na vizinhança de ξ. Esta sugestão é confirmada pelo teorema de convergênica do M.I.L.

Teorema 3.1 Teorema de Convergência do M.I.L. - Seja ξ uma raiz de f (x) = 0 isolada no
intervalo [a, b] centrado em ξ. Seja ϕ(x) uma função de iteração de f (x) = 0. Se:

I) ϕ(x) é tal que ϕ′ (x) ∈ C 0 [a, b];

II) |ϕ′ (x)| ≤ M < 1, ∀x ∈ [a, b];

III) x0 ∈ [a, b],

então a sequência {xi } gerada pelo processo xi+1 := ϕ(xi ) converge para ξ.
CAPÍTULO 3. ZERO DE FUNÇÕES 24

critérios de parada

O M.I.L utiliza os seguintes critérios de parada:

I) |xi+1 − xi | ≤ ε;

II) |f (ξ)| ≤ ε,

onde ε é um parâmetro pré-estabelecido.

Observação 3.1 Devemos ser cuidadosos com o 1o critério, pois em algumas situações ele não
corresponde à |xi − ξ| ≤ ε, conforme ilustra a figura abaixo.

ϕ(ξ)
ε

ξ x i+1 xi x

Figura 3.4: criterio de parada do MIL

ALGORITMO MIL

entrada(f(x),Phi(x),raiz,x0,aux)

1. se |f(x0)| <= aux entao raiz:= x0 e stop;


2. caso contrario
3. defina k=1;
4. xk:= Phi(k-1);
5. se (|f(xk)| <= aux .ou. |xk-x0| <= aux) entao
6. raiz:= xk e stop;
7. caso contrario
8. k:=k+1;
9. ir para o passo 4;
10. fim-se;
11. fim-se;
12. fim-se.
CAPÍTULO 3. ZERO DE FUNÇÕES 25

3.4 Método de Newton-Raphson

Vimos que o M.I.L. tem convergência lenta e não garantida. A idéia do método de Newton é
construir um método de ponto fixo que garanta e acelere a convergência do processo iterativo
linear. Isto será feito impondo que a derivada da função de iteração seja nula em x = ξ, ou seja,
ϕ′ (ξ) = 0.

Já sabemos que ϕ(x) = x + A(x)f (x), portanto,


ϕ′ (x) = 1 + A′ (x)f (x) + A(x)f ′ (x)

∴ ϕ′ (ξ) = 1 + A′ (ξ) f (ξ) +A(ξ)f ′ (ξ)


| {z } |{z}
=0 =0

∴ A(ξ)f ′ (ξ) = −1

−1
∴ A(ξ) = .
f ′ (ξ)

Logo, a função de iteração do método de Newton será dada por


f (x)
ϕN (x) = x − ,
f ′ (x)
e a sequênia de aproximações {xi }i∈N de Newton será gerada pela relação recursiva

xi+1 = ϕN (xi ), i = 0, 1, 2, · · · ,

e assim, temos a fórmula de Newton-Raphson

f (xi )
xi+1 = xi − . (3.1)
f ′ (xi )

Exercı́cio 3.3 Utilize expansão em série de Taylor para deduzir a fórmula de Newton-Raphson.

interpretação geométrica
As aproximações futuras geradas pela fórmula de Newton serão as raı́zes das tangentes à curva
y = f (x) avaliadas nas aproximações atuais xi , conforme mostra a figura a seguir,

Calculando a derivada de f (x) e avaliando em xi , temos


=0
z }| {
f (xi+1 ) −f (xi )
f ′ (xi ) = tan θ =
xi+1 − xi

f (xi )
xi+1 − xi = −
f ′ (xi )

f (xi )
xi+1 = xi − .
f ′ (xi )
CAPÍTULO 3. ZERO DE FUNÇÕES 26

y=f(x)

f(xi )

ξ x i+1 xi

Figura 3.5: criterio de parada do MIL

Exemplo 3.3 Considere ainda o exemplo 3.2, no qual a partir de uma estimativa inicial x0 = 1.5,
desejamos obter numericamente a raiz ξ = 2 da equação x2 + x − 6 = 0. Aplicando o método de
Newton-Raphson, temos

f (xi )
xi+1 = xi −
f ′ (xi )

x2i + xi − 6 x2 + 6
⇒ xi+1 = xi − = i ,
2xi + 1 2xi + 1
e assim, teremos a seguinte sequência

x1 = ϕ(x0 ) = 2.06250;

x2 = ϕ(x1 ) = 2.00076;

x3 = ϕ(x2 ) = 2.00000.

Observe que, com apenas 3 iterações, obtemos ξ = 2 com precisão de 5 casas decimais!

Para uma pequena análise de convergência, apresentamos o teorema abaixo, que descreve as
condições para que o método de Newton-Raphson seja convergente.

Teorema 3.2 Sejam f (x), f ′ (x), f ′′ (x) ∈ C 0 [a, b] e seja ξ ∈ [a, b] raiz da equação f (x) = 0.
Suponha que f ′ (x) 6= 0. Então existe um intervalo I ⊂ [a, b] tal que ξ ∈ I e se x0 ∈ I, a sequência
{xi } gerada pela fórmula recursiva xi+1 := ϕ(xi ), ∀i, irá a convergir para a raiz ξ.

3.5 Exercı́cios
1. Dê um exemplo de uma função f (x) que tenha pelo menos uma raiz, mas que não pode ser
determinada usando o método da bisseção.

2. A equação x2 − 7x + 12 = 0 tem 3 e 4 como raı́zes. Considere a função de iteração dada por


ϕ(x) = x2 − 6x + 12. Determine o intervalo (a, b) onde, para qualquer que seja x0 escolhido,
a sequência xn+1 = ϕ(xn ) converge para a raiz x = 3.

Você também pode gostar