Beruflich Dokumente
Kultur Dokumente
ndice de contedos
Captulo 2. Mtodos Numricos............................................................53
1.Introduo.........................................................................................53
1.1.Mtodos analticos versus mtodos numricos.....................................................53
1.2.Necessidade para mtodos numricos..............................................................54
-i-
ndice de contedos
2.12.Mtodo de Newton-Raphson.........................................................................70
2.12.1.Frmula geral....................................................................................70
2.12.2.Newton-Raphson como caso particular do mtodo do Ponto Fixo.......................71
2.12.3.O mtodo de Newton-Raphson a partir da srie de Taylor...............................72
2.12.4.Ordem de convergncia do mtodo de Newton-Raphson.................................72
2.12.5.Um majorante do erro absoluto..............................................................73
2.12.6.Uma estimativa do erro absoluto.............................................................73
2.12.7.Critrios de convergncia do mtodo de Newton-Raphson...............................74
2.12.8.Algoritmo para o mtodo de Newton-Raphson.............................................74
2.12.9.Vantagens e desvantagens do mtodo de Newton-Raphson..............................75
2.12.10.Alguns casos patolgicos do mtodo de Newton-Raphson..............................75
2.13.Mtodo da Secante....................................................................................75
2.13.1.Forma geral......................................................................................75
2.13.2.Exemplo...........................................................................................76
2.13.3.Convergncia.....................................................................................77
2.13.4.Algoritmo do mtodo da Secante.............................................................77
3.Equaes lineares................................................................................78
3.1.O problema da resoluo de um sistema linear...................................................78
3.2.Mtodos diretos.........................................................................................79
3.3.Mtodos iterativos......................................................................................79
3.4.Mtodo de Jacobi.......................................................................................80
3.4.1.Frmula geral......................................................................................80
3.4.2.Algoritmo para o mtodo de Jacobi...........................................................81
3.5.Mtodo de Gauss Seidel................................................................................82
3.5.1.Frmula geral......................................................................................82
3.5.2.Algoritmo para o mtodo de Gauss Seidel....................................................82
3.6.Exemplo..................................................................................................83
3.7.Eficincia.................................................................................................84
- ii -
ndice de contedos
4.Interpolao polinomial.........................................................................84
4.1.Polinmio interpolador.................................................................................85
4.1.1.Definio...........................................................................................85
4.1.2.Polinmios..........................................................................................87
4.1.3.Clculo de valores de um polinmio...........................................................87
4.2.Interpolao polinomial de Lagrange................................................................89
4.2.1.Frmula de Lagrange.............................................................................90
4.2.2.Frmula de Newton...............................................................................91
4.2.3.Erros de Interpolao Polinomial...............................................................95
5.Aproximao polinomial.........................................................................96
5.1.Conceitos e resultados bsicos.......................................................................97
5.1.1. Mtricas, normas e seminormas...............................................................97
5.1.2.Melhor aproximao polinomial................................................................99
5.2.Aproximao dos mnimos quadrados..............................................................100
5.2.1.Funes aproximantes e desvios..............................................................100
5.2.2. Mtodo dos Mnimos Quadrados..............................................................101
5.2.3.Reta dos Mnimos Quadrados (Reta de Regresso).........................................102
5.2.4.Parbola dos Mnimos Quadrados.............................................................104
- iii -
1. Introduo
Os mtodos numricos so mtodos usados para a obteno de solues numricas para
problemas quando, por uma qualquer razo, no se pode ou no se deseja usar mtodos analticos.
Os mtodos numricos conduzem a solues aproximadas de um modelo ou sistema real.
b b24ac
2a
5 13
2
5x n3 ,
pode tambm ser aplicada para aproximar uma das duas solues da equao quadrtica dada. Este
mtodo pode somente dar uma soluo numrica aproximada.
Em geral a diferena entre solues analticas e solues numricas pode ser resumida na
seguinte frase: solues analticas so exatas enquanto solues numricas so aproximadas.
- 53 -
- 54 -
f (x)
= c <
x k
sin(x )
= 1
x
1 cos(x )
1
=
2
2
x
Nota: a multiplicidade de um zero pode no ser um nmero inteiro, nem sequer finita.
Teorema:
Se a for um zero da funo f(x) e se f(x) for m vezes diferencivel em a ento a multiplicidade
de a m se e s se,
f () = f ' () = ... = f (m1) () = 0,
mas f m() 0 .
Exemplo 1:
para f(x) = sin(x), f(0) = 0 mas f'(0) 0, portanto m = 1.
Exemplo 2:
para f(x) = 1 - cos(x), f(0) = f'(0) = 0 mas f''(0) 0, portanto m = 2.
k = 1, 2, ,
inteiros positivos no conjunto dos reais. O nmero real associado a k designado por xk. Uma
sequncia diz-se definida por iterao se a funo F (na expresso em baixo) independente de k.
A sequncia resultante
x k = F(x k1 , ...)
chama-se sequncia iterativa gerada por F.
Este processo iterativo gera uma sucesso de aproximaes xk, cada uma com erro associado,
ek = a - x k
sendo a um ponto fixo da equao, isto , a = F(a).
- 56 -
ou seja,
lim ek = 0.
Um mtodo iterativo definido por uma equao iterativa, com a qual se constri aproximaes
soluo do problema. A implementao da equao iterativa obriga ao conhecimento de uma
aproximao inicial e definio de um conjunto de condies que garantam que a aproximao
calculada, numa certa iterao, se encontra suficientemente prxima da soluo. Quando estas
condies forem verificadas, pode-se parar o processo. Desta forma, antes de se iniciar o processo
iterativo, deve-se ter resposta para as seguintes questes:
1. Interessa saber se o mtodo iterativo converge ou no para a soluo procurada. Desta forma,
devem ser analisadas as condies necessrias e/ou suficientes de convergncia do mtodo.
2. Tendo a garantia da convergncia do mtodo, deve-se saber qual a razo de convergncia:
seja {xk} uma sucesso convergente para a; se existirem constantes positivas P e C tais que,
xk+1
P
k x
k
lim
= C
ento diz-se que a sucesso {x k} convergente para a de ordem P com uma constante de
convergncia assimpttica igual a C:
a) P = 1, convergncia linear/1 ordem (C < 1); dgitos ganhos por iterao: constante.
b) P > 1, convergncia superlinear; dgitos ganhos por iterao: aumenta.
c) P = 2, convergncia quadrtica/2 ordem; dgitos ganhos por iterao: duplica.
Quanto maior for a ordem de convergncia de um mtodo iterativo menor ser, em princpio,
o nmero de iteraes necessrias para atingir uma dada preciso.
No entanto a rapidez depende tambm do esforo computacional requerido em cada iterao.
3. A implementao de um mtodo iterativo exige a realizao de um nmero infinito de
operaes para se chegar soluo. No entanto, face aos recursos limitados disponveis, o
processo iterativo tem de ser terminado aps um nmero finito de operaes. Esta paragem
tem de ser feita com a ajuda de condies que, sendo verificadas, do melhor garantia de
que se est perto da soluo. O valor obtido na ltima iterao a melhor aproximao
calculada. Estas condies definem o que designado por critrio de paragem de um processo
iterativo.
Os mtodos para resolver o problema f(x) = 0 podem ser classificados em dois grandes grupos: os
mtodos de encaixe e os mtodos de intervalo aberto.
- 57 -
x k
f (xk )
m
Demonstrao:
Pelo teorema do Valor Mdio,
f () f (x k )
x k
f '(), ( , x k )
aplicando mdulo,
x k
f (xk )
f ' ()
(f(a) = 0)
e portanto,
x k
f (xk )
m
(fazendo m = |f'()|.
Nota:
Neste texto, apenas sero abordados os mtodos iterativos ou de aproximaes sucessivas.
- 58 -
existe um ponto de interseo de |x| com ex no intervalo (-1, 0). Depois, confirmamos essa
observao, com base em dois resultados:
1. Se f(x) uma funo real e contnua em [a, b], sendo a e b nmeros reais, tendo f(a) e f(b)
sinais contrrios (f(a).f(b) < 0), ento existe pelo menos uma raiz real entre a e b.
2. Se f'(x) existe, contnua e mantm o sinal no intervalo (a, b), ento a raiz nica.
Para o exemplo: f(x) C((-1, 0))
f(-1) = 0.632 > 0 e f(0) = -1 < 0
f'(x) = -1 ex < 0 em todo o intervalo (-1, 0)
Chamam-se nmeros de Rolle da equao f(x) = 0, definida em D R, ao conjunto dos pontos
fronteira de D e dos zeros da funo derivada de f. Ordenados por ordem crescente, entre dois
nmeros de Rolle consecutivos existe no mximo uma raiz real da equao.
- 59 -
k = 1,2,...,
f(x) = 0, obtidas usando um mtodo iterativo. Deduz-se uma expresso que d um limite para o erro
na aproximao xk para a.
Pelo teorema do valor mdio, f ( x k ) f () = (x k ) f ' (k ),
f (x k )
sendo k min {x k , }, max {x k , } . Ento, k = x k verifica k =
.
f ' (k )
f (xk ).
M1
ou
f (xk ) 2
ou k = kmax.
O primeiro parmetro, e1, serve para verificar a proximidade de xk em relao a a (um zero da
funo), o segundo, e2, para verificar se f(xk) est prximo de 0 (f(xk) 0), e o terceiro, k, para
controlar o nmero de iteraes (se atingiu o nmero mximo de iteraes predefinido, kmax).
- 60 -
Seja [a, b] D e f(a).f(b) < 0. Ento, (a, b) contm uma raiz real de f(x) = 0. Seja I 0 = [a, b] e x0
o ponto mdio de I0. Se f(a).f(x0) < 0 ento (a, x 0) contm uma raiz. Se f(a).f(x 0) > 0 ento (x0, b)
contm uma raiz. Suponha-se que f(a).f(x 0) < 0. Seja I1 = [a, x0] e seja x1 o ponto mdio de I1. Se
f(a).f(x1) < 0 ento (a, x1) contm uma raiz. Se f(a).f(x1) > 0 ento (x1, x0) contm uma raiz.
2.9.2. Algoritmo para o mtodo da Bisseco
Objetivo: Calcular uma raiz real de f(x) em [a,b] a (a,b)
Parmetros de entrada: a, b, e1, e2 R+, kmax N e f(a).f(b) < 0
fa f(a)
k0
repita
m (a + b) / 2
fm f(m)
se fa.fm < 0 ento { a (a, m) }
bm
seno { a (m, b) }
am
fa fm
kk+1
se (|a b| < e1) ou (|fm| < e2) ou (k > kmax) ento interromper
fimrepita
- 61 -
bk ak
2
c1
b a
2
; c 2
b a
2
; ... ; cn
b a
2n
o que nos permite estimar o nmero n de iteraes necessrias, para garantir uma aproximao da
raiz com um erro absoluto mximo de e:
b a
2n
ou seja,
ln
2n
b a
n
1
b a
1
ln 2
ak
bk
ak
bk
1
2
3
4
5
6
7
8
9
10
-1.000000
-1.000000
-0.750000
-0.625000
-0.625000
-0.593750
-0.578125
-0.570313
-0.570313
-0.568359
0.000000
-0.500000
-0.500000
-0.500000
-0.562500
-0.562500
-0.562500
-0.562500
-0.566406
-0.566406
11
12
13
14
15
16
17
18
19
20
-0.567383
-0.567383
-0.567383
-0.567261
-0.567200
-0.567169
-0.567154
-0.567146
-0.567146
-0.567144
-0.566406
-0.566895
-0.567139
-0.567139
-0.567139
-0.567139
-0.567139
-0.567139
-0.567142
-0.567142
- 62 -
= 0.00000095,
ou seja,
ln
n
b a
1
ln 2
= 19.931569.
- 63 -
y f (bk ) =
bk ak
( x b k )
e fazendo y = 0 obtm-se,
c k = bk
f (bk )
f (b k ) f (ak )
( bk ak )
f (b)
(b a )
f (b) f (a)
fm f(m)
se fa.fm < 0 ento { a (a, m) }
bm
seno { a (m, b) }
am
fa fm
kk+1
se (|a b| < e1) ou |fm| < e2) ou (k > kmax) ento
interromper
fimrepita
{ a (a, b) e |a b| < e1 ou |fm| < e2 ou k > kmax }
Assim, se f(x) = 0 x = g(x), determinar a raiz de f(x) = 0 em [a, b] o mesmo que procurar o
ponto fixo de g(x) em [a, b].
Por exemplo, o clculo de (a) consiste na sucesso de aproximaes:
x k+1 =
1 a
+ xk
2 xk
5.80000000
4.27931034
4.00911529
4.00001036
4.00000000
- 65 -
1 a
+x
2 x
Porque funciona ?
Teorema:
Seja g(x) uma funo contnua e {x k} uma sucesso de aproximaes gerada pelo mtodo do
Ponto Fixo xk+1 = g(xk). Se lim x k = ento a um ponto fixo de g(x).
k
- 66 -
x0 [a, b].
Ento a sucesso { xk } gerada por xk+1 = g(xk), k = 0, 1, 2, ...
converge para o nico ponto fixo a [a, b].
Como converge o mtodo do ponto fixo ?
Convergncia montona quando 0 < g'0(x) < 1:
- 67 -
- 68 -
xn+1
1 L
x n+1 x n
L
Critrio de paragem:
n+1 =
1 L
x n+1 x n 1
L
xn+1
= x 1 x 0
x0 x1
- 69 -
xk
xk+1 = g(xk)
-2.00000
-1.13534
+5.0 x 10-1
-1.13534
-1.32131
+1.1 x 10-1
-1.32131
-1.26678
+3.2 x 10-2
-1.26678
-1.28174
+8.7 x 10-3
-1.28174
-1.27756
+2.4 x 10-3
-1.27756
-1.27872
+6.8 x 10-4
-1.27872
-1.27839
+1.9 x 10-4
-1.27839
-1.27848
+5.2 x 10-5
-1.27848
-1.27846
+1.5 x 10-5
A partir de uma aproximao inicial x0 esta frmula gera uma sucesso { x k } que, em certos
casos, dever convergir para um zero da funo.
Por exemplo, para a funo f(x) = x2 a,
f (x k )
x 2k a
x k+1 = x k
=x k
f '(x k )
2 xk
1 a
+ xk
2 xk
- 70 -
xk
0
1
2
3
4
5
10.00000000
5.80000000
4.27931034
4.00911529
4.00001036
4.00000000
1
f ' ()
1
f ' (x)
- 71 -
( x)
f '( x)
f ( x) = f (x k ) + f ' (x k ) xx k +
f ' '( k )
2
( x xk ) ,
k (x , x k )
Calculando em x = a,
0 = f () = f (x k ) + f ' (x k ) x k +
f ' '( k )
2
( xk ) ,
k ( , x k )
donde,
)(
f (x k )
f ' '( k )
2
= xk
x k
f '(x k )
2f '( x k )
f ' ' (k )
2 f ' (x k )
( xk )2
xk+1
2
k x
k
lim
f ' ' ()
2 f ' ()
- 72 -
1 f ' ' ()
2 f ' ()
f ' ' (k )
2 f ' (x k )
( x k )2 , k , x k
tem-se
ek+1 =
f ' '( k )
2f '( x k
e k 2
ek+1
M2
2m1
ek 2.
= f '(k ), k , x k
x k =
f (x k )
f ' ( k )
f (x k )
f '(x k )
ek xk+1 xk
- 73 -
ek1 xk xk1
De facto, para o exemplo anterior
k
xk
|ek|
|ek-1|
|xk - xk-1|
0
1
2
3
4
5
10.00000000
5.80000000
4.27931034
4.00911529
4.00001036
4.00000000
6.00000000
1.80000000
0.27931034
0.00911529
0.00001036
0.00000000
6.00000000
1.80000000
0.27931034
0.00911529
0.00001036
4.20000000
1.52068966
0.27019506
0.00910492
0.00001036
f (a)
f ' (a)
< b a e
f (b)
< b a
f ' (b)
Ento para qualquer x0 [a, b], a sucesso { xk } gerada pelo mtodo de Newton-Raphson
converge para o nico zero de f em [a, b].
Observaes:
(i) + (ii) garantem a existncia de uma s soluo em [a, b];
(ii) + (iii) garantem que a funo montona, convexa ou cncava;
(iv) garante que as tangentes curva em (a, f(a)) e (b, f(b)) intersetam o eixo dos XX em (a, b).
2.12.8. Algoritmo para o mtodo de Newton-Raphson
Objetivo: Calcular raiz real simples de f(x) = 0
Parmetros de entrada: x0, e1, e2, kmax e garantia de convergncia
k0
f0 f(x0)
repita
d f0 / f'(x0)
x1 x0 d
kk+1
x0 x1
- 74 -
x 0 , o mtodo gera a
sucesso: x0 , - x0 , x0 , - x0 , x0 , - x0 ,
Todo o ponto de inflexo provoca um afastamento da raiz.
...
x k x k1 f (x k )
x k+1 = x k
,
f (x k ) f (x k1)
k=1, 2, ....
Embora sejam necessrios dois pontos para iniciar o processo iterativo, apenas um novo ponto e
o correspondente valor da funo so calculados em cada iterao. O grfico seguinte ilustra este
processo iterativo.
Uma vez que podem ocorrer situaes de overflow, se numa iterao f(x k) f(xk-1), aconselhase a implementao da seguinte frmula:
x k1 x k
x k+1 = x k
1
f (x k )
) f(x
k1
f (x k )
f (x k1 )
em vez da frmula anterior, caso o valor de |f(x k-1)| seja superior a |f(x k)|; seno, trocam-se os
valores de xk por xk-1, bem como os correspondentes valores da funo, antes de utilizar esta
ltima frmula.
2.13.2. Exemplo
Determinar aproximaes para a raiz real da funo x 3 2x 5 = 0, tomando como aproximaes
iniciais os pontos x0 = 3 e x1 = 2. Usando o mtodo da Secante, foi calculada a seguinte
sequncia de iteraes convergindo para a raiz real daquela funo:
x2 = 2.058824,
x3 = 2.096559,
- 76 -
k = 2,3,...
As condies do teorema anterior (relacionado com a convergncia do mtodo de NewtonRaphson) so tambm suficientes para estabelecer convergncia para o mtodo da Secante.
Teorema:
Seja f C2([a,b]). Se (i), (ii), (iii) e (iv) do teorema sobre convergncia do mtodo de NewtonRaphson se verificam, ento para x0, x1 [a,b] a sequncia gerada pelo mtodo da Secante
converge para a nico zero de f em [a,b].
Ordem de convergncia do mtodo da Secante
Teorema:
A ordem de convergncia deste mtodo ((1+(5))/2) = 1.618... (convergncia superlinear).
2.13.4. Algoritmo do mtodo da Secante
Objetivo: Clculo de uma raiz real simples de f(x) = 0,
Parmetros de entrada: x0, x1, e1, kmax e garantia de convergncia
k0
f0 f(x0)
f1 f(x1)
repita
se |f1| > |f2| ento
trocar(x0, x1)
trocar(f0, f1)
d ( (x0 x1) (f1/f0) / (1 f1/f0) )
x2 x1 d
- 77 -
3. Equaes lineares
Neste captulo ser abordado o problema de resoluo de sistemas de equaes lineares, o qual
um dos problemas que na prtica ocorre com maior frequncia. Os mtodos para resolver este
tipo de problemas so classificados em duas classes: mtodos diretos e mtodos iterativos. Neste
documento, apenas sero abordados com mais detalhe os mtodos iterativos.
onde
x1, x2, ..., xn so as incgnitas do sistema,
aij (i, j = 1,2, ..., n) so os coeficientes do sistema,
b1, b2, ..., bn so os segundos membros do sistema.
Problema:
Pretende-se determinar valores para x1, x2, ..., xn de modo que as n equaes do sistema em
cima seja satisfeitas simultaneamente.
O sistema pode tambm escrever-se na sua forma matricial
Ax=b
onde,
] [] []
x1
x =
x2
...
xn
b1
b =
- 78 -
b2
...
bn
(1)
(2)
- 79 -
(3)
M1 (N x + b) M1 (N y + b) = M 1 N (x y) M1 N x y
se a norma de matriz for compatvel com a norma de vetor.
Assim, tem-se o teorema que se segue.
Teorema 1:
Se M1 N < 1 a sequncia definida pela iterao
x k+1 = M 1 ( N x(k) + b ) ,
(k =0,1, ...)
(4)
converge para o ponto fixo de (3) qualquer que seja x(0) Rn.
Teorema 2:
A razo de convergncia do mtodo iterativo definido por (4) igual a 1. A constante de
convergncia menor ou igual a M1 N .
Com algumas escolhas especiais para M e N sero definidos os mtodos que a seguir sero
apresentados (mtodos de Jacobi e de Gauss Seidel).
aij , se i = j
0,
se i j
, lij =
aij , se i > j
0,
se i j
, uij =
aij , se i < j
0,
se i j
(5)
Ento, A = D + (L + U)
A escolha M = D e N = L + U resulta no mtodo de Jacobi.
Do teorema 1 conclui-se que, se
D1 (L + U) <
(6)
(k=0,1, ...)
(7)
(k)
onde
a 'ij =
aij
bi
e b 'i =
aii
aii
x i b ' i a' ij y j
j=1
ji
kk+1
at ((xy < x ) ou (k =kmax))
- 81 -
(8)
(9)
(D + L)1 U <
(10)
Se
1
a sequncia definida pela iterao (9) converge para a soluo de (1) qualquer que seja x (0) Rn.
Se A for estritamente diagonal dominante garantida a convergncia para o mtodo de Gauss
Seidel qualquer que seja x(0) Rn.
As componentes de x(k+1) de (8) so dadas por
(k+1)
xi
i1
(k+1)
= a 'ij x j
j=1
(k)
j=i+1
a' ij x j
+ b 'i ,
(i=0,1,2, ... , n)
(11)
Para interpretar a diferena entre (11) e (8) note-se que no mtodo de Gauss Seidel, no clculo
da componente i da iterao k+1 so usadas as primeiras i-1 componentes j atualizadas.
3.5.2. Algoritmo para o mtodo de Gauss Seidel
Objetivo: Resoluo de Ax = b supondo satisfeitas as condies de convergncia
Parmetros de entrada: x(0), e e kmax
para i de 1 at n fazer
xi xi(0)
k0
repetir
para i de 1 at n fazer
yi xi
para i de 1 at n fazer
i 1
x i b ' i (a' ij x j )
j=1
j=i+1
(a' ij y j )
kk+1
at ((xy < x ) ou (k =kmax))
- 82 -
3.6. Exemplo
Considere-se o seguinte sistema de equaes lineares
7 x1
2 x1
3 x 3
+ x5
= 1
+ 8 x2
= 1
x3
= 1
3 x1
+ 5x 4
x2
= 1
+ 4 x5
2x 4
= 1
+ 6 x6
= 1
A matriz dos coeficientes estritamente diagonal dominante e assim haver convergncia para a
soluo do sistema usando o mtodo de Jacobi ou o de Gauss Seidel.
Tomando x(0) = [1/7 1/8 1 1/5 1/4 1/6]T foram obtidos os seguintes resultados:
Iterao
xi
Mtodo Jacobi
1
2
3
4
5
6
1
2
3
4
5
6
1
2
3
4
5
6
1
2
3
4
5
6
0.607143
0.089286
1.000000
0.285714
0.281250
0.233333
0.611607
-0.026786
1.000000
0.564286
0.272322
0.354762
0.610332
-0.027902
1.000000
0.566964
0.243304
0.354762
0.606186
-0.027582
1.000000
0.563712
0.243104
0.355400
...
0.607143
-0.026786
1.000000
0.564286
0.243304
0.354762
0.606186
-0.026547
1.000000
0.563712
0.243363
0.354571
0.606195
-0.026549
1.000000
0.563717
0.243363
0.354572
0.606195
-0.026549
1.000000
0.563717
0.243363
0.354572
...
1
2
3
4
5
6
0.606195
-0.026549
1.000000
0.563717
0.243363
0.354572
-------------
...
10
- 83 -
3.7. Eficincia
Se a matriz A em Ax = b (1) tiver p elementos no nulos, ento cada iterao dos mtodos de
Jacobi e Gaus Seidel requer p-n adies/subtraes e pn multiplicaes/divises. Donde, k
iteraes requerem k(pn) adies/subtraes (e multiplicaes/divises). Adicionalmente, no
clculo dos (a')s e dos (b')s tem-se p+n divises.
Definindo
a = p/n2
o nmero 100a d a percentagem de elementos no nulos de A, portanto uma medida da disperso
dos elementos de A. Donde k(pn) = kan2 kn kan2 se n for grande.
No sistema associado ao exemplo dado (3.6) verifica-se que n = 6 e p = 12, logo a = 12/36 = 1/3.
4. Interpolao polinomial
Seja f uma funo real definida em [a, b] R, sendo conhecidos os seus valores nos pontos x 0,
x1, , xn [a, b]. Suponha-se que se pretende calcular o valor no tabulado f(y), sendo y [a, b].
Por exemplo, dada a tabela de valores da funo log10 seguinte
x
log10(x)
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
0.32222
0.34242
0.36173
0.38021
0.39794
0.41497
0.43136
0.44716
0.46240
- 84 -
- 85 -
ak x k + ... + a1 x + a0
ak+1 x n + ... + ak+n x + ak+n+1
- 86 -
{ n = 3 multiplicaes }
Algoritmo:
{ Objetivo: clculo do valor de pn(x) = ((...(an x + an-1) x + ... + a2) x + a1) x + a0 }
{ parmetros de entrada: a0, a1, ..., an , z R }
{ parmetros de sada: polinomio = ((...(an z + an-1) z + ... + a2) z + a1) z + a0 }
polinomio an
para k desde (n-1) at 0 fazer
polinomio polinomio * z + ak
- 87 -
=1
c4 = a4 + 3 c5 = -6 + 3
= -3
c 3 = a3 + 3 c 4 = 8 9
= -1
c 2 = a2 + 3 c 3 = 8 3
=5
c1 = a1 + 3 c2 = 4 + 15
= 19
c0 = a0 + 3 c1 = -40 + 57 = 17
Logo, p5(3) = c0 = 17.
Seja
pn(x) = an xn + an-1 xn-1 + ... + a1 x + a0
um polinmio de grau n e z um nmero real. Ento.
pn(x) = (x z) qn-1(x) + r
onde q um polinmio de grau n-1 e r uma constante (r = 0 se e s se z um zero de p).
Seja
qn-1(x) = bn-1 xn-1 + bn-2 xn-2 + ... + b1 x + b0 .
Ento, a expresso pn(x) = (x z) qn-1(x) + r pode ser escrita da seguinte forma:
an xn + an-1 xn-1 + ... + a1 x + a0 = (x - z) (bn-1 xn-1 + bn-2 xn-2 + ... + b1 x + b0) + r
donde, e igualando os coeficientes de potncias de x do mesmo grau, obtm-se
bn-1 = an ,
bk = ak+1 + z bk+1 (k = n-2, n-3, ..., 0),
r = a0 + z b0 .
- 88 -
=1
b3 = 3 b4 + a4 = 3 - 6
= -3
b2 = 3 b3 + a3 = 9 + 8
= -1
b1 = 3 b2 + a2 = 3 + 8
=5
b0 = 3 b1 + a1 = 15 + 4
= 19
r = 3 b0 + a0 = 57 - 40
= 17
L k ( x) =
i=0
i k
x x i
x k x i
, k=0,1, ..., n
pn (x) =
k =0
L k (x ) y k .
Exemplo:
Construir o polinmio interpolador de grau menor ou igual a 3 que interpola os seguintes valores:
xi
yi
-1
(x x 1 ) (x x 2 ) (x x 3 )
1
=
(x 1) ( x 3) ( x 4)
(x 0 x 1 ) ( x 0 x 2 ) (x 0 x 3 )
12
( x x 0 ) (x x 2 ) (x x 3 )
( x 1 x 0 ) (x 1 x 2 ) ( x 1 x 3)
1
x (x 3) (x 4)
6
- 90 -
L 2 (x ) =
L 3 (x ) =
( x x 0 ) (x x 1 ) (x x 3 )
( x 2 x 0 ) (x 2 x 1) (x 2 x 3 )
( x x 0 ) (x x 1 ) (x x 2 )
( x 3 x 0 ) (x 3 x 1 ) (x 3 x 2)
1
x (x 1) (x 4)
6
1
x (x 1) (x 3)
12
p3 ( x) =
k=0
1
1
1
1
= (x 1) (x 3) (x 4) x (x 3) (x 4) x (x 1) (x 4) +
x (x 1) (x 3)
12
6
6
12
Algoritmo (frmula de Lagrange):
{ Objetivo: clculo de pn(z) sendo pn interpolador de f nos pontos distintos x0, x1, ..., xn }
q0
para i desde 0 at n fazer
p1
para j desde 0 at n fazer
se j i ento
p p ((z xj)/(xi xj))
q q + yi p
Observao:
A frmula de Lagrange pode no ser a representao mais conveniente do polinmio
interpolador, fundamentalmente por duas razes:
1. possvel obter este polinmio com menos operaes aritmticas do que as requeridas
por aquela frmula (o clculo de um valor do polinmio interpolador requer n(n+2)
adies/subtraes e n(n+1) multiplicaes/divises);
2. Os polinmios de Lagrange esto associados a um conjunto de ns e uma mudana de
posio, ou do nmero destes, altera completamente estes polinmios.
4.2.2. Frmula de Newton
Definio:
A Forma de Newton para polinmios de grau n dada por,
pn(x) = a0 + a1 (x c1) + a2 (x c1) (x c2) + + an (x c1) (x c2) ... (x cn)
onde os parmetros ci, i = 1, 2, ... , n so chamados centros do polinmio.
- 91 -
a1 =
f (x 1) a0
x 1 x 0
f (x 1 ) f (x 0 )
x 1 x 0
f (x 2 ) f (x 1 )
a2 =
f (x 2 ) a0 a1 ( x 2 x 0 )
(x 2 x 0 )(x 2 x 1 )
x 2 x 1
f (x 1 ) f (x 0 )
x 1 x 0
x 2 x 0
...
an =
= ...
Observao:
Cada coeficiente ak , k = 0, 1, ..., n:
pode ser calculado a partir dos ai , i = 0, 1, ..., k-1, j determinados.
depende exclusivamente dos ns x0, x1, ..., xn e dos respetivos valores nodais y0, y1, ..., yn
ak = f[x0, x1, ..., xk]
em que
f[x0, x1, ..., xk]
a diferena dividida de ordem k (k 1) entre os k+1 ns x0, x1, ..., xk .
Definio:
Para designar a diferena dividida de ordem k (k 1) entre os k+1 ns x0, x1, ..., xk , so
utilizadas indistintamente duas notaes:
Dk f (x i ) f x i , x i+1 , ... , x i+k
]
- 92 -
D f (x i ) =
ou
Teorema:
Os coeficientes ak , k = 0, 1, ..., n do polinmio pn de grau menor ou igual a n, na forma de
Newton que interpola os valores f(x0), f(x1), ..., f(xk) nos ns distintos x0, x1, ..., xk so dados
indutivamente pela expresso:
f x 1 , ..., x k f x 0 , ... , x k1
xk x0
ak = f x 0 , x 1 , ... , x k =
Uma tabela de diferenas divididas de uma funo f pode ser escrita da forma que segue
(denotando-se por fi,i+j a diferena f[xi, ..., xi+j]).
x
D0 / f[]
x0
f(x0)
x1
f(x1)
x2
f(x2)
x3
f(x3)
...
...
xn
f(xn)
D1 / f [ , ]
D2 / f [ , , ] D3 / f [ , , , ]
f0,1
f0,2
f1,2
f1,3
f2,3
f0,3
fn-2,n
fn-1,n
...
...
...
...
...
...
fn-3,n
yi
-1
D0 / f[]
x0 = 0
x1 = 1
-1
x2 = 3
x3 = 4
f 0,1 = f [ x 0 , x 1 ] =
f 1,2 = f [ x 1 , x 2 ] =
f 2,3 = f [ x 2 , x 3 ] =
D1 / f [ , ]
D2 / f [ , , ] D3 / f [ , , , ]
f0,1 = -2
f1,2 = 1
x 1 x 0
f ( x 2 ) f (x 1 )
x 2 x 1
f (x 3 ) f (x 2 )
f 1,3 = f [ x 1 , x 2 , x 3 ] =
x 3 x 2
1 1
2
=
= 2
1 0
1
1 (1)
2
=
= 1
3 1
2
2 1
1
=
= 1
4 3
1
f [ x 1 , x 2 ] f [ x 0 , x 1 ]
f 1,2 f 0,1
x 2 x 0
f [x 2 , x 3 ] f [ x 1 , x 2 ]
f 0,3 = f [ x 0 , x 1 , x 2 , x 3 ] =
f1,3 = 0
f2,3 = 1
f (x 1 ) f (x 0 )
f 0,2 = f [ x 0 , x 1 , x 2 ] =
f0,2 = 1
x 3 x 1
x 2 x 0
f 2,3 f 1,2
x 3 x 1
f [ x 1 , x 2 , x 3 ] f [ x 0 , x 1 , x 2 ]
x 3 x 0
f0,3 = -1/4
1 (2)
3
=
= 1
3 0
3
1 1
0
=
= 0
4 (1)
5
f 1,3 f 0,2
x 3 x 0
0 1
1
=
4 0
4
( )
1
(x 0)(x 1)(x 3)
4
1
x (x 1)(x 3) .
4
- 94 -
Deste modo, se os valores nodais forem os valores nodais de uma funo, este teorema
estabelece uma relao importante entre as diferenas divididas de ordem n e a derivada da
mesma ordem dessa funo.
4.2.3. Erros de Interpolao Polinomial
Que erro se comete quando se interpola uma funo por um polinmio de grau menor ou igual a
n utilizando o valor da funo em n+1 ns distintos?
Por exemplo,
Teorema:
Sejam f Cn+1([a, b]) e pn o polinmio de grau menor ou igual a n que interpola f nos ns
distintos x0, x1, ..., xn, contidos em [a,b]. Ento para qualquer z [a,b] existe um valor (a,
b), dependente de x0, x1, ..., xn, z e de f tal que
e n (z) f (z) pn (z) =
f(n+1)()
(z x 0 )(z x 1 )...(z x n ) .
(n+1)!
- 95 -
f (n+1) ( )
(x ), com (x ) = ( x x 0 )(x x 1 )...(x x n )
(n+1)!
f(n+1)( x)
M n+1
(x )
x[ x 0 , x n ]
temos,
M n+1
en( x) (x ) (n+1)!
ou,
en( x)
1
M
hn+1.
4(n+1) n+1
f (n+1) ( )
(x )
(n+1)!
5. Aproximao polinomial
Em linhas gerais pode dizer-se que aproximar uma funo represent-la por uma outra mais
simples. H a necessidade de aproximar uma funo quando a maneira com ela definida
dificulta ou impossibilita a resoluo de problemas matemticos envolvendo essa funo. o caso,
por exemplo, de funes conhecidas por uma tabela de alguns dos seus valores, funes definidas
como solues de equaes, ou definidas explicitamente por expresses envolvendo funes
transcendentes. Pode-se estar interessado em calcular o valor do integral da funo num dado
domnio e no conhecer a primitiva da funo, ou calcular um (ou mais) zeros da funo no
existindo uma frmula que o permita fazer explicitamente, etc.
- 96 -
Qualquer estudo sobre aproximao de funes pressupe a existncia de uma maneira de medir
a distncia entre duas funes.
Definio:
Seja F um conjunto. Uma aplicao d : F x F R tal que
f, g F, d(f,g) = 0 se e s se f = g,
f, g F, d(f,g) = d(g,f),
f, g, h F, d(f,h) d(f,g) + d(g,h),
uma mtrica. O conjunto F munido duma mtrica um espao mtrico.
Desta definio resulta que
f, g F, d(f, g) 0.
- 97 -
x [a ,b ]
f (x),
{
b
fC([a ,b ]), f 2 =
1/ 2
w( x) f (x ) dx
- 98 -
0in
f (x i),
uma seminorma.
Exemplo:
Dados n + 1 pontos distintos x0, x1, ..., xn [a, b], a aplicao . : C([a,b]) R definida por
1/2
fC([a ,b ]), f =
i=0
w (x i ) f (x i )
dx
uma seminorma.
Toda a norma induz uma mtrica. Isto , se F um espao normado onde est definida uma
norma . , ento F um espao mtrico com a mtrica definida por
f , g F, d(f , g) = f g .
5.1.2. Melhor aproximao polinomial
Definio:
Seja F um espao linear de funes onde est definida uma norma . . Se g F uma
aproximao para f F a
f g
chama-se erro de aproximao g com respeito norma . .
Definio:
Seja F C([a,b]) um espao normado e Pn o conjunto dos polinmios de coeficientes reais e grau
menor ou igual a n. Ento, pn Pn uma melhor aproximao polinomial de grau n para uma
funo f F em relao norma . de F, se
f p n = qinf
f q n .
P
n
Por outras palavras, relativamente a uma dada norma, a melhor aproximao polinomial de grau
n para uma funo que minimiza o erro.
Se a norma for a de Chebyshev ou a dos quadrados ponderados, existe uma melhor aproximao
polinomial e nica.
Uma melhor aproximao em relao norma de Chebyshev chamada aproximao minimax.
Uma melhor aproximao em relao norma dos quadrados ponderados chamada
aproximao dos mnimos quadrados.
- 99 -
max
i=1,... ,m
yi (a xi+b)
y i (ax i+b)
i=1
( y i (a xi+b))2
i=1
- 100 -
max
i=1,... ,n
y i F (xi ; c1 , c2 , ..., c k )
minimizar
y i F(x i ; c 1 , c 2 , ..., c k )
i=1
minimizar
i=1
( yi F ( x i ; c1 , c2, ... , ck ) )
E(c1 , ..., c k ) =
( y i c 1 f 1 (x i ) c 2 f 2 (x i ) ... ck f k (x i ) )
i=1
i=1
y i c j f j (x i )
j=1
Tratando-se de um problema de minimizao em R k para que E(c1, c2, ..., ck) seja mnimo
necessrio que,
E(c 1 , ..., ck ) = 0
E
= 0,
cj
j = 1, ..., k
c1
c1
c1
f 1 (xi)f1 ( xi) + c 2
i=1
n
f 1 (xi)fk (xi) =
i=1
n
i=1
i=1
i=1
y i f 1 (xi)
i=1
n
yi f2( xi)
i=1
.. .
n
i=1
f k (x i) f 1 (x i ) + c 2 f k ( x i )f 2 ( x i ) + ... + c k
i=1
- 101 -
f k (xi) fk (x i) =
i=1
y i f k (xi )
i=1
E (a , b ) =
( y i a b x i )2
i=1
Para que E(a, b) seja mnimo necessrio (e prova-se que tambm suficiente) que,
E
= 0
E (a, b) = a
E
= 0
b
ou seja que,
an
a
+ b
n
xi
i=1
i=1
n
+ b
yi
xi =
x 2i
i=1
n
i=1
xi yi
i=1
Assim tem-se um sistema linear com duas equaes (equaes normais) e as duas incgnitas a e
b que caracterizam a reta pretendida (reta de regresso).
Os coeficientes de a e de b e os termos independentes, obtm-se facilmente pela construo de
uma tabela,
xi
yi
xi2
xi yi
x1
y1
x12
x1 y1
x2
y2
x22
x2 y2
...
xn
...
yn
...
xn2
...
xn yn
xi
yi
xi2
xi yi
Exemplo:
Para se determinar a reta de regresso que aproxima os pontos,
x
10
- 102 -
xi
yi
xi2
xi yi
1
2
4
5
7
8
10
1
2
4
4
5
6
7
1
4
16
25
49
64
100
1
4
16
20
35
48
70
37
29
259
194
a 7 + b 37 = 29
a 37 + b 259 = 194
cuja soluo
a = 0.75
b = 0.6418918918919
o que permite determinar a reta de regresso,
y = 0.75 + 0.6418918918919 x
10
- 103 -
xi
yi
yi2
yi xi
1
2
4
5
7
8
10
1
2
4
4
5
6
7
1
4
16
16
25
36
49
1
4
16
20
35
48
70
37
29
147
194
a 7 + b 29 = 37
a 29 + b 147 = 194
cuja soluo
a = -0.994680851064
b = 1.5159574468085
o que permite determinar a reta de regresso inversa,
x = -0.994680851064 + 1.5159574468085 y
5.2.4. Parbola dos Mnimos Quadrados
Para aproximar o conjunto de pontos por uma parbola, pretende-se determinar os valores de
a, b e c em,
F(x; a, b, c) = a + b x + c x2
por forma a minimizar o erro quadrtico total,
n
E (a , b , c) =
( y i a b x i c x 2i )
i=1
Para que ocorra o mnimo necessrio (e prova-se que tambm suficiente) que,
E (a, b , c) = 0
ou seja,
an
a
a
+ b
xi
+ c
x 2i
+ c
x 3i
+ c
i=1
n
xi
+ b
x 2i
+ b
i=1
n
i=1
i=1
x 3i
x 4i
i=1
n
i=1
n
x 2i
i=1
n
i=1
yi
i=1
n
xi yi
i=1
n
x i2 y i
i=1
- 104 -
10
construindo a tabela
xi
yi
xi2
xi3
xi4
xi yi
xi2 yi
1
2
4
5
7
8
10
1
2
4
4
5
6
7
1
4
16
25
49
64
100
1
8
64
125
343
512
1000
1
16
256
625
2401
4096
10000
1
4
16
20
35
48
70
1
8
64
100
245
384
700
37
29
259
2053
17395
194
1502
a 7 + b 37
+ c 259
= 29
a 37 + b 259 + c 2053 = 194
a 259 + b 2053 + c 17395 = 1502
cuja soluo
a = 0.28869047619
b = 0.890625
c = -0.02306547619
o que permite determinar a parbola, que se aproxima dos pontos,
y = 0.28869047619 + 0.890625 x - 0.02306547619 x 2
- 105 -