Escolar Documentos
Profissional Documentos
Cultura Documentos
Apostila
Apostila
Sum
ario
Introduc
ao `
a Teoria de Erros e Estabilidade
1.1
Representac
ao de N
umeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1
Representac
ao de um N
umero Inteiro . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.2
Representac
ao de um N
umero Real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
Erros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3
1.2.1 Representac
ao de N
umeros no Sistema F (, t, m, M) . . . . . . . . . . . . . . . . . . . .
Operac
oes Aritmeticas em Ponto Flutuante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
9
1.4
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Sistemas de Equac
oes Lineares
2.1
2.2
2.3
3
Metodos Diretos
2.1.1
Sistemas Triangulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2
Metodo de Eliminac
ao de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.3
Fatorac
ao LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.4 C
alculo da Matriz Inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Metodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1
Metodo de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.2
Metodo de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.3
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Equac
oes N
ao-Lineares
28
3.1
3.2
3.3
3.2.2
Metodo da Bissec
ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2.3
Metodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2.4
Metodo da Secante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Sistemas N
ao-Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.1
3.4
4
13
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Ajuste de Curvas
42
4.1 Interpolac
ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.1.1
Polin
omio Interpolador de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.2
Erro na Interpolac
ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
1
SUMARIO
4.1.3
4.3
Interpolac
ao com Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.3.1
Interpolac
ao por Spline Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.3.2
Interpolac
ao por Spline C
ubico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Integrac
ao Num
erica
5.1
63
F
ormula de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.1.1
F
ormula dos Trapezios: n = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.2
F
ormula de Simpson: n = 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.3
F
ormulas de Newton-Cotes para n = 3 e n = 4 . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2
F
ormulas Repetidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3
Erro nas F
ormulas de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.4
5.3.1
Erro na F
ormula do Trapezio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3.2
Erro na F
ormula de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Integrac
ao de Romberg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.4.1
5.5
5.6
Extrapolac
ao de Richardson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.4.2 Integrac
ao de Romberg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Quadratura de Gauss-Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.5.1
Polin
omio Interpolador de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2
4.4
5
SUMARIO
F
ormula para dois pontos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Aproximac
oes para Equac
oes Diferenciais Ordin
arias
76
6.1
Diferencas Finitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2
Metodos de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.3
6.2.1
6.2.2
6.2.3
Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Refer
encias Bibliogr
aficas
87
CAPITULO
Introduc
ao `
a Teoria de Erros e Estabilidade
Introduc
ao
Segundo [4], o conjunto de n
umeros represent
aveis em qualquer m
aquina e finito, portanto discreto, ou seja,
n
ao e possvel representar em uma m
aquina todos os n
umeros de um dado intervalo [a, b]. A implicac
ao imediata
desse fato e que o resultado de uma simples operac
ao aritmetica ou o c
alculo de uma func
ao, realizadas neste
conjunto de n
umeros, podem conter erros. A menos que medidas apropriadas sejam tomadas, essas imprecis
oes
causadas, por exemplo, por
1. simplificac
oes no modelo matem
atico, necess
arias para se obter um modelo matem
atico sol
uvel;
2. erros de truncamento (troca de uma serie infinita por uma finita);
3. erros de arredondamento, devido `
a pr
opria estrutura da m
aquina, ou ainda
4. erro nos dados, dados imprecisos obtidos experimentalmente, ou arredondados na entrada
podem diminuir, e algumas vezes destruir, a precis
ao dos resultados.
Assim, o objetivo deste captulo e o estudo dos erros inerentes `
a estrutura computacional, dar subsdios para
evit
a-los e interpretar os resultados obtidos.
1.1 Representac
ao de N
umeros
Exemplo 1. Calcule a
area de uma circunferencia de raio igual a 100 m.
Resultados Obtidos:
1. A = 31400 m2 ;
2. A = 31416 m2 ;
3. A = 31415.92654 m2 .
possvel obter exatamente esta
Como justificar as diferencas entre os resultados apresentados no exemplo 1? E
area?
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
1.1.1 Representac
ao de um N
umero Inteiro
A representac
ao de um n
umero inteiro n
ao apresenta dificuldade. Qualquer computador trabalha internamente
com uma base fixa , onde e um inteiro 2 e e escolhido como uma potencia de 2.
Assim, dado um n
umero inteiro n 6= 0, ele possui uma
unica representac
ao:
n = (nk nk+1 . . . n1 n0 ) = n0 0 + n1 1 + . . . + nk k
onde ni , i = 0, 1, . . . , k s
ao inteiros satisfazendo 0 ni e nk 6= 0.
Exemplo 2. Na base = 10, o n
umero 1997 e representado por:
1997 = 7 100 + 9 101 + 9 102 + 1 103
e e armazenado como n3 n2 n1 n0 .
1.1.2 Representac
ao de um N
umero Real
A representac
ao de um n
umero real no computador pode ser feita por representac
ao em Ponto Fixo ou Ponto
Flutuante, como apresentado em [4].
(i) Representac
ao em Ponto Fixo: Dado um n
umero real x 6= 0, ele ser
a representado em ponto fixo por:
x =
n
X
xi 1 ,
i=k
onde k e n s
ao inteiros satisfazendo k < n e, usualmente, k 0 e n > 0 e os xi s
ao inteiros satisfazendo
0 xi < .
Exemplo 3. Na base 10, o n
umero 1997.16 e representado por:
2
X
1997.16 =
i=3
e e armazenado como x3 x2 x1 x0 . x1 x2 .
(ii) Representac
ao em Ponto Flutuante Esta representac
ao e universalmente utilizada atualmente. Dado um
n
umero real x 6= 0, ele pode ser representado por:
x = d e
1 Calculadora
ou computador.
L. A. P. Cant
ao
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
onde:
di , para i = 1, 2, 3, . . . t, s
ao os dgitos da parte fracion
aria, tal que 0 di 9. Se d1 6= 0 diz-se que o
n
umero est
a normalizado.
t e o n
umero de dgitos na mantissa.
e e um expoente inteiro.
A mantissa e um n
umero em ponto fixo, isto e:
d=
n
X
di i
i=k
x2 = 5.172
x3 = 0.0123
x4 = 5391.3
x5 = 0.0003,
5.172
0.0123
5391.3
0.0003
Notac
ao: para representar um sistema numerico em ponto flutuante normalizado, na base , com t dgitos
significativos e com limites dos expoentes m e M, usamos F (, t, m, M).
Assim, um n
umero em F (, t, m, M) ser
a representado por:
0.d1 d2 . . . , dt e
onde d1 6= 0 e m e M.
Exemplo 5. Considere o sistema F (10, 3, 2, 2). Represente neste sistema os n
umeros do Exemplo 4.
Neste sistema, um n
umero ser
a representado por:
0.d1 d2 d3 10e ,
onde 2 e 2. Assim:
0.35 = 0.350 100 ,
5.172 = 0.517 101 ,
0.0123
0.123 101
Note que os n
umeros 5391.3 e 0.0003 n
ao podem ser representados no sistema, pois 5391.3 = 0.539 104
e, portanto, o expoente e maior que 2, causando overflow. Por outro lado, 0.0003 = 0.300 103 e, assim,
o expoente e menor do que 2, causando underflow.
L. A. P. Cant
ao
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
(iii) Mudanca de Base A maioria dos computadores trabalha na base (inteiro 2), normalmente escolhido
como uma potencia de 2. Assim um mesmo n
umero pode ser representado em mais de uma base. Alem
disso, sabemos que, atraves de uma mudanca de base, e sempre possvel determinar a representac
ao em uma
nova base.
Em particular, um n
umero representado na base = 2 e conhecido como um n
umero bin
ario.
Exemplo 6. Mudar a representac
ao dos n
umeros:
a. 1101 da base 2 para a base 10
Neste caso, o procedimento e multiplicar cada algarismo do n
umero na base 2 por potencias crescentes
de 2, da direita para a esquerda e somar todas as parcelas:
1101 = 1 20 + 0 21 + 1 22 + 1 23 = 1 + 0 + 4 + 8 = 13
b. 0.110 da base 2 para a base 10
Multiplicar cada algarismo do n
umero na base 2, ap
os o ponto, por potencias decrescentes de 2, da
esquerda para a direita e somar as parcelas.
0.110 = 1 21 + 1 22 + 0 23 =
1 1
+ + 0 = 0.75
2 4
13
1
2
6
= 1.50
0.50 2
1.00
0.00 2
0.00
L. A. P. Cant
ao
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
0.8 2
= 1.6
0.6 2
= 1.2
0.2 2
= 0.4
0.4 2
= 0.8
0.8 2
= ...
2 40 + 1 41 = 6,
0.20
2 41 + 0 42 =
2
= 0.5
4
6
0
3
2
= 1.5
0.5 3
..
.
= 1.5
1.2 Erros
O formato de um n
umero em aritmetica de ponto flutuante limita a mantissa em k dgitos decimais. Existem
duas maneiras de obter essa limitac
ao. Um metodo, chamado de truncamento, consiste em simplesmente cortar
os dgitos dk+1 dk+2 . . ..
O outro metodo, chamado de arredondamento trunca a mantissa em k dgitos (como no caso acima), porem
duas situac
oes podem ocorrer:
1. Se dk+1 5, dk = dk + 1;
L. A. P. Cant
ao
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
2. Se dk+1 < 5, dk = dk .
Exemplo 8. Podemos escrever o n
umero na forma de aritmetica de ponto flutuante com 5 dgitos usando:
1. O metodo de Truncamento: = 0.31415 101 ;
2. O metodo de Arredondamento: = 0.31416 101 .
Estes dois processos geram erros nos c
alculos numericos e s
ao conhecidos como erros de truncamento e erros
de arredondamento, respectivamente.
(1.1)
Em geral, apenas o valor x e conhecido, e neste caso, e impossvel obter o valor exato do erro absoluto. O que
se faz e obter um limitante superior ou uma estimativa para o m
odulo do erro absoluto.
O erro relativo e definido como o erro absoluto dividido pelo valor aproximado:
ERx =
|x x|
EAx
=
,
|x|
|x|
x 6= 0.
(1.2)
1.2.1 Representac
ao de N
umeros no Sistema F (, t, m, M)
Os n
umeros reais podem ser representados por uma reta contnua. Entretanto, em ponto flutuante, podemos
representar apenas pontos discretos na reta real.
Exemplo 9. Considere o n
umero F (2, 3, 1, 2). Quantos e quais n
umeros podem ser representados neste sistema?
Temos que = 2, ent
ao os dgitos podem ser 0 ou 1; m = 1 e M = 2, ent
ao, 1 e 2 e t = 3. Assim, os
n
umeros s
ao da forma:
0.d1 d2 d3 e
Logo, temos: duas possibilidades para o sinal, uma possibilidade para d1 , duas possibilidades para d2 e d3 e quatro
possibilidades para e . Fazendo o produto 2 1 2 2 4 = 32. Assim, neste sistema podemos representar 33
n
umeros, visto que o zero faz parte de qualquer sistema.
Para responder quais s
ao os n
umeros, notemos que as formas da mantissa s
ao: 0.100, 0.101, 0.110 e 0.111,
e as formas de e s
ao: 21 , 20 , 21 e 22 . Assim, obtemos
21
20
0.100
21
22
os seguintes n
umeros:
=
(0.25)10
(0.5)10
=
=
(1.0)10
(2.0)10
21
20
0.101
21
22
L. A. P. Cant
ao
(0.3125)10
(0.625)10
(1.25)10
(2.5)10
8
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
21
20
0.110
21
22
(0.375)10
= (0.75)10
= (1.5)10
=
(3.0)10
(0.4375)10
21
20
0.111
21
22
= (0.875)10
= (1.75)10
=
(3.5)10
15
,
7
1
x2 = 2 ,
7
x3 = 2.142857.
As representac
oes dadas por x1 e x2 s
ao exatas e x3 e uma aproximac
ao do quociente. Suponha agora que s
o
15
dispomos de quatro dgitos para representar o quociente entre 15 e 7. Da,
= 2.142. Mas n
ao seria melhor
7
15
aproximarmos
= 2.143? Sim e isto significa que o n
umero foi arredondado.
7
1.3 Operac
oes Aritm
eticas em Ponto Flutuante
Considere uma m
aquina qualquer e uma serie de operac
oes aritmeticas. Pelo fato do arredondamento ser feito
ap
os cada operac
ao, temos, ao contr
ario do que e v
alido para n
umeros reais, que as operac
oes aritmeticas (adic
ao,
subtrac
ao, divis
ao e multiplicac
ao) n
ao s
ao nem associativas e nem distributivas.
Para os exemplos abaixo, considere o sistema com base = 10 e tres dgitos significativos.
Exemplo 12. Efetue as operac
oes indicadas:
L. A. P. Cant
ao
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
3.18 11.4
b)
e
5.05
3.18
5.05
14.6 + 5.05
19.7
11.4 + 8.23
19.6
11.4
3.18 11.4
5.05
3.18
11.4
5.05
36.3
11.4
7.18
3.18 16.5
7.19
3.18 16.5
52.3
16.1 + 36.3
52.4
1.4 Exerccios
1. Considere o sistema F (10, 4, 4, 4). Represente neste sistema os n
umeros:
(a) x1 = 4321.24
(c) x3 = 125.64
(b) x2 = 0.0013523
(d) x4 = 57481.23
(e) x5 = 0.00034
L. A. P. Cant
ao
10
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
CNC
(f) p = 2, p = 1.414;
(EA = 2.136 104 e 1.51 104 )
n=0 (1/n!),
(a)
5
X
1
;
n!
n=0
(b)
10
X
1
.
n!
n=0
x cos x sen x
.
x sen x
30000
X
xi
i=1
(e)
13
14
67
2 e 5.4
3
(f) 10 + 6 e
(Aprox. 15.1, EA = 0.0546 e ER = 3.6 103 )
62
2
9
(g)
L. A. P. Cant
ao
11
Captulo 1. Introduc
ao `
a Teoria de Erros e Estabilidade
(h)
22
7
1
17
CNC
14. A f
ormula quadr
atica estabelece que as razes da equac
ao ax 2 + bx + c = 0, quando a 6= 0, s
ao:
x1 =
b +
b2 4ac
2a
x2 =
b2 4ac
.
2a
Considere a equac
ao x 2 + 62.1x + 1 = 0, cujas razes s
ao aproximadamente x1 = 0.01610723 e x2 =
62.0839.
C
alcule a equac
ao acima utilizando arredondamento para quatro dgitos e posteriormente avalie o erro absoluto e relativo para cada raiz.
15. Utilize a aritmetica com arredondamento para quatro dgitos e as f
ormulas do exerccio acima para encontar
os valores aproximados mais precisos para as razes das equac
oes quadr
aticas a seguir. Calcule os erros
absolutos e relativos.
1
1 2 123
x
x+ =0
3
4
6
1
x
(b) 13 x 2 + 123
4
6 =0
(a)
x1
0.02
8 (a)
(b)
92.26
0.005421
(c)
(d)
10.98
0.001149
EA
ER
x2
2.4 101
62.1
EA
ER
0.1542
1.264 106
1.672 104
2.333 104
0.005419
4.58 103
6.273 107
4.58 103
1.157 104
4.965 105
6.875 103
7.566 108
6.257 104
6.584 105
7.566 108
6.875 103
7.566 108
6.875 103
6.584 105
6.257 104
3.2 104
.
4.577
4.577
4.577
17. Seja x =
17.678
(9.617)2
+
3.471
3.716 1.85
(a) Calcule x com todos os algarismos da sua calculadora, sem efetuar arredondamentos.
(b) Calcule x considerando o sistema F (10, 3, 4, 3). Faca arredondamento a cada operac
ao efetuada.
18. Seja P (x) = 2.3x 3 0.5x 2 + 1.8x 2.2. Deseja-se obter o valor de P (x) para x = 1.61.
(a) Calcule P (1.61) com todos os algarismos da sua calculadora, sem efetuar arredondamentos.
(b) Calcule P (1.61) considerando o sistema F (10, 3, 4, 3). Faca arredondamento a cada operac
ao efetuada.
L. A. P. Cant
ao
12
CAPITULO
Sistemas de Equac
oes Lineares
Introduc
ao
A soluc
ao de um sistema de equac
oes lineares e provavelmente o processo numerico mais utilizado para simular
uma etapa fundamental na resoluc
situac
oes do mundo real. E
ao de v
arios problemas que envolvam, por exemplo,
equac
oes diferenciais, otimizac
ao, regress
ao e sistemas n
ao-lineares. Portanto, e de extrema import
ancia que se
tenha uma implementac
ao eficiente do metodo para soluc
ao do sistema linear, pois geralmente esta e a fase que
demanda a maior parte do tempo de processamento para resolver o problema.
Veremos aqui tecnicas diretas e iterativas para resolver o sistema linear:
a11 x1
a21 x1
..
an1 x1
a12 x2
+ ...
a1n xn
b1
a22 x2
..
.
+ ...
..
.
a2n xn
..
.
b2
..
.
an2 x2
+ ...
+ ann xn
(2.1)
bn
(2.2)
..
.. .. = ..
..
.
.
.
. . .
.
an1
an2
ann
xn
bn
CNC
2.1 M
etodos Diretos
Apresentaremos inicialmente a resoluc
ao de Sistemas Triangulares Superior e Inferior, usados nos Metodos de
Eliminac
ao de Gauss e Fatorac
ao LU.
2x1
x2
x3
x2
2x3
x3
x1
2x1
2x1
+ x2
x2
5x3
(2.3a)
(2.3b)
x3
x2
x
1
=
=
=
x1
x2
x
3
1
32
=1
1
2+11
=1
2
2
34
= 1
1
3
241
=
5
5
=
=
a11 x1
+ a12 x2
a1,n1 xn1
a1n xn
a22 x2
a2,n1 xn1
a2n xn
= b2
..
.
= bn1
an1,n1 xn1
an1,n xn
ann xn
a11 x1
a21 x1
an1,1 x1
an1 x1
a22 x2
+ an1,2 x2
+ an1,n1 xn1
an2 x2
an,n1 xn1
+ ann xn
b1
(2.4a)
bn
b1
=
..
.
b2
bn1
bn
(2.4b)
L. A. P. Cant
ao
14
CNC
soma = bk
4:
Para j = k + 1 at
e j = n faca
soma = soma akj xj
5:
Fim do laco
soma
7:
xk =
akk
8: Fim do la
co
6:
Algoritmo 1: Soluc
ao de Sistemas Triangulares Superiores
Dado n, Ann (matriz triangular inferior), bn1 e xn1 .
b1
1: Fa
ca x1 =
a11
2: Para k = 2 at
e k = n faca
3:
soma = bk
4:
Para j = 1 at
e j = n 1 faca
5:
Fim do laco
soma
7:
xk =
akk
8: Fim do la
co
6:
Algoritmo 2: Soluc
ao de Sistemas Triangulares Inferior
2.1.2 M
etodo de Eliminac
ao de Gauss
Os metodos diretos mais comuns tem como base as seguintes propriedade elementares de sistemas de equac
oes
lineares.
Propriedade 1. A soluc
ao do sistema Ax = b n
ao se altera se o submetermos a uma seq
uencia de operaco
es do
tipo:
1. Multiplicac
ao de uma equac
ao por uma constante n
ao-nula;
2. Soma do m
ultiplo de uma equac
ao `
a outra;
3. Troca da ordem das equac
oes.
=b
equivalente ao sistema original Ax = b
Estas operac
oes geram um sistema Ax
O metodo de Eliminac
ao de Gauss usa esta propriedade para transformar a matriz A numa matriz triangular
superior equivalente. Suponha aqui, que det(A) 6= 0.
Reescrevemos a matriz A e o vetor b na forma de uma matriz expandida:
L. A. P. Cant
ao
15
CNC
a11
a12
a13
a1n
b1
l1(1)
a21
..
.
a
i1
.
.
.
an1
a22
..
.
a23
..
.
..
.
a2n
..
.
b2
..
.
l2(1)
..
.
ai2
..
.
an2
ai3
..
.
..
.
ain
..
.
an3
ann
bi
..
.
bn
(1)
li
..
.
ln(1)
(1)
Eliminac
ao da Primeira Coluna
Suponha que a11 6= 0. Para eliminar a inc
ognita x1 das n 1 equac
oes, subtramos a primeira linha multiplicada
pelo fator
ai1
a11
mi1 =
de todas as outras linhas li , i = 2, 3, . . . , n
(2)
Dessa maneira, li
(1)
= li
(1)
aij(2)
bi(2)
= bi mi1 b1 .
j =2:n
O ndice superior (2) indica que usaremos um segundo valor para aij e bi .
No final deste est
agio, os coeficientes da matriz aumentada foram modificados de modo que a matriz assume
a seguinte configurac
ao:
a11
..
.
.
.
.
a12
a13
a1n
b1
l1
l2(2)
(2)
a22
(2)
a23
(2)
a2n
b2(2)
..
.
..
.
..
..
.
..
.
(2)
ai2
(2)
ai3
(2)
ain
bi(2)
..
.
..
.
..
..
.
..
.
(2)
an2
(2)
an3
(2)
ann
bn(2)
(1)
..
.
li(2)
..
.
ln(2)
Eliminac
ao da Segunda Coluna
Para eliminar a inc
ognita x2 das n 2
ultimas equac
oes repetimos o procedimento anterior tomando agora a
segunda linha como auxiliar no processo de eliminac
ao, isto e:
li(3) = li(2) mi2 l2(2) ,
i = 3 : n,
onde
mi2 =
ai2
,
a22
i = 3 : n,
(3)
(3)
bi mi2 b2 .
aij
bi
L. A. P. Cant
ao
(2)
(2)
j =3:n
(2)
16
CNC
Seguindo raciocnio an
alogo, procede-se ate i = n e a matriz resultante ser
a:
a11
a12
.
.
.
a13
a1n
b1
(2)
a22
(2)
a23
(2)
a2n
b2(2)
..
.
..
.
..
..
.
..
.
(n)
ann
bn(n)
a11 x1
a12 x2
a1n xn
(2)
a2n xn
(2)
=
..
.
(n)
= bn
a22 x2
ann xn
b1
(2)
b2
(n)
(2)
(3)
(n)
No processo de eliminac
ao, os elementos a11 , a22 , a33 , ..., ann que aparecem na diagonal principal da matriz
A s
ao chamados piv
os e os elementos mij , para i = 1, 2, , n e k = i + 1, , n, os multiplicadores.
Se no processo de eliminac
ao um dos piv
os se anular, devemos trocar linhas (sempre escolhendo aquelas abaixo
da diagonal para n
ao perder a eliminac
ao anterior), de modo que escolhamos elementos n
ao nulos para piv
os.
Dado n, Ann , bn1 e xn1 .
1:
Para k = 1 at
e k = n 1 faca
2:
3:
4:
A n
ao e inversvel. PARE
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
Caso contr
ario
Se i 6= k ent
ao
Troque a linha k com a linha i
Fim do condicional
Fim do condicional
Para i = k + 1 at
e i = n faca
aik
m = mik =
akk
bi = bi mbk
Para j = k + 1 at
e j = n faca
aij = aij makj
Fim do laco
Fim do laco
17:
Fim do laco
18:
Estrat
egia de Pivoteamento
Exemplo 13. Resolva o sistema abaixo usando o algoritmo (3):
L. A. P. Cant
ao
0.004x1
15.73x2
15.77
0.423x1
24.72x2
20.49
17
CNC
15.73x2
15.77
1689x2
= 1688
Cuja soluc
ao obtida e x1 = 15 e 0.999. A soluc
ao correta do sistema e x1 = 10 e x2 = 1.0. Calcule o erro relativo
da soluc
ao obtida.
Resolvendo o mesmo problema com a ordem das equac
oes trocadas temos m = 0.9456 102 e:
0.423x1
24.72x2
20.49
15.96x2
15.96
cuja soluc
ao e x1 = 10 e x2 = 1, que e a soluc
ao exata do sistema.
O procedimento usado no exemplo 13 para obter a soluc
ao correta do sistema e chamado de estrategia de
pivoteamento, que consiste na troca sistem
atica das linhas, de modo que o piv
o seja o maior elemento, em valor
absoluto, da coluna que estamos eliminando. Assim,
1. no k-esimo passo procuramos o elemento piv
o de maior valor absoluto entre os coeficientes:
|ar k | = max |aik |;
ikn
2.1.3 Fatorac
ao LU
Os metodos de Eliminac
ao de Gauss e Eliminac
ao de Gauss com Pivoteamento podem ser usados economicamente quando precisamos resolver v
arios sistemas com a mesma matriz dos coeficientes A e diversos termos
independentes b.
Uma opc
ao seria guardar os coeficientes mij calculados no processo de eliminac
ao e us
a-los na atualizac
ao dos
termos independentes b. Computacionalmente, esta alternativa e conhecida como Fatorac
ao LU da matriz A.
Suponha que seja possvel fatorar a matriz A num produto de uma matriz triangular inferior (com elementos
da diagonal principal iguais a 1) L, e uma matriz triangular superior U, isto e:
A = LU = Ax = b LUx = b.
O sistema LUx = b permite o desmembramento em dois sistemas triangulares:
Ly = b
L. A. P. Cant
ao
Ux = y.
18
CNC
Para k = 1 at
e k = n 1 faca
2:
w = |akk | e r = k
3:
Para j = k at
e j = n faca
4:
5:
w = |ajk | e r = j
6:
Fim do condicional
7:
Fim do laco
8:
Se w = 0 ent
ao
9:
10:
11:
A n
ao e inversvel. PARE
Caso contr
ario
Troque a linha k com a linha r
12:
Fim do condicional
13:
Para i = k + 1 at
e i = n faca
aik
m = mik =
akk
bi = bi mbk
14:
15:
16:
Para j = k + 1 at
e j = n faca
aij = aij makj
17:
18:
19:
Fim do laco
Fim do laco
20:
Fim do laco
21:
3x1
x1
4x1
L. A. P. Cant
ao
+
+
2x2
x2
+ 4x3
+ 2x3
= 1
= 2
3x2
2x3
19
CNC
Para i = 1 at
e i = n faca
Para j = i at
e j = n faca
i1
X
uij = aij
mik ukj
2:
3:
k=1
5:
Para j = i + 1 at
e j = n fac!a
i1
X
mji = aji
mjk uki /uii
6:
Fim do laco
4:
k=1
Fim do laco
7:
8:
Fim do laco
9:
Soluc
ao 2. Considere a matriz abaixo onde a primeira parte refere-se a matriz L e a segunda parte, a matriz U:
0
0
2 1a Etapa 1/3 1
2
4/3 0
1/3
1/3
a
2 Etapa 1/3 1 0
10/3
4/3 1 1
2/3
1/3
2/3
4
1a Etapa
Piv
o: a11 = u11 = 3 e multiplicadores: m21 =
a21
1
a31
4
= e m31 =
= .
u11
3
u11
3
u2j
j = 2, 3
u3j
j = 2, 3
2a Etapa
Piv
o: u22 =
1
u32
1/3
e multiplicadores: m32 =
= 1.
=
3
u22
1/3
u33 = u33 m32 u23
Resolvendo L(Ux) = b
(i) Ly = b
y1
1/3y1
y2
4/3y1
y2
2x2
4x3
1/3x2
2/3x3
5/3
4x3
= 1
= 2
+ y3
T
5
y = 1, , 0
3
(ii) Ux = y
3x1
L. A. P. Cant
ao
x = (3, 5, 0)T
20
CNC
2.1.4 C
alculo da Matriz Inversa
Sejam A uma matriz quadrada n
ao singular (det(A) 6= 0) e A1 = [b1 | b2 | . . . | bn ] a matriz inversa de A,
onde bj e a j-esima coluna da matriz A1 e ej e a j-esima coluna da matriz indentidade I. De A A1 = I, isto e,
de:
A [b1 | b2 | . . . | bn ] = [e1 | e2 | . . . | en ]
resulta A bj = ej , j = 1 : n.
Assim, podemos calcular as colunas j, j = 1 : n, da matriz A1 resolvendo os sistemas lineares anteriores e,
portanto podemos inverter uma matriz utilizando qualquer metodo de resoluc
ao de sistemas lineares:
a. Usando Fatorac
ao LU, obtemos as colunas de A1 fazendo:
LU bj = ej ,
j =1:n
j =1:n
A= 2
1
1
0
0
0
1 1a Etapa 2/3
2 0
1/3
1 2a Etapa 2/3
2 1
1/3
1
0 2
Ly1 = b1 2/3
1/3
0 y2 = 0 y1 = 23
1
y3
0
1
61
1 b21 = 32 b1 =
1
0 2
b31
1
12
1
2
Ub1 = y1 0
b11
y1
L. A. P. Cant
ao
21
CNC
j = 2:
y1
1 0 y2 = 1 y2 = 1
1
0
1 1
y3
Ly2 = b2 2/3
1/3
0
b12
0
3
2
2 1 b22 = 1 b2 = 14
1
b32
0 2
12
Ub2 = y2 0
0
y1
Ly3 = b3 2/3
1/3
0 y2 = 0 y3 = 0
1
1
1
y3
Ub3 = y3 0
b13
1 b23 = 0 b3 =
0 2
1
b33
1
2
1
4
12
1
1
6
2
2
1
Portanto, A1 = [b1 | b2 | b3 ] = 12 41
.
4
1
2
21
12
2
1
0 1a Coluna 0
1
0
32
2 1
31
0 2a Coluna 0
1
0
32
0 2
0
1
Note que, a quarta, quinta e sexta coluna na matriz expandida representam, respectivamente, os vetores y1 ,
y2 e y3 . Resolvendo o sistema triangular superior (primeira, segunda e terceira coluna da matriz expandida)
para y1 , y2 e y3 (Aej = yj , j = 1 : 3) obtemos:
16
A1 =
1
2
1
2
1
2
14
12
1
2
1
4
12
2.2 M
etodos Iterativos
Se no sistema Ax = b os elementos da diagonal s
ao diferentes de zero, aii 6= 0, i = 1, 2, . . . , n, ent
ao
podemos explicitar x1 usando a primeira equac
ao, x2 usando a segunda equac
ao e assim sucessivamente. Ou seja,
L. A. P. Cant
ao
22
CNC
reescrevemos o sistema (2.1) numa forma que e conveniente para os metodos iterativos:
x1
b1
n
X
a1j xj /a11
j=2
..
.
xi
bi
n
X
aij xj /aii
(2.5)
j6=i
..
.
xn
= bn
n1
X
anj xj /ann
j=1
2.2.1 M
etodo de Jacobi
Neste metodo, as equac
oes (2.5) s
ao usadas para calcular uma seq
uencia de vetores aproximac
oes x(1) ,
x(2) , . . ., x(k) . Dada uma aproximac
ao inicial x(0) , usamos o primeiro termo `
a direita da i -esima equac
ao para
definir uma nova aproximac
ao para xi :
xi(1) = bi
n
X
i = 1, 2, . . . , n.
(2.6)
j6=i
ou
(k+1)
xi(k)
xi
<
ER = max
(k+1)
1in
xi
(k+1)
a soluc
ao procurada, isto e, xi
= x. Em testes computacionais
2.2.2 M
etodo de Gauss-Seidel
Este metodo consiste em uma modificac
ao do metodo de Jacobi. Nele, as iterac
oes ser
ao calculadas usando as
equac
oes (2.5), mas aproveitando os c
alculos j
a atualizados de outras componentes, para atualizar a componente
(k+1)
que est
a sendo calculada. Assim, o valor recem calculado para x1
(k+1)
ser
a usado no c
alculo de x2
, como mostra
o Algoritmo 7.
L. A. P. Cant
ao
23
CNC
4:
5:
6:
7:
Para k = 0 at
e k = max faca
Para i = 1 at
e i
= n faca
n
X
1
xi(k+1) =
bi
aij xj(k)
aii
j=1, j6=i
(k+1)
(k)
x
x
i
i
< ent
ao
Se max xi(k+1) xi(k) < ou
(k+1)
1in
xi
x = x(k+1)
Caso contr
ario
Se k = max ent
ao
PARE: n
ao houve convergencia.
8:
9:
10:
11:
12:
Fim do condicional
Fim do condicional
Fim do laco
Fim do laco
Algoritmo 6: Metodo de Jacobi
4:
5:
6:
7:
Para k = 0 at
e k = max faca
Para i = 1 at
e i
= n faca
i1
n
X
X
1
(k+1)
(k+1)
(k)
xi
=
bi
aij xj
aij xj
aii
j=1
j=i+1
(k+1)
(k)
x
x
i
i
(k+1)
(k)
Se max xi
xi < ou
< ent
ao
(k+1)
1in
xi
x = x(k+1)
Caso contr
ario
Se k = max ent
ao
PARE: n
ao houve convergencia.
8:
9:
10:
11:
12:
Fim do condicional
Fim do condicional
Fim do laco
Fim do laco
Algoritmo 7: Metodo de Gauss-Seidel
4.00x1
0.09x1
0.04x1
L. A. P. Cant
ao
+ 0.24x2
+ 3.00x2
0.08x3
0.15x3
=
=
8.00
9.00
0.08x2
4.00x3
20.00
24
CNC
2.2.3 Converg
encia dos M
etodos de Jacobi e Gauss-Seidel
As condic
oes de convergencia de verificac
ao simples para os metodos de Jacobi e Gauss-Seidel s
ao:
1. Os metodos iterativos de Jacobi e Gauss-Seidel convergem se a matriz A e diagonalmente dominante, ou
n
X
seja: |aii | >
|aij |, i = 1 : n.
j6=i
2. Os metodos iterativos de Jacobi e Gauss-Seidel convergem se A e uma matriz positiva definida: xT Ax > 0
para todo x 6= 0.
2.3 Exerccios
1. Para cada um dos sistemas lineares seguintes, obtenha uma soluc
ao por meio de metodos gr
aficos, se possvel.
Explique os resultados do ponto de vista geometrico.
(
x1
x1
+ 2x2
x2
x1
x2
x1
x2
(a)
(b)
(
(c)
(
(d)
(
(e)
2x1 +
(f)
x1 +
x1
2x1 +
(g)
4x1 +
x1
(
2x1 +
(h)
2x1 +
= 3
= 0
x1
2x2
2x1
4x2
x1
x2
2x1
4x2
x1
2x2
2x1
4x2
x2
x2
=
=
1
2
3x2
x2
2x2
3x2
=
=
2
5
x2
+ x3
4x2
x3
= 1
(b)
4x1
x2
x3
4x1
x2
2x3
2x1
5x2
2x3
2x1
4x2
x3
= 5
x1
2x2
4x3
11
x1
x2
3x3
= 9
3.03x1
3.03x1
6.11x1
12.1x2
14x3
119
12.1x2
7x3
120
14.2x2
21x3
139
(ii) Soluc
ao real: (10, 1)T
(
L. A. P. Cant
ao
0.03x1
5.31x1
+ 58.9x2
6.10x2
= 59.2
= 47.0
25
CNC
(iii) Soluc
ao real: (0.17682530, 0.01269269, 0.02065405, 1.18260870)T
1.19x1
14.2x
1
15.3x
2.11x2
0.122x2
100x3
x4
1.12
12.2x3
x4
3.44
100x2
99.9x3
x4
2.15
0.110x2
13.1x3
x4
4.16
(iv) Soluc
ao real: (0.78839378, 3.12541367, 10.16759660, 4.55700252)T
x1
2 x
1
5x1
3 x
1
e x2
e x2
6x2
2
e x2
2x3
e x3
x3
7x3
3x4
11
3
7 x4
2x4
1
9 x4
=
=
x1 0.5x2 + 0.5x3
(a)
x1 + x2 + x3
0.5x1 0.5x2 + x3
12
10
2 3
(b)
8 1
x1
48
4
2
x2 =
1
x3 11
x4
150
20
Resolva-os usando os metodos de Jacobi e Gauss-Seidel e verifique a convergencia dos metodos. Justifique
os resultados. [ (a) x = (2, 4, 6)T , (b) x = (3, 1, 5, 7)T ]
5. Resolva os sistemas lineares:
8x1 + 4x2 x3
(a)
x + 2x + 5x 4x
1
2
3
4
17
29
= 11
=
(b) 3
x1
13
4 x2 8
x3
50
14 5
L. A. P. Cant
ao
6 3
(a) 1
3.001
x1
2 x2 9
9
x3
29
(b)
x1 + 2x2 + 3x3
5x1 x2 + 4x3
2x1 + 4x2 + x3
17
= 2
=
25
26
CNC
usando Fatorac
ao LU. Verifique a unicidade e a exatid
ao das soluc
oes.
7. Calcule o determinante da matriz A usando Fatorac
ao LU.
0
2
1
4 1
3
1
2 1
3
4
0
0
1
1 1
2 1
A=
2
3 4
2
0
5
1
1
1
3
0
2
1 1
2 1
2
0
8. Resolva os sistemas abaixo usando Fatorac
ao LU:
(a)
1.012x1
2.132x2
2.132x1
3.104x1
+ 4.096x2
7.013x2
7.013x3
+ 0.014x3
3.104x3
1.984
= 5.049
= 3.895
(b)
2.1756x1
4.0231x2
4.0231x1
6.0000x2
1.0000x1
6.0235x1
2.1732x3
5.2107x2
+
5.1967x4
1.1973x4
= 6.1593
1.1111x3
4.1561x4
7.0000x2
17.102
3.0004
0.0000
(a) A = 1
1
1
(b) B =
1 1
10
(c) C = 1
(d) D = 1
4
2
4
0
1
1
1
2
3
10
x1
6 x2 = 1
10
x3
7
L. A. P. Cant
ao
27
CAPITULO
Equac
oes N
ao-Lineares
Introduc
ao
A necessidade de encontrar valores de x = x que satisfacam a equac
ao f (x) = 0 aparece freq
uentemente
em uma ampla variedade de problemas provenientes das Ciencias e das Engenharias. Estes valores especiais s
ao
chamados de razes da equac
ao f (x) = 0, ou zeros da func
ao f , os quais podem ser vistos na figura 3.1, que
mostra quando a func
ao f (x) = cos x = 0.
y
1.0
0.8
y = cos x
0.6
0.4
0.2
0
x1
x2
x3
x4
0.2
0.4
0.6
0.8
1.0
7
express
ao tal como x = (b b2 4ac)/2 para determinar as duas razes de f (x) = ax 2 + bx + c = 0. No
entanto, para equac
oes algebricas de grau superior a quatro e para a grande maioria das equac
oes transcendentes,
as razes n
ao podem ser calculadas analiticamente. Nestes casos tem de usar metodos que encontrem uma soluc
ao
aproximada para estas razes.
O problema de calcular uma raiz pode ser dividido em duas fases:
Captulo 3. Equac
oes N
ao-Lineares
CNC
Fase I: Isolamento da raiz, isto e, encontrar um intervalo [a, b] que contenha uma, e somente uma, raiz de
f (x) = 0.
Fase II: Refinamento da raiz, que consiste em, escolhidas aproximac
oes iniciais no intervalo encontrado
na Fase I, melhor
a-las sucessivamente ate obter uma aproximac
ao para a raiz dentro de uma precis
ao
pre-fixada.
0.4
0.2
0.2
0.4
0.6
0.8
1.0
1.0
1.2
1.4
1.6
1.8
2.0
2.2
2.4
2.6
2.8
3.0
1. Esbocar o gr
afico da func
ao f (x) e localizar as abscissas dos pontos onde a curva intercepta o eixo
ox;
2. A partir da equac
ao f (x) = 0, obter a equac
ao equivalente g(x) = h(x), esbocar os gr
aficos das func
oes
g(x) e h(x) no mesmo eixo cartesiano e localizar os pontos x onde as duas curvas se interceptam, pois neste
caso f (x) = 0 g(x) = h(x);
3. Usar os programas que tracam gr
aficos de func
oes, disponveis em algumas calculadoras ou softwares matem
aticos.
L. A. P. Cant
ao
29
Captulo 3. Equac
oes N
ao-Lineares
CNC
240
1.0
0.9
200
0.8
0.7
160
0.6
120
0.5
0.4
80
0.3
0.2
40
0.1
0
3
0
2
0.5
0.1
0.3
0.7
1.1
(a)
1.5
1.9
2.3
2.7
(b)
64.0
23
45.7
15
27.4
9.1
9.1
27.4
17
45.7
64.0
25
4
(a)
(b)
2. f (x) = x 5 ex : Neste caso, e mais conveniente usar os passos (2) e (3). Assim, x 5 ex = 0
L. A. P. Cant
ao
30
Captulo 3. Equac
oes N
ao-Lineares
CNC
5.00
1.91
h(x)
0.92
4.29
f (x)
0.07
3.57
1.05
2.86
2.04
2.14
g(x)
3.03
0.71
4.01
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
5.00
4.0
0.0
0.5
1.0
1.5
(a)
1.43
2.0
2.5
3.0
3.5
0.00
4.0
(b)
x 5 ex , (b) g(x) =
x e h(x) = 5 ex .
3.2.1 Crit
erio de Parada
O criterio de parada interrompe a seq
uencia gerada pelos metodos. Este deve avaliar quando xk , na k-esima
iterac
ao, est
a suficientemente pr
oximo da raiz exata. Contudo, o valor exato da raiz e desconhecido na maioria
dos casos, logo, o processo e interrompido quando pelo menos um dos criterios a seguir e satisfeito:
1. Avaliac
ao do ponto na func
ao:
|f (xk )| ;
2. Avaliac
ao do tamanho do intervalo:
|xk xk1 |
ou
xk xk1
;
xk
3.2.2 M
etodo da Bissec
ao
Seja f (x) uma func
ao contnua no intervalo [a, b] e tal que f (a) f (b) < 0, ou seja, f satisfaz as condic
oes do
Teorema 2.
Suponha que o intervalo (a, b) contenha uma
unica raiz da equac
ao f (x) = 0. O objetivo deste metodo e
reduzir a amplitude do intervalo que contem a raiz ate se atingir a precis
ao requerida, neste caso (b a) < ,
usando para isto a sucessiva divis
ao de [a, b] ao meio. A Figura 3.6 mostra este processo.
Os passos para a execuc
ao deste metodo s
ao dados pelo Algoritmo 8.
L. A. P. Cant
ao
31
Captulo 3. Equac
oes N
ao-Lineares
CNC
x0 = a1 = a2 = a3
x
a = a0
b = b0 = b1
x2 = b3
x1 = b2
b = xk
4:
5:
Caso contr
ario
a = xk
6:
7:
Fim do condicional
8:
Se |b a| ent
ao
a+b
PARE, x =
e raiz aproximada de f (x)
2
Fim do condicional
9:
10:
11:
Fim do laco
Algoritmo 8: Metodo da Bissec
ao
3.2.3 M
etodo de Newton
Isaac Newton (16421727) publicou seu metodo para encontrar razes de equac
oes n
ao-lineares em 1687. Este
metodo tambem e conhecido como Newton-Raphson, devido `
a sistematizac
ao apresentada por Joseph Raphson
em 1690.
O metodo de Newton combina duas ideias comuns nas aproximac
oes numericas: linearizac
ao e iterac
ao. A
linearizac
ao substitui a curva y = f (x) por sua reta tangente.
Seja x0 uma aproximac
ao inicial da raiz, como ilustra a Figura 3.7. Aproximando a curva y = f (x) por sua reta
tangente tracada no ponto (x0 , f (x0 )) obtemos a aproximac
ao linear. Encontrando o ponto de intersecc
ao desta
reta com o eixo x, obteremos uma nova aproximac
ao para a raiz, o ponto x1 da figura.
L. A. P. Cant
ao
32
Captulo 3. Equac
oes N
ao-Lineares
CNC
xk = (a + b)/2
0
1
2
3
4
5
6
7
8
9
10
0
0
0.25
0.25
0.3125
0.3125
0.328125
0.3359375
0.3359375
0.3359375
0.336914
1
0.5
0.5
0.375
0.375
0.34375
0.34375
0.34375
0.3398438
0.3378906
0.3378906
0.5
0.25
0.375
0.3125
0.34375
0.328125
0.3359375
0.3398438
0.78906
0.336914
0.3374023
f (xk )
f (a) f (xk )
1.375
0.765625
0.3222656
0.2180176
0.0531311
0.0713582
0.0144744
0.0193443
0.0024384
0.0060175
0.0017893
()
(+)
()
(+)
()
(+)
(+)
()
()
(+)
|b a|
0.5
0.25
0.125
0.06
0.03125
0.014375
0.0078125
0.0039063
0.0019531
0.0009766
y
y = f (x)
x2
x1
x0
f (x0 )
= f 0 (x0 )
x0 x1
x1 = x0
f (x0 )
f 0 (x0 )
tg() =
f (x1 )
= f 0 (x1 )
x1 x2
x2 = x1
f (x1 )
f 0 (x1 )
f (xk )
f 0 (xk )
(3.1)
33
Captulo 3. Equac
oes N
ao-Lineares
CNC
4:
PARE, x = xk+1
5:
Fim do condicional
6:
Se k = max ent
ao
7:
8:
9:
PARE, o metodo n
ao converge para a soluc
ao.
Fim do condicional
Fim do laco
Algoritmo 9: Metodo de Newton-Raphson
k
xk
f (xk )
f 0 (xk )
|xk+1 xk |
0
1
2
3
0.5
0.3333
0.3376068
0.337609
1.375
0.0370
0.0000183
4.545 1012
8.25
8.6667
8.6581
1.6667
0.0042735
0.0000021
ent
ao a ordem de convergencia e p desse metodo.
Teorema 3. [4] Se f , f 0 e f 00 s
ao contnuas em um intervalo I cujo centro x e soluc
ao de f (x) = 0 e se f 0 (x) 6= 0
ent
ao a ordem de convergencia do Metodo de Newton e quadratica, ou seja, p = 2.
Prova 1. Seja (x) = x
f (x)
. Subtraindo a equac
ao x = (x) de (3.1), obtemos:
f 0 (x)
xk+1 x = (xk ) (x).
(xk x)2 00
(k ) (x)
2!
L. A. P. Cant
ao
=11=0
(f 0 (x))2
(f 0 (x))2
34
Captulo 3. Equac
oes N
ao-Lineares
CNC
(xk x)2
00 (x)(k ) (x)
2!
00 (k )
|xk+1 x|
=
C.
2
|xk x|
2!
3.2.4 M
etodo da Secante
Uma grande desvantagem do metodo de Newton e a necessidade de se obter f 0 (x) e calcular seu valor numerico
a cada iterac
ao. Uma alternativa e usar retas secantes como aproximac
oes lineares locais da func
ao, em vez de
tangentes. Neste caso, s
ao necess
arias duas aproximac
oes para inicializarmos o processo, x0 e x1 .
y
y = f (x)
C = (x0 , f (x0 ))
D
E
x
A x1
B
x0
f (x1 )
f (x0 )
=
x0 x2
x1 x2
x0 f (x1 ) x1 f (x0 )
.
f (x1 ) f (x0 )
L. A. P. Cant
ao
35
Captulo 3. Equac
oes N
ao-Lineares
CNC
ximac
ao xk+1 , atraves da f
ormula:
xk+1 =
4:
PARE, x = xk+1
5:
Fim do condicional
6:
Se k = max ent
ao
7:
8:
9:
PARE, o metodo n
ao converge para a soluc
ao.
Fim do condicional
Fim do laco
Algoritmo 10: Algoritmo para o Metodo das Secantes
Exemplo 20. Aplique o metodo das Secantes para encontrar a raiz de f (x) = x 3 9x + 3 tomando x0 = 0 e
x1 = 1, para = 104 (a Tabela 3.3 apresenta os passos deste exemplo).
k
xk1
xk
f (xk1 )
f (xk )
|xk+1 xk |
1
2
3
4
5
0
1
0.375
0.3319415
0.3376346
1
0.375
0.3319415
0.3376346
0.337609
3
5
0.3222656
0.0491011
0.0002222
5
0.3222656
0.0491011
0.0002222
1.464 107
0.625
0.0430585
0.0056931
0.0000256
1+ 5
Teorema 4. [4] A ordem de convergencia do metodo da Secante e p =
' 1.618.
2
Note que, apesar da ordem de convergencia do metodo da Secante ser inferior `
a do metodo de Newton, ele
fornece uma alternativa vi
avel, desde que requer somente um c
alculo da func
ao f por passo, enquanto dois c
alculos
(f (xk ) e f 0 (xk )) s
ao necess
arios para o metodo de Newton.
3.3 Sistemas N
ao-Lineares
Resolver um problema de equac
oes n
ao-lineares e uma tarefa complexa, eventualmente contornada aproximandose o problema original por um sistema de equac
oes lineares. Quando essa soluc
ao e insatisfat
oria, o problema deve
ser atacado diretamente.
L. A. P. Cant
ao
36
Captulo 3. Equac
oes N
ao-Lineares
CNC
3.3.1 M
etodo de Newton para Sistemas N
ao-Lineares
Considere n func
oes : f1 , f2 , . . . , fn , onde cada uma delas e uma func
ao de n vari
aveis fi : Rn R para
i = 1, 2, . . . , n, ou seja, x1 , x2 , . . . , xn . Queremos encontrar os valores de x1 , x2 , . . . , xn tais que:
f1 (x1 , x2 , . . . , xn )
f2 (x1 , x2 , . . . , xn )
..
fn (x1 , x2 , . . . , xn )
=
..
.
0
..
.
(3.2)
x1 (x1 + 1) + 2x2
2
(x1 1) + (x2 6)
18
25
x1 (x1 + 1) + 2x2 18
f2 (x1 , x2 )
(x1
1) +
(x2
6) 25
Usando a notac
ao vetorial, temos:
x
(x1 , x2 , . . . , xn ) ,
F(x)
f (n) (xk )
f (n+1) ()
f 00 (xk )
(x xk )2 + +
(x xk )n +
(x xk )n+1
2!
n!
(n + 1)!
onde x xk . O
ultimo termo desta express
ao representa o erro da aproximac
ao de f (x) pelo polin
omio de
grau n, o polin
omio de Taylor, formado pelos n + 1 primeiros termos da expans
ao em serie de Taylor.
Observe que, se tomarmos a aproximac
ao linear (usando os dois primeiros termos da serie de Taylor), teremos:
f (x) f (xk ) + f 0 (xk )(x xk ).
Se usarmos esta aproximac
ao linear para encontrar a raiz de f (x) = 0,
f (
x) 0
se
f (xk ) + f 0 (xk )(
x xk ) = 0,
f (xk )
.
f 0 (xk )
(3.3)
L. A. P. Cant
ao
37
Captulo 3. Equac
oes N
ao-Lineares
CNC
aproximac
ao linear + erro
(3.4)
fi (x)
.
xj
J(xk )(xk+1 xk )
F(xk )
(3.5)
v
k
= F(xk )
J(x ) v
Ou seja, o c
alculo das equac
oes acima envolve um sistema de equac
oes lineares para a aproximac
ao da iterac
ao
k + 1. Assim, a nova aproximac
ao ser
a:
xk+1 = xk + v
O metodo de Newton para Sistemas n
ao-Lineares e dado pelo algoritmo (11)
Exemplo 21. Resolva o sistema que segue, usando o metodo de Newton para equac
oes n
ao-lineares.
f1 (x1 , x2 )
2x13 x22 1 = 0
f2 (x1 , x2 )
x1 x23 x2 4 = 0
L. A. P. Cant
ao
f1
= 6x12
x1
f1
= 2x2
x2
f2
= x23
x1
f2
= 3x1 x22 1
x2
38
Captulo 3. Equac
oes N
ao-Lineares
Dado x0 , fi para i = 1, 2, . . . , n,
1:
fi
xj
CNC
para j = 1, 2, . . . , n, 1 e 2
Para k = 1 at
e k = max faca
Para i = 1 at
e i = n faca
2:
3:
Fi = fi (xk1 )
4:
Para j = 1 at
e j = n faca
fi k1
(x )
Jij =
xj
Fim do laco
5:
6:
7:
Fim do laco
8:
Resolva o sistema Jv = F
9:
xk = xk+1 + v
Se max1in |fi (x k )| < 1 ent
ao
10:
Ent
ao x = xk
11:
12:
Fim do condicional
13:
... ou ...
14:
ao
Se max1in |xik xik1 | < 2 ent
Ent
ao x = xk
15:
Fim do condicional
16:
17:
Fim do laco
Algoritmo 11: Metodo de Newton para Sistemas N
ao-Lineares
6x12
2x2
x23
3x1 x22 1
Tomando um aproximac
ao inicial x0 = (1.2, 1.7) temos:
"
J(x0 ) =
8.64
3.4
4.91
9.4
"
e
F(x0 ) =
0.4340
0.1956
L. A. P. Cant
ao
f1 (x0 ) = 0.4340
f2 (x0 ) = 0.1956
Captulo 3. Equac
oes N
ao-Lineares
CNC
3.4 Exerccios
1. Localize graficamente as razes das equac
oes a seguir:
(a) 4 cos x e2x = 0;
x
tg x = 0
(b)
2
(e) x 3 + x 1000 = 0.
(c) 1 x ln x = 0;
(d) 2x 3x = 0;
(b) [2.5, 3]
(x = 2)
(x = 2)
(x = 1)
(x = 1)
3 com precis
ao de 104 utilizando:
(c) x0 = 1.5;
(e) x0 = 3;
(b) x0 = 1.875;
(d) x0 = 1.95;
(f) x0 = 7.
40
Captulo 3. Equac
oes N
ao-Lineares
CNC
1
=
p
(p 1)xk +
a
xkp1
x0 > 0.
10. A func
ao f (x) = tg(x) 6 tem um zero em x = (1/) arctan 6 0.447431543. Considerando x0 = 0 e
x1 = 0.48, use 10 iterac
oes para cada um dos seguintes metodos para calcular o valor aproximado dessa raiz.
Que metodo e mais bem-sucessido ? Por que ?
(a) Metodo da Bissec
ao;
11. Use o Metodo de Newton com x0 = 0 para calcular x2 para cada um dos seguintes sistemas n
ao lineares:
(
(a)
+ 2x1 5x2 + 8 = 0
(c)
3x1 cos(x2 x3 )
4x12 625x22
x1 x2
e
1
2
=0
+ 2x2 1 = 0
+20x3 +
103
3
=0
(b)
sen(4x1 x2 ) 2x2 x1 = 0
4 1
4
x12 + x2 37 = 0
(d)
x1 x22 5 = 0
x1 + x2 + x3 3 = 0
Resp.: x2 = (4.350877, 18.49123, 19.84211)T
3
2
x1 + x1 x2 x1 x3 + 6 = 0
ex1 + ex2 x3 = 0
x22 2x1 x3 = 4
3x12 x22 = 0
3x1 x22 x13 1 = 0
ln 2 + ln
ex1 x2 + cos(x1 x2 )
L. A. P. Cant
ao
9x2 +
6x1 2 cos(x2 x3 ) 1 = 0
p
x12 + sen x3 + 1.06 + 0.9 = 0
60x3 + 3 ex1 x2 +10 3 = 0
41
CAPITULO
Ajuste de Curvas
Introduc
ao
Apresentaremos aqui os aspectos b
asicos e te
oricos para ajuste de curvas usando interpolac
ao e aproximac
ao
de func
oes de uma vari
avel real.
Os problemas de interpolac
ao e aproximac
ao estudados surgem ao se aproximar uma func
ao f por outra func
ao
g mais apropriada. Ou ainda, quando h
a a necessidade de aproximar dados tabelados atraves de uma func
ao. Para
isso existem duas classes de metodos e a distinc
ao entre elas est
a em considerarmos, ou n
ao, a existencia de erros
nos dados.
1. Interpolac
ao: os dados s
ao precisos e portanto pode-se exigir que a curva de ajuste passe pelos pontos
dados. Em geral, as func
oes escolhidas para o ajuste s
ao polin
omios.
Estabelece um metodo que permite encontrar um polin
omio que passe por n+1 pontos conhecidos, denotados
por (x0 , y0 ), (x1 , y1 ), ... , (xn , yn )) onde x0 6= x1 6= x2 6= . . . 6= xn .
2. M
etodo dos Quadrados Mnimos: considera-se possveis erros introduzidos na obtenc
ao dos dados.
4.1 Interpolac
ao
Seja a Tabela 4.1.
xi
0.1
0.6
0.8
f (xi )
1.221
3.320
4.953
CNC
4.1.1 Polin
omio Interpolador de Lagrange
Dados y0 = f (x0 ), y1 = f (x1 ), ... , yn = f (xn ), desejamos encontrar um polin
omio p(x) tal que p(x0 ) = f (x0 ),
p(x1 ) = f (x1 ), ... , p(xn ) = f (xn ). A Figura 4.1 ilustra este caso.
p(x)
x2
x1
x0
xn1
xn
para i = 0 : n.
Prova 2. Seja:
p(x)
f (x0 )l0n (x) + f (x1 )l1n (x) + f (x2 )l2n (x) + . . . + f (xn )lnn (x)
n
X
f (xk )lkn (x)
=
(4.1)
k=0
onde
lkn
s
ao os polin
omios de Lagrange definidos por:
lkn
(4.2)
(x xi )
.
(xk xi )
Sabemos que:
lkn (xk ) = 1
lkn (xi ) = 0
para i 6= k.
43
CNC
1
nos pontos x0 = 2, x1 = 2.5 e x2 = 4.
x2
Como ser
ao usados tres pontos, o polin
omio interpolador tem grau 2. Pela substituic
ao dos pontos de inter-
polac
ao na express
ao 4.2, calculamos os polin
omios de Lagrange:
l02 (x)
(x x1 )(x x2 )
(x0 x1 )(x0 x2 )
(x 2.5)(x 4)
(2 2.5)(2 4)
= x 2 6.5x + 10
l12 (x)
(x x0 )(x x2 )
(x1 x0 )(x1 x2 )
(x 2)(x 4)
(2.5 2)(2.5 4)
4x 2 + 24x + 32
3
l22 (x)
(x x0 )(x x1 )
(x2 x0 )(x2 x1 )
(x 2)(x 2.5)
(4 2)(4 2.5)
x 2 4.5x + 5
3
1
x2 ,
f (x0 ) = f (2) = 0.25, f (x1 ) = f (2.5) = 0.16 e f (x2 ) = f (4) = 0.0625. Usando a
express
ao (4.1) teremos o polin
omio interpolador p2 (x):
p2 (x)
0.16
0.0625 2
(4x 2 + 24x + 32) +
(x 4.5x + 5)
3
3
L. A. P. Cant
ao
44
L. A. P. Cant
ao
0.17
0.13
0.09
0.05
2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0
0.17
0.13
0.09
0.05
2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0
0.6
2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0
0.4
0.2
0.2
0.4
x 2 4.5x + 5
3
l22 =
4x 2 + 24x 32
3
0.3
2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0
0.1
0.1
0.3
0.5
0.7
0.9
1.1
1.3
l12 =
0
2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0
0.2
0.4
0.6
0.8
1.0
1.2
0.8
0.6
1.4
1.0
0.21
0.21
1
x2
0.25
0.25
f (x) =
0.29
0.29
45
CNC
k = 0, 1, . . . , n.
Nos pontos x 6= xk nem sempre e verdade que Pn (x) = f (x). Entretanto, para avaliar f (x) nos pontos x 6= xk ,
k = 0, 1, . . . , n, consideramos Pn (x) como uma aproximac
ao para a func
ao y = f (x) em um intervalo que
contenha os pontos x0 , x1 , . . . , xn e calculamos f (x) atraves de Pn (x). Algumas perguntas que surgem s
ao:
i) Podemos ter ideia do erro que cometemos quando substitumos f (x) por Pn (x)?
ii) O polin
omio da interpolac
ao e uma boa aproximac
ao para f (x)?
Teorema 6. (Teorema de Rolle) Seja f (x) contnua em [a, b] e diferenci
avel em cada ponto de (a, b). Se f (a) =
f (b), ent
ao existe um ponto x = , a < < b, tal que f 0 () = 0.
Prova 3. Vide [8] em Aplicac
oes da Derivada.
Teorema 7. (Teorema de Rolle generalizado) Seja n 2. Suponhamos que f (x) seja contnua em [a, b] e que
f (n1) (x) exista em cada ponto de (a, b). Suponhamos que f (x1 ) = f (x2 ) = . . . = 0 para a x1 < x2 < . . . <
xn b. Ent
ao existe um ponto , x1 < < xn , tal que f (n1) () = 0.
Prova 4. Aplicac
ao sucessiva do Teorema de Rolle.
Vejamos agora um teorema que nos fornece uma express
ao do termo do erro.
Teorema 8. Seja f (x) contnua em [a, b] e suponhamos que f (n+1) (x) exista em cada ponto (a, b). Se a x0 <
x1 < . . . < xn b, ent
ao:
Rn (f ; x) = f (x) Pn (f ; x) =
(x x0 ) (x x1 ) . . . (x xn ) (n+1)
f
()
(n + 1)!
(4.3)
|x x0 | |x x1 | . . . |x xn |
max |f (n+1) (t)|.
atb
(n + 1)!
(4.4)
L. A. P. Cant
ao
0.1
0.2
0.3
0.4
0.5
e3x
1.3499
1.8221
2.4596
3.3201
4.4817
46
CNC
calcule um limitante superior para o erro de truncamento quando avaliamos f (0.25), onde f (x) = x e3x usando o
polin
omio de interpolac
ao do 2 grau.
Soluc
ao: Tomemos a equac
ao (4.4):
|Rn (f ; x)|
|x x0 | |x x1 | |x x2 |
000
max |f (t)|
x0 tx2
3!
e3t (1 + 3t)
f 00 (t)
f 000 (t)
0.2t0.4
4.1.3 Polin
omio Interpolador de Newton
Nem sempre temos conhecimento, a priori, do grau adequado para o polin
omio interpolador. Um teste razo
avel
consiste em aumentar o n
umero de pontos de interpolac
ao, crescendo portanto o grau do polin
omio interpolador,
e testar se houve melhoria nos c
alculos. Assim, e importante que o trabalho efetuado anteriormente possa ser
reutilizado para estabelecer a express
ao do novo polin
omio. Note que, ao acrescentarmos um novo ponto ao
polin
omio de Lagrange, teremos de refazer os c
alculos. Por outro lado, o Polin
omio de Newton acrescenta um
novo termo aos c
alculos efetuados anteriormente.
Considere a forma do polin
omio interpolador de Newton:
pn (x) = d0 + d1 (x x0 ) + d2 (x x0 )(x x1 ) + . . . + dn (x x0 )(x x1 ) . . . (x xn1 )
(4.5)
L. A. P. Cant
ao
47
CNC
f [x0 , x1 , . . . , xn ]
f (xk )
k = 0, 1, . . . , n
f [x1 , x2 , . . . , xn ] f [x0 , x1 , . . . , xn1 ]
,
xn x0
0 yi
= yi
Ordem 1:
yi
0 yi+1 0 yi
yi+1 yi
=
xi+1 xi
xi+1 xi
= f [xi , xi+1 ]
Ordem 2:
2 yi
yi+1 yi
xi+2 xi
n yi
n1 yi+1 n1 yi
xi+n xi
= f [xi ]
...
Ordem n:
C
alculo Sistem
atico das Diferencas Divididas
Para calcular as diferencas divididas de uma func
ao y = f (x) sobre os pontos x0 , x1 , . . . , xn , constrmos a tabela
de diferencas divididas (Tabela 4.2).
i
xi
yi = f [xi ]
x0
y0 = f [x0 ]
x1
y1 = f [x1 ]
x2
y2 = f [x2 ]
x3
y3 = f [x3 ]
x4
y4 = f [x4 ]
yi = f [xi , xi+1 ]
f [x1 ] f [x0 ]
x1 x0
f [x2 ] f [x1 ]
f [x1 , x2 ] =
x2 x1
f [x3 ] f [x2 ]
f [x2 , x3 ] =
x3 x2
f [x4 ] f [x3 ]
f [x3 , x4 ] =
]
x4 x3
..
.
Tabela 4.2: C
alculo
f [x0 , x1 ] =
f [x1 , x2 ] f [x0 , x1 ]
x2 x0
f [x2 , x3 ] f [x1 , x2 ]
f [x1 , x2 , x3 ] =
x3 x1
f [x3 , x4 ] f [x2 , x3 ]
f [x2 , x3 , x4 ] =
x4 x2
..
.
f [x0 , x1 , x2 ] =
Sistem
atico
48
CNC
xi
f (xi )
29
30
31
62
xi
yi = f [xi ]
yi
2 yi
3 y i
4 yi
29 (2)
= 31
1 (2)
1 (31)
= 15
0 (2)
0 (15)
=5
1 (2)
55
=0
2 (2)
29
30 29
=1
0 (1)
11
=0
1 (1)
15 0
=5
2 (1)
30
31 30
=1
10
31 1
= 15
20
31
62 31
= 31
21
62
f [x2 , x3 ] f [x1 , x2 ]
11
= 0.
=
x3 x1
1 (1)
f [x] f [x0 ]
, definida em [a, b] para x 6= x0 e n = 1,
x x0
ou
f (x) = f [x0 ] + f [x0 , x](x x0 ).
(4.6)
Para n = 2, procedemos
f [x0 , x1 , x]
f [x0 , x] f [x0 , x1 ]
, definida em [a, b], para x 6= x0 e x 6= x1 ,
x x1
f [x0 , x1 , x](x x1 )
f [x0 , x] f [x0 , x1 ]
L. A. P. Cant
ao
49
CNC
f (x)
f [x] f [x0 ]
f [x0 , x1 ]
x x0
(4.7)
De maneira an
aloga, para n + 1 pontos, temos:
f [x0 , x1 , . . . , xn , x] =
ou
f (x)
(4.8)
xi
yi
yi
2 yi
3 yi
0
1
2
3
1
2
4
5
0
2
12
20
2
5
8
1
1
= x(x 1)
Note que, neste exemplo, apesar de usarmos quatro pontos na interpolac
ao (portanto esper
avamos obter um
polin
omio de grau 3), o resultado foi um polin
omio de grau 2. Isto se deve aos quatro pontos estarem sobre uma
par
abola.
50
CNC
(4.10)
onde as func
oes 1 (x), 2 (x), ..., n (x) s
ao preestabelecidas.
Para cada conjunto de coeficientes ci , i = 1 : n, o resduo de (4.10), em xk , ser
a:
r (xk )
f (xk ) g(xk )
r (xk ; c1 , c2 , . . . , cn ).
(4.11)
r (xi ) =
i=1
m
X
i=1
onde f (xi ), i = 1 : m, s
ao os dados que ser
ao aproximados.
Quando temos o caso de aproximar f (xk ), uma func
ao conhecida para todo x, por uma express
ao mais simples
g(x), o metodo dos quadrados mnimos minimiza:
Z
r 2 (x) dx =
Definic
ao 4. O produto escalar entre duas func
oes f (x) e g(x) e definido por:
m
X
f (xi )g(xi ),
no caso discreto, isto e, se f (x) e g(x)
i=1
s
ao conhecidos em xi , i = 1 : m.
< f , g >=
Z b
s
ao conhecidas e integr
aveis em (a, b).
(4.12)
L. A. P. Cant
ao
51
CNC
m
X
[f (xi ) c1 c2 xi ]2 .
i=1
Do C
alculo Diferencial sabemos que a condic
ao necess
aria do ponto crtico e que as derivadas nele se anulem,
isto e,
< r, r >=
< r, r >= 0,
c1
c2
m
X
2 (f (xi ) c1 c2 xi ) = 0 e
m
X
i=1
2xi (f (xi ) c1 c2 xi ) = 0
i=1
m
m
X
X
mc
+
c
x
=
f (xi )
1
2
i
i=1
c1
m
X
xi + c2
m
X
i=1
xi2
xi f (xi )
i=1
i=1
i=1
m
X
Para ilustrar este procedimento, considere o ajuste da tabela abaixo por uma reta:
xi
0.25
0.5
0.75
1.0
f (xi )
1.000
1.2840
1.6487
2.1170
2.7183
5
X
xi = 2.5,
i=1
i=1
5
X
5
X
f (xi ) = 8.768
i=1
xi2 = 1.875
xi f (xi ) = 5.4514
i=1
2.5c2
8.768
2.5c1
1.875c2
5.4514
Resolvendo o sistema, obtemos c1 = 0.89968 e c2 = 1.70784, ou seja g(x) = 0.89968 + 1.70784x. Os valores de
g(xi ) e os respectivos resduos est
ao na tabela abaixo.
L. A. P. Cant
ao
xi
0.25
0.5
0.75
1.0
f (xi )
g(xi )
r (xi )
1.000
0.89968
0.10032
1.2840
1.32664
0.04264
1.6487
1.7536
0.1049
2.1170
2.18056
0.06356
2.7183
2.60752
0.11078
52
CNC
r 2 (xi ) = 0.039198
i=1
4.3 Interpolac
ao com Splines
Se a func
ao f (x) est
a tabelada em (n + 1) pontos e a aproximarmos por um polin
omio de grau n que a interpole
sobre os pontos tabelados, o resultado dessa aproximac
ao pode ser ruim quando n cresce.
Uma alternativa e interpolar f (x) em grupos de poucos pontos, obtendo-se polin
omio de grau menor e impor
condic
oes para que a func
ao de aproximac
ao seja contnua e tenha derivadas contnuas ate uma certa ordem. Para
que isto aconteca, devemos respeitar as condic
oes da Definic
ao 5.
Definic
ao 5. Considere a func
ao f (x) tabelada nos pontos x0 < x1 < . . . < xn . Uma func
ao Sp (x) e denominada
spline interpolante de grau p com n
os nos pontos xj , j = 0, 1, . . . , n, se satisfaz as seguintes condic
oes:
1. em cada subintervalo [xj , xj+1 ], j = 0, 1, . . . , (n 1), Sp (x) e um polin
omio de grau p;
2. Sp (x) e contnua e tem derivada contnua ate ordem (p 1) em [a, b].
3. Sp (xj ) = f (xj ), j = 0, 1, . . . , n.
A origem do nome spline vem de uma regua el
astica, usada em desenhos de engenharia, que pode ser curvada
de forma a passar por um dado conjunto de pontos (xj , yj ), que tem o nome de spline. Sob certas hip
oteses (de
acordo com a teoria da elasticidade) a curva definida pela regua pode ser descrita aproximadamente como sendo
uma func
ao por partes, cada qual um polin
omio c
ubico, de tal forma que ela e suas duas primeiras derivadas s
ao
contnuas sempre. A terceira derivada, entretanto, pode ter descontinuidades nos pontos xi . Esta func
ao e uma
spline c
ubica interpolante com n
os nos pontos xj , segundo a Definic
ao 5.
Estudaremos aqui dois tipos de Interpolac
ao por Splines: Interpolac
ao por Spline Linear e Interpolac
ao por
Spline C
ubica.
4.3.1 Interpolac
ao por Spline Linear
A interpolac
ao por spline linear de f (x), S(x), nos pontos x1 , x2 , . . . , xn pode ser escrito na forma de subintervalos [xj1 , xj ], j = 1, . . . , n como:
Sj (x) = f (xj1 )
xj x
x xj1
+ f (xj )
,
xj xj1
xj xj1
x [xj1 , xj ] .
Assim:
1. S(x) e um polin
omio de grau 1 em cada subintervalo [xj1 , xj ];
2. S(x) e contnua em (xj1 , xj ) e nos pontos xj , uma vez que S(x) est
a bem definida, pois:
Sj (xj ) = Sj+1 (xj ) = f (xj ) = S(x) e contnua em [a, b] e, portanto, S(x) e uma spline linear;
3. S(xj ) = Sj (xj ) = f (xj ) = S(x) e a interpolac
ao por spline linear de f (x) nos pontos x0 , x1 , . . . , xn .
Exemplo 27. Achar a func
ao de interpolac
ao por spline linear de:
De acordo com a definic
ao:
L. A. P. Cant
ao
53
CNC
xi
f (xi )
S1 (x)
S2 (x)
S3 (x)
f (x0 )
f (x1 )
=
=
2x
21
x2 x
x2 x1
5.0
3.0
7.0
2.5
2 x + 2x 2 = x
x [1, 2]
2
1
(5 x) + x 2 = (x + 4)
3
3
1
(0.5x + 8.5) ,
2
x x1
x2 x1
x 2
52
+ f (x3 )
x x2
x3 x2
x 5
75
2.5
2.0
2.0
x x0
x1 x0
x 1
21
+ f (x2 )
+
x3 x
x3 x2
7x
75
+ f (x1 )
+
5x
52
f (x2 )
3
x1 x
x1 x0
1.0
1.0
x [2, 5]
x [5, 7]
ou ainda,
1
(x + 4)
S(x) =
3
1 (0.5x + 8.5)
2
se
x [1, 2]
se
x [2, 5]
se
x [5, 7]
4.3.2 Interpolac
ao por Spline C
ubico
A spline linear apresenta a desvantagem de ter derivada primeira descontnua nos pontos xj , j = 1, 2, . . . , n.
Se usarmos splines quadr
aticas, teremos que S2 (x) tem derivadas contnuas ate a ordem 1 apenas e, portanto, a
curvatura de S2 (x) pode trocar nos pontos xj . Por esta raz
ao, as splines c
ubicas s
ao mais usadas.
Definic
ao 6. Dada uma func
ao f (x) definida em [a, b] e um conjunto de n
os a = x0 < x1 < . . . < xn = b, um
spline c
ubico interpolador S(x) para f e uma func
ao que satisfaz as seguintes condic
oes:
1. S(x) e um polin
omio c
ubico, indicado por Sj (x), no intervalo [xj , xj+1 ] para cada j = 0, 1, . . . , (n 1);
2. S(xj ) = f (xj ) para cada j = 0, 1, . . . , n;
3. Sj+1 (xj+1 ) = Sj (xj+1 ) para cada j = 0, 1, . . . , (n 2);
0
4. Sj+1
(xj+1 ) = Sj0 (xj+1 ) para cada j = 0, 1, . . . , (n 2);
00
5. Sj+1
(xj+1 ) = Sj00 (xj+1 ) para cada j = 0, 1, . . . , (n 2);
54
CNC
Sj (xj )
aj
aj = f (xj ),
aplicando a condic
ao (3),
aj+1 = Sj+1 (xj+1 ) = Sj (xj+1 ) = aj + bj (xj+1 xj ) + cj (xj+1 xj )2 + dj (xj+1 xj )3
para cada j = 0, 1, . . . , (n 2).
Denotando hj = xj+1 xj , simplificamos a notac
ao para cada j = 0, 1, . . . , (n 1). Se definirmos an = f (xn ),
ent
ao a equac
ao:
aj+1 = aj + bj hj + cj hj2 + dj hj3
(4.13)
e v
alida para cada j = 0, 1, 2, . . . , (n 1).
Tomando Sj0 (x), temos:
Sj0 (x) = bj + 2cj (x xj ) + 3dj (x xj )2
implica que:
Sj0 (xj ) = bj + 2cj (xj xj ) + 3dj (xj xj )2 = Sj0 (xj ) = bj
para cada j = 0, 1, 2, . . . , (n 1). Aplicando a condic
ao (4) , temos:
bj+1 = bj + 2cj hj + 3dj hj2
(4.14)
2cj
= cj
Aplicando na condic
ao (5), para cada j = 0, 1, . . . , (n 1),
2cj+1
cj+1
2cj + 6dj hj
= cj + 3dj hj
Isolando dj :
dj =
cj+1 cj
3hj
(4.15)
Substituindo a equac
ao (4.15) nas equac
oes (4.13) e (4.14), respectivamente, temos:
aj+1
=
=
L. A. P. Cant
ao
cj+1 cj
aj + bj hj +
+
hj3
3hj
cj+1 cj
aj + bj hj + cj hj2 +
hj2
3
cj hj2
(4.16)
55
CNC
bj+1
cj+1 cj
3hj
bj + 2cj hj + 3
bj + 2cj hj + (cj+1 cj ) hj
bj + (cj+1 + cj )hj
hj2
(4.17)
Resolvendo a equac
ao (4.16) para bj , temos:
cj hj2
aj+1
aj + bj hj +
bj hj
(aj+1 aj )
bj
+
cj+1 cj
3hj
hj3
hj2
(2cj + cj+1 )
3
1
hj
(aj+1 aj ) (2cj + cj+1 )
hj
3
(4.18)
1
hj1
(aj aj1 )
(2cj1 + cj )
hj1
3
1
hj
(aj+1 aj ) (2cj + cj+1 )
hj
3
1
hj1
(aj aj1 )
(2cj1 + cj ) + (cj + cj1 )hj1
hj1
3
3
3
(aj+1 aj )
(aj aj1 )
hj
hj1
(4.19)
L. A. P. Cant
ao
56
CNC
pela equac
ao vetorial Ax = b, onde A e uma matriz (n + 1) (n + 1):
A=
..
.
h0
2(h0 + h1 )
h1
0
..
.
..
.
h1
..
.
..
.
2(h1 + h2 )
..
.
..
.
hn2
..
.
..
.
..
.
h2
..
.
0
..
.
..
.
..
.
e b e x s
ao os vetores:
b=
0
3
h1 (a2
a1 )
3
h0 (a1
a0 )
..
3
3
(a
a
)
(a
a
)
n
n1
n1
n2
hn1
hn2
c0
x=
c1
..
.
cn
3f 0 (a)
2h0 c0 + h0 c1
1
h0
(a1 a0 ) (2c0 + c1 )
h0
3
3
(a1 a0 ) h0 (2c0 + c1 )
h0
3
(a1 a0 ) 3f 0 (a)
h0
L. A. P. Cant
ao
f 0 (b)
f 0 (b)
3f 0 (b)
an an1
hn1
57
CNC
A equac
ao (4.19), juntamente com as equac
oes:
2h0 c0 + h0 c1
2h0
h0
h0 2(h0 + h1 )
0
h1
A=
..
.
..
.
.
..
..
.
3
(a1 a0 ) 3f 0 (a)
h0
3
3f 0 (b)
(an an1 )
hn1
..
.
2(h1 + h2 )
..
.
..
.
h2
..
.
..
.
..
.
..
.
hn2
2(hn2 + hn1 )
hn1
hn1
2hn1
0
h1
0
..
.
..
.
..
.
e b e x s
ao os vetores:
b=
3
h0 (a1
a0 ) 3f 0 (a)
a1 )
a0 )
..
3
3
(a
a
)
(a
a
)
n
n1
n1
n2
hn1
hn2
3
3f 0 (b) hn1
(an an1 )
3
h1 (a2
3
h0 (a1
c0
x=
c1
..
.
cn
0.1
0.62049958
0.2
0.28398668
0.3
0.00660095
0.4
0.2484244
0.1
0.4
0.1
0.1
0.4
c0
c1 1.377581
0.1
c2 1.4629254
1
c3
0
L. A. P. Cant
ao
x [0.1, 0.2)
x [0.2, 0.3)
x [0.3, 0.4]
58
CNC
aj
0.62049958
0.28398668
0.00660095
0.24842440
Tabela 4.5:
bj
cj
dj
3.4550869
0
8.9957933
3.1852131 2.698738 0.9463033
2.6170764 2.982629
9.9420967
0.6596755
c1 1.377581
=
0.1 0.4 0.1
c2 1.4629254
c3
0
0.1 0.2
0.7588225
0.2
0.1
0.1
0.4
0
0.1
c0
2.5743885
2
3
x [0.1, 0.2)
x [0.2, 0.3)
x [0.3, 0.4]
4.4 Exerccios
1. Obtenha o polin
omio interpolador de Lagrange e Newton para as seguintes func
oes :
(a) f (x) = e2x cos 3x, x0 = 0, x1 = 0.3 e x2 = 0.6, n = 2;
(b) f (x) = sen(ln x), x0 = 2.0, x1 = 2.4 x2 = 2.6, n = 2;
(c) f (x) = ln x, x0 = 1, x1 = 1.1, x2 = 1.3 e x3 = 1.4, n = 3;
(d) f (x) = cos x + sen x, x0 = 0, x1 = 0.25, x2 = 0.5 e x3 = 1.0, n = 3.
2. Utilize o polin
omio interpolador de Lagrange e de Newton de grau 1, 2 e 3 para aproximar cada um dos
seguintes items:
(a) f (8.4) se f (8.1) = 16.94410, f (8.3) = 17.56492, f (8.6) = 18.50515 e f (8.7) = 1882091;
(b) f ( 31 ) se f (0.75) = 0.07181250, f (0.5) = 0.02475000, f (0.25) = 0.33493750 e f (0) =
1.10100000;
L. A. P. Cant
ao
59
CNC
(c) f (0.25) se f (0.1) = 0.62049958, f (0.2) = 0.28398668, f (0.3) = 0.00660095 e f (0.4) = 0.24842440;
(d) f (0.9) se f (0.6) = 0.17694460, f (0.7) = 0.01375227, f (0.8) = 0.22363362 e f (1.0) = 0.65809197.
3. Seja p3 (x) o polin
omio interpolador para os dados (0, 0), (0.5, y ), (1, 3) e (2, 2). Encontre y para o caso
em que o coeficiente de x 3 em P3 (x) e 6 (use o polin
omio interpolador de Lagrange).
4. Utilize os seguintes valores e aritmetica com arredondamento de quatro dgitos para obter uma aproximac
ao
f (1.05) = 0.2414
f (1.10) = 0.2933
f (1.15) = 0.3492
5. Seja f (x) = 7x 5 3x 2 1.
(a) Calcular f (x) nos pontos x = 0, x = 1, x = 2 e x = 3. Construir a seguir a tabela segundo os
valores crescente de x.
(b) Construir o polin
omio de interpolac
ao para esta func
ao sobre os pontos 2, 1, 0 e 1.
(c) Determinar, pela f
ormula (4.4), um limitante para o erro de truncamento em x = 0.5 e x = 0.5.
Resposta:
104 3
83
x 3x 2
x 1.
3
3
(c) |R3 (0.5)| 39.375 e |R3 (0.5)| 65.625.
(b) P3 (x) =
6. Conhecendo-se a tabela: calcular um limitante superior para o erro de truncamento quando calculamos
x
cos x
0.8
0.6967
0.9
0.6216
1.0
0.5403
1.1
0.4536
1.3
0.2675
1.5
0.0707
4.0
102.56
4.2
113.18
4.5
130.11
4.7
142.05
5.1
167.53
5.5
195.14
5.9
224.87
6.3
256.73
6.8
299.50
7.1
326.72
0.2
0.050446
0.3
0.098426
0.6
0.33277
0.9
0.72660
1.1
1.0972
1.3
1.5697
1.4
1.8487
1.6
2.5015
9. Encontre os polin
omios de quadrados mnimos de graus 1, 2 e 3 para os dados apresentados na tabela abaixo.
Calcule o resduo para cada caso (erro).
Resposta: y1 = 0.620895 + 1.219621x, y2 = 0.5965807 + 1.253293x 0.01085343x 2 e y3 = 0.6290193 +
1.18501x + 0.03533252x 2 0.01004723x 3 .
10. Transforme os modelos abaixo em relac
oes lineares:
L. A. P. Cant
ao
60
CNC
xi
yi
(a) y =
a
b + cx
1.0
1.84
1.1
1.96
1.3
2.21
1.5
2.45
(b) y = abx
1.9
2.94
(c) y =
2.1
3.18
a
b+x
(d) y =
1
1 + ebx
1.0
36.547
0.7
17.264
0.4
8.155
0.1
3.852
0.2
1.820
0.5
0.860
0.8
0.406
1.0
0.246
8
30
6
10
4
9
2
6
0
5
2
4
4
4
1
. Faca o gr
afico para 1/y e verifique que esta aproximac
ao e
(c0 + c1 x)
vi
avel;
(b) idem para y = abx ;
(c) compare os resultados (a) e (b).
Resposta: (a) y =
1
, (b) y = 5.5199(0.8597)x .
0.195 + 0.0185x
13. O n
umero de bacterias, por unidade de volume, existente em uma cultura ap
os x horas e apresentado na
tabela:
n de horas (x)
n de bacterias por vol. unit
ario (y )
0
32
1
47
2
65
3
92
4
132
5
190
6
275
61
CNC
S0 (x)
S1 (x)
=
=
1 + 2x x 3
se 0 x < 1
2
se 1 x 2
Encontre b, c e d.
Resposta: b = 1, c = 3 e d = 1.
21. Um spline c
ubico restrito S para uma func
ao f e definido em [1, 3] por:
(
S(x) =
S0 (x)
S1 (x)
=
=
se 1 x < 2
3
se 2 x 3
L. A. P. Cant
ao
62
CAPITULO
Integrac
ao Num
erica
Introduc
ao
Por que Integrac
ao Numerica ? Isto e: por que n
ao restringir o c
alculo de integrais ao uso das tecnicas de
integrac
ao estudadas no C
alculo Diferencial e Integral ? A resposta para essa quest
ao tem por base dois fatos:
1. Geralmente em problemas envolvendo o c
alculo de integrais n
ao se conhece a express
ao analtica da func
ao
integrando, somente os valores dessa func
ao, o que inviabiliza o uso das tecnicas integrac
ao do C
alculo, mas
que s
ao os dados necess
arios para a integrac
ao numerica;
2. Mesmo quando se conhece a express
ao analtica da func
ao integrando, o c
alculo da func
ao primitiva pode
ser trabalhoso e nem sempre simples. Por exemplo, a integral
Z
2
e x dx
resulta em uma func
ao que n
ao pode ser expressa em termos de combinac
oes finitas de outras func
oes
algebricas, logartmicas ou exponenciais.
A ideia b
asica da integrac
ao numerica reside na aproximac
ao da func
ao integrando por um polin
omio. As
f
ormulas de integrac
ao s
ao somat
orios cujas parcelas s
ao valores da func
ao f (x) calculados em pontos e multiplicados por pesos convenientemente escolhidos. Assim, vamos procurar desenvolver f
ormulas de integrac
ao do
tipo:
b
f (x) dx
=
n
X
wi f (xi ),
(5.1)
i=0
5.1 F
ormula de Newton-Cotes
Neste caso, os pontos de integrac
ao s
ao igualmente espacados em (a, b), tal que h =
n
umero inteiro. Os pontos de integrac
ao (para este caso) s
ao:
xj = a + jh
j = 0 : n.
ba
, onde n e um
n
Captulo 5. Integrac
ao Numerica
CNC
n
X
i=0
Integrando esta
ultima express
ao no intervalo (a, b), temos:
Z
f (x) l(x) dx =
a
n
X
f (xi )
i=0
li (x) dx.
a
Assim, de (5.1), o c
alculo de wi e obtido pela integrac
ao de li (x), isto e:
Z
wi =
li (x) dx =
a
(5.2)
Atraves da equac
ao (5.2) podemos obter f
ormulas do tipo Newton-Cotes para polin
omios de qualquer grau.
5.1.1
F
ormula dos Trap
ezios: n = 1
A f
ormula dos trapezios corresponde `
a interpolac
ao da func
ao a ser integrada por um polin
omio de grau n = 1.
Como a interpolac
ao linear pede 2 pontos, tomaremos os extremos do intervalo de integrac
ao, isto e, a = x0 e
b = x1 .
A express
ao (5.2) nos permite encontrar os pesos da regra dos trapezios:
Z
w0
x1
=
x0
Z
w1
x1
=
x0
(x x1 )
dx
(x0 x1 )
(x x0 )
dx
(x1 x0 )
1
h
1
h
x1
(x x1 ) dx
x0
x=x1
(x x1 )2
2h
x=x0
h
2
x=x1
(x x0 )2
2h
x=x0
h
2
x1
(x x0 ) dx
x0
x1
f (x) dx =
x0
h
[f (x0 ) + f (x1 )] .
2
(5.3)
5.1.2 F
ormula de Simpson: n = 2
Para estabelecer a f
ormula de Simpson, interpolamos f (x) usando um polin
omio de grau 2 que coincide com
(a + b)
essa func
ao nos pontos x0 , x1 e x2 . Assim, tomamos n = 2, x0 = a, x1 =
e x2 = b em (5.2). Integrando
2
os polin
omios de grau 2, estabelecemos os pesos da f
ormula de Simpson:
Z
x2
w0 =
x0
x2
w1 =
x0
x2
w2 =
x0
L. A. P. Cant
ao
(x x1 )(x x2 )
dx
(x0 x1 )(x0 x2 )
h
3
(x x0 )(x x2 )
dx
(x1 x0 )(x1 x2 )
4h
3
(x x0 )(x x1 )
dx
(x2 x0 )(x2 x1 )
h
3
64
Captulo 5. Integrac
ao Numerica
CNC
O c
alculo das integrais acima podem ser simplificados lembrando que:
x1 x0 = h,
x2 x1 = h,
x2 x0 = 2h
e usando a substituic
ao de vari
aveis t = x x1 e portanto t + h = x x1 + h = x x0 , t h = x x1 h = x x2 .
Por exemplo, fazendo estas substituic
oes no c
alculo do peso w0 temos:
Z
x1
w0 =
x0
(x x1 )(x x2 )
dx =
(x0 x1 )(x0 x2 )
h
t(t h)
dt =
2
2h
3
x2
x0
h
f (x) dx =
[f (x0 ) + 4f (x1 ) + f (x2 )] .
3
y = f (x)
(5.4)
y = p(x)
x
x0
x1
x0
(a)
x1
(b)
x2
5.1.3 F
ormulas de Newton-Cotes para n = 3 e n = 4
n=3
x3
f (x) l(x) dx =
x4
f (x) l(x) dx =
x0
2h
45
[f (x0 ) + 3f (x1 ) + 3f (x2 ) + f (x3 )]
(5.5)
(5.6)
x0
n=4
3h
8
1
dx
= 0.69314718.
x
Use as f
ormulas de Newton-Cotes apresentadas (f
ormulas (5.3), (5.4), (5.5) e (5.6)) para obter aproximac
oes
para ln 2. Calcule o erro absoluto de cada aproximac
ao.
L. A. P. Cant
ao
65
Captulo 5. Integrac
ao Numerica
CNC
5.2 F
ormulas Repetidas
(b a)
. Sejam x0 = a,
n
xi = xi1 + h e xn = b. Podemos aplicar a regra dos trapezios para cada um dos subintervalos. Assim, lembrando
Divida o intervalo de integrac
ao [a, b] em n subintervalos de igual comprimento h =
Z
f (x) dx
x1
x3
x2
x1
xn
f (x) dx
f (x) dx . . . +
f (x) dx +
x0
x2
f (x) dx +
xn1
h
[f (x0 ) + 2f (x1 ) + 2f (x2 ) . . . + 2f (xn1 ) + f (xn )] .
2
(5.7)
Z
f (x) dx
x2
x4
f (x) dx
xn2
x2
x0
xn
f (x) dx + . . . +
f (x) dx +
h
=
[f (x0 ) + 4f (x1 ) + 2f (x2 ) + 4f (x3 ) + . . . + 2f (xn2 ) + 4f (xn1 ) + f (xn )]
3
=
(5.8)
h
{f (x0 ) + 4 [f (x1 ) + f (x3 ) + . . . f (xn1 )] +
3
2 [f (x2 ) + f (x4 ) + . . . + f (xn2 )] + f (xn )}
hn+2 f (n+1) ()
(n + 1)!
u(u 1) (u n) du
0
hn+3 f (n+2) ()
(n + 2)!
Z
0
n
u (u 1) (u n) du
2
L. A. P. Cant
ao
66
Captulo 5. Integrac
ao Numerica
CNC
5.3.1 Erro na F
ormula do Trap
ezio
Considere o intervalo [x0 , x1 ], ou seja, n = 1. Usando o Teorema 11, temos:
R(f )
h3 f 00 ()
2!
[u(u 1)] du
0
1
h3 f 00 () u 3
u2
2!
3
2 0
3 00
h f ()
=
12
Assim,
Z
x1
f (x) dx =
x0
=
=
h3 f 00 ()
2!
h3 f 00 ()
2!
1
(u 2 u) du
2
h3 00
[f (x0 ) + f (xn )]
f (), x0 < < x1
h
12
O erro na f
ormula do trapezio repetido e obtido adicionando-se N erros na f
ormula R(f ) acima, onde N =
Logo,
Z
xn
f (x) dx
x0
ba
.
h
h
Nh3 00
f (),
[f (x0 ) + 2f (x1 ) + 2f (x2 ) + + 2f (xn1 ) + f (xn )]
2
12
h
(b a)h2 00
[f (x0 ) + 2f (x1 ) + 2f (x2 ) + + 2f (xn1 ) + f (xn )]
f (), x0 < < xn
2
12
ex cos x dx
0t1.2
ba
1.2 0
1.2
=
=
.
N
N
N
Impondo er r o 0.5 103 , temos:
Na regra do trapezio: h =
R(f )
1.2h2
(6.188) 0.0005 = h2 0.0000808 = h 0.02842
12
Observe que, devemos escolher o menor h que seja menor ou igual a 0.02842, mas que divida exatamente o
intervalo [0, 1.2]. Assim, tomamos h = 0.025:
N=
L. A. P. Cant
ao
1.2
= N = 48
0.025
67
Captulo 5. Integrac
ao Numerica
CNC
5.3.2 Erro na F
ormula de Simpson
Para obtermos o erro na f
ormula de Simpson, sobre o intervalo [x0 , x2 ] fazemos n = 2 no Teorema 12. Assim:
R(f )
Z
h2+3 f (2+2) () 2
2
u
u(u 1)(u 2) du
(2 + 2)!
2
0
Z
h5 f (IV ) () 2 4
u 4u 3 + 5u 2 2u du
4!
0
5
2
5 (IV )
h f
() u
5u 3
4
2
u +
u
4!
5
5
0
h5 f (IV ) ()
4
h5 f (IV ) ()
=
4!
15
90
=
=
=
=
Ent
ao, podemos escrever:
Z
x2
f (x)dx =
x0
h
h5 (IV )
[f (x0 ) + 4f (x1 ) + f (x2 )]
f
(), xo < < x2 .
3
90
O erro na f
ormula de Simpson Repetido e obtido adicionando-se N erros da f
ormula acima, onde N =
Assim:
Z xn
f (x)dx
f (x)dx
ba
.
2h
Nh5 (IV )
h
[f (x0 ) + 4f (x1 ) + 2f (x2 ) + 2f (x2N2 ) + 4f (x2N1 ) + f (x2N )]
f
(),
3
90
h
(b a)h4 (IV )
[f (x0 ) + 4f (x1 ) + 2f (x2 ) + 2f (x2N2 ) + 4f (x2N1 ) + f (x2N )]
f
(),
3
180
x0
xn
x0
1.2
I3 =
ex cos x dx =
0.6
1
h [f (0) + 4f (0.6) + f (1.2)] =
[1 + 4(1.503) + 1.202] = 1.6428
3
3
L. A. P. Cant
ao
1.2
ex cos x dx =
0.3
[f (0) + 4f (0.3) + 2f (0.6) + 4f (0.9) + f (1.2)] = 1.6464
3
68
Captulo 5. Integrac
ao Numerica
CNC
ER =
|Ir Is |
<
|Ir |
onde Ir e Is s
ao dois resultados consectivos, e uma precis
ao pre-fixada, ent
ao paramos o processo.
5.4 Integrac
ao de Romberg
As f
ormulas de Newton-Cotes podem ser combinadas de modo a melhorar a aproximac
ao da integrac
ao
numerica. Uma tecnica eficiente para estabelecer esta combinac
ao e atraves da integrac
ao de Romberg, que
e baseada na extrapolac
ao de Richardson.
5.4.1 Extrapolac
ao de Richardson
Inicialmente, seja g uma func
ao com derivadas de todas as ordens em algum intervalo contendo x0 como um
ponto interior. Ent
ao a expans
ao da serie de Taylor gerada por g em x = x0 e:
g(x)
X
g (k) (x0 )
k=0
k!
(x x0 )k
g 00 (x0 )
g n (x0 )
= g(x0 ) + g (x0 )(x x0 ) +
(x x0 )2 + . . . +
(x x0 )n + . . .
2!
n!
(5.9)
h
2
= g(0) + g 0 (0)
h2
h3
+ g 000 (0) + . . .
2
3!
h
h2
h3
+ g 00 (0) + g 000 (0)
+ ...
2
8
48
L. A. P. Cant
ao
h
1
h
1
= 2g
g(h) = 1
2 g
g(h)
2
2 1
2
h
h2
h3
0
00
000
=
2g(0) + 2g (0) + 2g (0) + 2g (0)
+ ...
2
8
48
h2
h3
g(0) + g 0 (0)h + g 00 (0) + g 000 (0)
=
2
6
h2
h3
= g(0) g 00 (0) 3g 000 (0)
+ ...
4
24
69
Captulo 5. Integrac
ao Numerica
CNC
g(0) g 00 (0)
h2
h3
3g 000 (0)
+ ...
4
24
h
h3
h2
3g 000 (0)
+ ...
= g(0) g 00 (0)
2
16
192
1
1
h
h
2
4g1
g1 (h) = 2
2 g1
g1 (h)
3
2
2 1
2
h3
+ ...
g(0) + g 000 (0)
48
(5.10)
(5.11)
5.4.2 Integrac
ao de Romberg
Chamemos I1 (h) e I1 (h/2) os resultados obtidos pela regra dos trapezios tomando 2h e h, respectivamente,
em (x0 , x2 ), como ilustra a Figura 5.2.
h
x1
x0
x2
Aplicando a f
ormula dos trapezios simples e repitida temos:
I1 (h) =
2h
[f (x0 ) + f (x2 )]
2
I1
h
h
= [f (x0 ) + 2f (x1 ) + f (x2 )] .
2
2
Usando a f
ormula de extrapolac
ao (5.10), temos:
I2 (h)
=
=
=
1
h
4I1
I1 (h)
3
2
1 4h
[f (x0 ) + 2f (x1 ) + f (x2 )] h [f (x0 ) + f (x2 )]
3 2
h
[f (x0 ) + 4f (x1 ) + f (x2 )]
3
L. A. P. Cant
ao
70
Captulo 5. Integrac
ao Numerica
CNC
aproximac
ao melhor do que a f
ormula do Trapezio. Se quisermos uma aproximac
ao melhor, podemos usar a f
ormula
geral (5.11).
Exemplo 34. Calcule a integral abaixo usando a Extrapolac
ao de Richardson com n = 4.
Z
ex dx
5.5.1 F
ormula para dois pontos
A integrac
ao de uma func
ao f (x) pela regra do Trapezio e baseada em um polin
omio de grau 1 que passa pelos
pontos a e b, do intervalo de integrac
ao [a, b]. Porem, pode-se escolher dois pontos c e d, de maneira que a
area
do trapezio seja a mais pr
oxima da
area sob a curva, sendo c [a, b] e d [a, b].
Com este objetivo e feita, inicialmente, uma mudanca de vari
avel de x para t, definida num intervalo [1, 1],
por intermedio da express
ao
a+b
ba
t+
2
x
x = x(t) =
(5.12)
de modo que
dx =
Definindo
F (t) =
ent
ao
Z
f (x)dx =
1
ba
dt
2
ba
f (x(t))
2
ba
2
F (t)
dt
ba
2
(5.13)
b
f (x)dx =
a
F (t) dt.
1
Considere o ponto c, com coordenadas c[t1 , F (t1 )] e o ponto d com coordenadas d[t2 , F (t2 )]; ent
ao deseja-se
que,
Z
f (x)dx =
(5.14)
express
ao que e an
aloga `
a regra do trapezio
b
f (x)dx
a
h
[f (a) + f (b)] .
2
k = 0, 1, 2, 3,
F (t) = 1
1dt = 1 (1) = 2 = A1 1 + A2 1
1
L. A. P. Cant
ao
71
Captulo 5. Integrac
ao Numerica
CNC
para k = 1:
Z
F (t) = t
tdt =
1
1 1
t 2 1
= = 0 = A1 t1 + A2 t2
2 1
2 2
para k = 2:
1
1
1
t 3 1
2
F (t) = t
t dt = =
= = A1 t12 + A2 t22
3
3
3
3
1
1
2
para k = 3:
F (t) = t 3
t 3 dt =
1 1
t 4 1
= = 0 = A1 t13 + A2 t23
4 1
4 4
As express
oes acima constituem um sistema de equac
oes n
ao lineares de ordem 4:
A1
A1 t1
A2
A 2 t2
A1 t12
A1 t13
+ A2 t22
+ A2 t23
0
2
3
0
cuja soluc
ao e
1
1
t1 = 0.5774, t2 = 0.5774, A1 = 1 e A2 = 1.
3
3
Z 5
Exemplo 35. Calcular
(2x 3 + 3x 2 + 6x + 1)dx usando a Quadratura de Gauss (f
ormula (5.14)).
1
Soluc
ao: Inicialmente, realizamos uma mudanca de vari
avel, de x para t, atraves da equac
ao (5.12):
xi =
a+b
51
1+5
ba
ti +
=
ti +
xi = 2ti + 3
2
2
2
2
ba
51
f (xi ) =
f (xi ) F (ti ) = 2f (2ti + 3),
2
2
ou seja,
F (ti ) = 2 2(2ti + 3)3 + 3(2ti + 3)2 + 6(2ti + 1) + 1
Os c
alculos podem ser sistematizados em uma tabela composta por 4 (quatro) colunas, como mostra a Tabela
(5.1).
i
ti
F (ti )
Ai
13
69.7083
1
3
442.2917
L. A. P. Cant
ao
72
Captulo 5. Integrac
ao Numerica
CNC
Por (5.12),
xi =
ba
a+b
0
0+
ti +
=
ti +
xi = (ti + 1)
2
2
2
2
2
Usando (5.13),
F (ti ) =
ba
0
f (xi ) =
f (xi ) F (ti ) = f
(ti + 1)
2
2
2
2
ti
F (ti )
Ai
13
7.1605
1
3
22.8236
Portanto, o erro cometido pela Quadratura Gaussiana com 2 pontos foi de |30.4239 29.9841| = 0.4398, que
e mais exato que o obtido pela regra do trapezio repetido com 6 subintervalos, equivalente a 7 pontos.
5.6 Exerccios
1. Use a regra do Trapezio (Tr) (n = 1) e a regra de Simpson (Sp) (n = 2) para aproximar as seguintes
integrais:
Z
x 4 dx;
(a)
0.5
4
0
(Resposta:
(Tr)
0.2678571,
(Sp)
0.2670635)
Z 1.5
(c)
x 2 ln x dx;
1
(Resposta:
1.6
2x
dx;
4
1
(Resposta:
(Tr)
0.7391053)
Z 0.35
2
(f)
dx;
24
x
0
(Resposta:
(Tr)
(e)
(Tr)
0.17776434,
(Sp)
0.1922453)
Z 1
(d)
x 2 ex dx;
x2
0.8666667,
(Sp)
0.1777643,
(Sp)
0.1768216)
Z /4
(g)
x sen x dx;
0
2. Utilize a regra Trapezoidal Composta (Tc) e Simpson Composta (Sc) com os valores indicados de n para
aproximar as seguintes integrais:
Z
(a)
Z
x ln x dx, n = 4;
(b)
x 3 ex dx, n = 4;
Captulo 5. Integrac
ao Numerica
CNC
1
dx, n = 8;
2+4
x
0
(Resposta: (Tc) 0.476977)
Z 5
x
(g)
dx, n = 8;
24
x
3
(Resposta: (Tc) 0.605498)
Z 3/8
(h)
tan x dx, n = 8;
2
dx, n = 6;
(c)
2+4
x
0
(Resposta: (Tc) 0.784241)
Z
(d)
x 2 cos x dx, n = 6;
(f)
3. Suponha que f (0) = 1, f (0.5) = 2.5, f (1) = 2 e f (0.25) = f (0.75) = . Determine se a regra Trapezoidal
R1
Composta com n = 4 d
a 1.75 para 0 f (x) dx.
4. Utilize a integrac
ao de Romberg para calcular as seguintes integrais, com n = 3:
Z
1.5
(a)
1
Z
(b)
1.6
(f)
1
0.35
(c)
0
0
1
/4
(e)
2
dx; (Resposta: 0.1768200)
2
x 4
3.5
(g)
3
/4
(d)
2x
dx; (Resposta: 0.7341567)
x2 4
/4
(h)
x
x2
xi
f (xi )
1.0
1.0
1.25
0.8
1.5
0.6666
1.75
0.5714
2.0
0.5
6. Use a regra de Simpson com n = 8 para aproximar o valor medio de f no intervalo dado.
(a) f (x) =
1
, [0, 4]. (Resposta: 0.28)
4
x +1
(b) f (x) =
cos x, [1, 1]
9
75.3
10
77.0
11
83.1
12
84.8
1
86.5
2
86.4
3
81.1
4
78.6
5
75.1
74
Captulo 5. Integrac
ao Numerica
CNC
(a)
2
1
dx (Resposta: 0.49)
4
x +x
2
ex dx (Resposta: 0.14)
(b)
10
|x|
dx
3+1
x
(d)
ex sen x dx
Z
(c)
Z
10. Obtenha uma aproximac
ao de
0
cos x
dx fazendo a substituic
ao u = x e aplicando a regra do trapezio
x
ex dx
ex cos x dx,
(z 3 + z 2 + z + 1) dz
(a)
(b)
(x 2 1) dx
L. A. P. Cant
ao
75
CAPITULO
Aproximac
oes para Equac
oes Diferenciais
Ordin
arias
Introduc
ao
uma relac
O que
e uma Equac
ao Diferencial Ordin
aria (EDO) ? E
ao que envolve uma func
ao inc
ognita e
suas derivadas ou diferenciais. Por exemplo:
1. y 0 (x) = f (x), onde y 0 (x) denota
dy
;
dx
2. y 00 (x) + y (x) = 0;
3. y (3) (x) + (sen x)y 00 (x) + 5xy (x) = 0.
S
ao equac
oes cujas inc
ognitas s
ao func
oes de uma vari
avel e suas derivadas (caso unidimensional).
a ordem da mais alta derivada da func
Qual
e a ordem de uma EDO ? E
ao inc
ognita.
uma func
Qual
e a soluc
ao de uma EDO ? E
ao definida num intervalo que, juntamente com suas derivadas,
satisfaz a equac
ao diferencial dada.
Tipos de problemas com EDO Para definir uma
unica func
ao y (x), temos de fornecer dados adicionais `
a equac
ao
diferencial; estes dados definem dois tipois de problemas:
1. Problema de valor inicial (PVI): procuramos y (x) que, alem de satisfazer a equac
ao diferencial para
x > a, atende `
as condic
oes preestabelecidas no incio do intervalo onde vamos resolve-la:
y (a) = y0
e, `
as vezes,
y 0 (a) = v0 ,
onde y0 e v0 s
ao valores conhecidos.
2. Problema de valor de contorno (PVC): a equac
ao diferencial dever
a ser satisfeita no intervalo (a, b) e
s
ao preestabelecidos valores para y (x) nos extremos deste intervalo:
y (a) = y0
com y0 e yn conhecidos.
y (b) = yn ,
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
(6.1)
i = 1, 2, . . .
As aproximac
oes de y (x) ser
ao calculadas nos pontos desta malha.
No metodo de Diferencas Finitas, o segundo passo consiste na discretizac
ao das derivadas que est
ao na equac
ao
diferencial. Neste passo, as derivadas s
ao aproximadas por diferencas entre valores da soluc
ao discretizada.
A ferramenta matem
atica b
asica de aproximac
ao para as derivadas e a serie de Taylor, pois esta nos d
a
informac
oes sobre a func
ao, no ponto x, e sua avaliac
ao numa vizinhanca de x, em x + h. Se assumirmos que y (x)
tem derivadas ate a ordem n + 1 em x, sua expans
ao em serie de Taylor e:
y (x + h) = y (x) + hy 0 (x) +
hn
hn+1 (n+1)
h2 00
y (x) + . . . + y (n) (x) +
y
(),
2!
n!
(n + 1)!
(6.2)
onde est
a entre x e x + h.
Se tomarmos n = 1 em (6.2), teremos:
y (x + h) = y (x) + hy 0 (x) +
L. A. P. Cant
ao
h2 00
y ().
2!
77
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
y (x + h) y (x) h 00
y ().
h
2
(6.3)
h2 00
y ().
2!
y (x) y (x h) h 00
+ y ().
h
2
(6.4)
y (x) + hy 0 (x) +
h2 00
h3
y (x) + y 000 ()
2
3!
y (x h)
y (x) hy 0 (x) +
h2 00
h3
y (x) y 000 ()
2
3!
Subtraindo a pen
ultima express
ao da
ultima, temos:
y (x h) y (x + h) = 2hy 0 (x) 2
h3 000
y ().
3!
Rearranjando a express
ao acima, obtemos a f
ormula centrada para discretizac
ao da derivada e o seu erro:
y 0 (x) =
y (x + h) y (x h) h2 000
y ()
2h
3!
(6.5)
h2 00
h3
h4
y (x) + y 000 (x) + y (iv ) ()
2
3!
4!
y (x h) = y (x) hy 0 (x) +
h3
h4
h2 00
y (x) y 000 (x) + y (iv ) ()
2
3!
4!
y (x + h) 2y (x) + y (x h) h4 (iv )
y ()
h2
12
(6.6)
aproximac
ao de y (xi ) (ou seja, yi = y (xi )), usamos:
yi+1 yi
y 0 (xi )
,
=
h
L. A. P. Cant
ao
yi yi1
yi+1 yi1
y 0 (xi )
, ou y 0 (xi )
=
=
h
2h
78
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
e
y 00 (x) =
CNC
como discretizac
ao das derivadas de primeira e segunda ordens que aparecem na equac
ao diferencial.
O metodo das Diferencas Finitas pode ser generalizado em um algoritmo para EDO de segunda ordem.
Sejam p(x), q(x) e r (x) func
oes contnuas definidas em [a, b]. O problema de encontrar y (x) tal que:
y 00 + p(x)y 0 + q(x)y = r (x),
a < x < b,
y (b) = yn ,
a x b,
h max |p(x)| < 2
[a,b]
tornam o sistema diagonalmente dominante, com todas as desigualdades estritas, o que garante a existencia de
uma
unica soluc
ao do sistema linear.
Dividindo o intervalo [a, b] em n partes iguais de comprimento h, introduzimos a malha a = x0 < x1 < . . . <
xn = b. Se em cada ponto interior xi usamos as aproximac
oes :
yi+1 yi1
y 0 (xi )
=
2h
obtendo a discretizac
ao da EDO:
yi+1 yi1
yi+1 2yi + yi1
+ p(xi )
+ q(xi )yi = r (xi ), i = 1 : n 1
h2
2h
ou ainda, denotando pi = p(xi ), qi = q(xi ) e ri = r (xi ),
h
1 pi
2
h
yi1 + 2 + h qi yi + 1 + pi yi+1 = h2 ri ,
2
2
x (0, 1)
com condic
oes de contorno:
y (0) = 0,
y (1) = e
usando h = 0.1 e a f
ormula centrada para aproximar y 0 (xi ).
L. A. P. Cant
ao
79
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
h = (b a)/n
2:
Para j = 1 at
e j = n 1 faca
x = a + jh
3:
h
p(x)
2
d(j) = 2 + h2 q(x)
h
ds(j) = 1 + p(x)
2
ti (j) = h2 r (x)
di (j) = 1
4:
5:
6:
7:
8:
Fim do laco
9:
10:
ti (n 1) = ti (n 1) yn (1 + (h/2)p(b h))
11:
Resolver o sistema.
Algoritmo 12: Metodo de Diferencas Finitas de Sturm-Liouville
6.2 M
etodos de Runge-Kutta
Tomemos a EDO de primeira ordem, com dado inicial:
y 0 (x)
f (x, y )
y (x0 )
y0 .
(6.7)
(6.8)
Esta equac
ao permite que calculemos yi+1 a partir de yi , e define o Metodo de Euler. Sua aplicac
ao e muito
simples:
y0
yi+1
= y (x0 )
= yi + hf (xi , yi ),
para i = 0, 1, . . .
(6.9)
h = (b a)/n
2:
Para i = 0 at
e i = n 1 faca
3:
xi = a + i h
4:
yi+1 = yi + hf (xi , yi )
5:
Fim do laco
Algoritmo 13: Metodo de Euler
A ideia de Euler (6.9) tem vers
oes de maior precis
ao nos trabalhos de Runge (1895), para o caso de uma
L. A. P. Cant
ao
80
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
equac
ao, e Kutta (1901), para o caso de sistemas de EDO de primeira ordem.
Definic
ao 7. [4] (Passo Simples) Um metodo e de passo simples quando a aproximac
ao yi+1 for calculada a partir
do valor yi do passo anterior. Sendo a func
ao incremento, um metodo de passo simples e definido na forma:
yi+1 = yi + h(xi , yi ; h).
Definic
ao 8. [4] (Ordem) Um metodo de passo simples tem ordem q se a func
ao incremento for tal que
yi+1 = yi + h(xi , yi ; h) + O(hq+1 )
onde O() e a ordem convergencia.
Definic
ao 9. O Metodo de Runge-Kutta de ordem R e definida por:
yi+1 yi = h (xi , yi ; h)
onde
(x, y ; h)
R1
X
cr kr
r =0
m0
mr
ar
= f (x, y )
= f
=
r
X
x + ar h, y + h
r
X
(6.10)
!
br s ks
r = 1, 2, . . . , R 1
s=1
r = 1, 2, . . . R 1
br s
s=1
Para obter o metodo de Runge-Kutta para uma ordem especfica, devemos determinar as constantes cr , ar e
br s da Definic
ao 9. Determinamos essas constantes comparando a express
ao da func
ao (x, y ; h), definida pelo
sistema (6.10), em potencias de h, com a func
ao:
T (x, y ; h) = f (x, y ) +
hq1 (q1)
h 0
f (x, y ) + . . . +
f
(x, y )
2!
q!
(6.11)
6.2.1 M
etodo de Runge-Kutta de ordem 2
Considere a Definic
ao 9, com R = 2:
(x, y ; h)
c0 m0 + c1 m1
m0
f (x, y )
m1
f (x + a1 h, y + hb11 m0 )
a1
b11
L. A. P. Cant
ao
81
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
(a1 h)2
fxx (x, y )
2!
(a1 h)2
c0 f (x, y ) + c1 f (x, y ) + (a1 h)fx (x, y ) + (a1 hf (x, y ))fy (x, y ) +
fxx (x, y )
2!
(a1 hf (x, y ))2
fy y (x, y ) + O(h3 )
+(a1 h)2 f (x, y )fxy (x, y ) +
2!
(a1 h2 )2
= (c0 + c1 )f (x, y ) + c1 a1 h(fx (x, y ) + fy (x, y )f (x, y ) +
c1
2!
fxx (x, y ) + 2f (x, y )fxy (x, y ) + fy y (x, y )f 2 (x, y ) + O(h3 )
obtemos:
(x, y ; h) = (c0 + c1 )f (x, y ) + c1 a1 hF +
(a1 h)2
c1 G + O(h3 )
2!
(6.12)
h 0
f (x, y ) +
2!
h
h2
= f + (fx + fy f ) +
2!
3!
h
h2
= f + (fx + fy f ) +
2!
3!
=
f (x, y ) +
h2 00
f (x, y ) + O(h3 )
3!
fxx + 2fxy f + fy y f 2 + fx fy + fy2 f + O(h3 )
fxx + 2fxy f + fy y f 2 + fy (fx + fy f ) + O(h3 )
Usando F e G, obtemos
T (x, y ; h) = f +
h
h2
F+
[G + fy F ] + O(h3 )
2
3!
(6.13)
c0 + c1
c1 a1
1
1
2
Resolvendo o sistema, teremos o Metodo de Runge-Kutta de ordem 2, porem o sistema possui 2 (duas) equac
oes
1
1
e 3 (tres) inc
ognitas, possuindo infinitas soluco
es. Tomando c0 = , obtemos c1 = e a1 = 1. Portanto:
2
2
yi+1
L. A. P. Cant
ao
= yi +
h
(m0 + m1 )
2
m0
= f (xi , yi )
m1
= f (xi + h, yi + hm0 )
82
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
que e conhecido como Metodo de Euler Melhorado. O Algoritmo 14, ilustra o metodo abordado.
Dado a, b, n, y0 e f (x, y )
1:
h = (b a)/n
2:
Para k = 0 at
e k = n 1 faca
3:
xk = a + kh
4:
m0 = hf (xk , yk )
m1 = hf (xk + h, yk + m0 )
1
6:
yk+1 = yk + (m0 + m1 )
2
7: Fim do la
co
5:
6.2.2 M
etodo de Runge-Kutta de ordem 3
Neste caso, temos:
yi+1 = yi + h(c0 m0 + c1 m1 + c2 m2 )
onde m0 e m1 possuem as mesmas condic
oes do metodo de ordem 2 e
m2
c0 + c1 + c2
a1 c1 + a2 c2
c2 b22 a1
c1 a2 + c2 a2
1
2
1
1
2
1
6
1
3
c0 =
b11 =
a1 =
1
2
a2 = 1
1
2
b21 = 1
b22 = 2
L. A. P. Cant
ao
83
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
ritmo 15.
yi+1
m0
m1
m2
= yi +
CNC
1
(m0 + 4m1 + m2 )
6
= f (xi , yi )
m0
h
h
= f xi + , yi +
2
2
= f (xi + h, yi m0 h + 2m1 h)
Dado a, b, n, y0 e f (x, y )
1:
h = (b a)/n
2:
Para k = 0 at
e k = n 1 faca
3:
xk = a + kh
4:
m0 = hf (x
k , yk )
h
m0
, yk +
2
2
6:
m2 = hf (xk+1 , yk m0 + 2m1 )
1
7:
yk+1 = yk + (m0 + 4m1 + m2 )
6
8: Fim do la
co
5:
m1 = hf
xk +
6.2.3 M
etodo de Runge-Kutta de ordem 4
Neste caso, a comparac
ao de com T , para se obter metodos de Runge-Kutta de ordem 4, fornece um sistema
de 11 (onze) equac
oes e 13 (treze) inc
ognitas. Cada soluc
ao deste sistema define um metodo de Runge-Kutta
com ordem 4. Um dos mais utilizados e dado pelo Algoritmo 16.
Dado a, b, n, y0 e f (x, y )
1:
h = (b a)/n
2:
Para k = 0 at
e k = n 1 faca
3:
xk = a + kh
4:
m0 = hf (x
k , yk )
5:
6:
7:
8:
9:
m0
h
xk + , yk +
2
2
h
m1
m2 = hf xk + , yk +
2
2
m3 = hf (xk+1 , yk + m2 )
1
yk+1 = yk + (m0 + 2m1 + 2m2 + m3 )
6
Fim do laco
m1 = hf
L. A. P. Cant
ao
y 0 (x)
y (0)
1
2y 2
1 + x2
0
84
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
CNC
Resolva-a usando os metodos de Euler, Runge-Kutta de segunda, terceira e quarta ordens para x (0, 1) e h = 0.1.
Compare os resultados obtidos com a sua soluc
ao analtica (calcule o erro relativo):
y=
x
.
1 + x2
6.3 Exerccios
1. Aplique o metodo de Euler, Runge-Kutta de segunda, terceira e quarta ordens para aproximar as soluc
oes
dos seguintes PVI e compare os resultados com os valores reais:
(a) y 0 = y /t (y /t)2 , 1 t 2, y (1) = 1, com h = 0.1 e x [1, 2]; soluc
ao real: y (t) = t/(1 + ln t).
(b) y 0 = 1 + y /t + (y /t)2 , 1 t 3, y (1) = 0 com h = 0.2 e x [1, 2]; soluc
ao real: y (t) = t tan(ln t).
(c) y 0 = sen(x)y , x [0, ], y (0) = 1, m = 6; soluc
ao real: y (x) = ecos(x)1 .
1.5
(d) y 0 =
x + 1 y , x [1, 3], y (1) = 1, m = 5; soluc
ao real: y (x) = e 2x /3+x5/3
Atenc
ao: m e o n
umero de subintervalos.
2. Dado o PVI
y0 =
2
y + t 2 et ,
t
1t2
y (1) = 0,
com as soluc
oes exatas y (t) = t 2 (et e). Use o metodo de Euler com h = 0.1 para aproximar a soluc
ao e
compare-a com os valores reais de y .
3. Resolver os problemas de valor inicial abaixo, utilizando os metodos de Euler, Runge-Kutta de segunda,
terceira e quarta ordens com o n
umero de subintervalos n indicado:
(a) y 0 =
soluc
ao real: y (x) = cos x + ( 2 1) sen x.
(b) y 00 + 4y = cos x, 0 x (/4), y (0) = 0, y (/4) = 0; use h = (/20);
1
2
1
soluc
ao real: y (x) = cos 2x
sen 2x + cos x.
3
6
3
4
2
2
ln
x
(c) y 00 = y 0 2 y + 2 , 1 x 2, y (1) = 12 , y (2) = ln 2; use h = 0.05;
x
x
x
4
2
3
soluc
ao real y (x) = 2 + ln x .
x
x
2
(d) y 00 = 2y 0 y + x ex x, 0 x 2, y (0) = 0, y (2) = 4; use h = 0.2;
1
5
soluc
ao real: y (x) = x 3 ex x ex +2 ex x 2.
6
3
5. Use o Metodo das Diferencas Finitas para aproximar as soluc
oes dos seguintes PVC:
4
2
2
1
(a) y 00 = y 0 + 2 y 2 ln x, 1 x 2, y (1) = , y (2) = ln 2; use h = 0.05;
x
x
x
2
0
y
3
ln
x
(b) y 00 =
+ 2y +
1, 1 x 2, y (1) = y (2) = 0; use h = 0.1
x
x
x
L. A. P. Cant
ao
85
Exerccios
Captulo 6. Aproximac
oes para Equac
oes Diferenciais Ordin
arias
3 /3
analtica e as soluc
oes numericas encontradas nos itens anteriores. Compare seus resultados.
7. Dado o PVI y 0 =
x
, y (0) = 20, deseja-se encontrar aproximac
oes para y (16). Resolva por:
y
00
0
y + 2y + y
y (0)
y (1)
= x
=
0 x 1,
y (0) = 0,
y (1) = 2
tem a soluc
ao y (x) = e2 (e4 1)1 (e2x e2x ) + x. Use o Metodo das Diferencas Finitas para aproximar a
soluc
ao e compare os resultados com a soluc
ao real.
(a) Com h = 21 .
(b) Com h = 14 .
11. O PVC:
y 00 = y 0 + 2y + cos x,
,
2
0x
y (0) = 0.3,
2
= 0.1
1
tem a soluc
ao y (x) = 10
(sen x + 3 cos x). Use o Metodo das Diferencas Finitas para aproximar a soluc
ao
4.
(b) Com h =
8.
0 x 1,
86
y (0) = 1,
y (1) = e10 .
Refer
encias Bibliogr
aficas
[1] R. L. Burden, J. D. Faires. An
alise Num
erica. Pioneira Thomson Learning, 2003.
[2] F. F. Campos Fo. Algoritmos Num
ericos. LTC Editora, 2001.
[3] M. C. C. Cunha. M
etodos Num
ericos. 2a Edic
ao, Editora da Unicamp, 2000.
[4] N. B. Franco. C
alculo Num
erico. Pearson Prentice Hall, 2006.
[5] N. J. Higham. Accuracy and Stability of Numerical Algorithms, SIAM Society for Industrial and Applied Mathematics,
1996.
[6] M. A. G. Ruggiero, V. L. R. Lopes C
alculo Num
erico: Aspectos Te
oricos e Computacionais. 2a Edic
ao, Makron Books,
1996.
[7] D. Sperandio, J. T. Mendes, L. H. M. e Silva. C
alculo Num
erico: Caractersticas Matem
aticas e Computacionais dos
M
etodos Num
ericos. Prentice Hall, 2003.
[8] J. Stewart. C
alculo. Volume I. 5a Edic
ao, Pioneira Thomson Learning, 2006.
[9] E. W. Sowokowski. C
alculo com Geometria Analtica. Volume 1. 2a Edic
ao, Makron Books, 1994.
[10] www.nrbook.com/b/bookcpdf.php
[11] www.mathworks.com/moler/chapters.html
87