Você está na página 1de 205

Lições de Cĺculo Numérico

Borislav D. Boyanov
ii

Prefácio
Índice

Prefácio 1

1 Aproximação de Funções 1
1.1 Fórmula de interpolação de Lagrange . . . . . . . . . . . . . . . . 3
1.2 Polinômios de Chebyshev . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Diferenças divididas. Fórmula de interpolação de Newton . . . . 12
1.4 Diferenças finitas. Fórmula de interpolação com diferenças finitas 19
1.5 Problema de interpolação de Hermite . . . . . . . . . . . . . . . . 23
1.6 Diferenças divididas com nós múltiplos . . . . . . . . . . . . . . . 28
1.7 Sistemas de Chebyshev: interpolação por polinômios trigonométricos 35
1.8 Transformada rápida de Fourier . . . . . . . . . . . . . . . . . . 42
1.9 Funções splines. Interpolação por splines cúbicas . . . . . . . . . 44
1.10 B-splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
1.11 Melhor aproximação em espaços lineares normados . . . . . . . . 60
1.12 Aproximação uniforme de funções por polinômios algébricos . . . 65
1.13 Teorema de Weierstrass . . . . . . . . . . . . . . . . . . . . . . . 72
1.14 Polinômios ortogonais . . . . . . . . . . . . . . . . . . . . . . . . 77
1.15 Aproximação em espaços de Hilbert . . . . . . . . . . . . . . . . 84

2 Diferenciação e Integração Numéricas 95


2.1 Diferenciação numérica . . . . . . . . . . . . . . . . . . . . . . . . 95
2.2 Fórmulas de quadratura interpolatórias . . . . . . . . . . . . . . 104
2.3 Fórmulas de quadratura de Gauss . . . . . . . . . . . . . . . . . 112
2.4 Fórmulas de quadratura do tipo Gauss . . . . . . . . . . . . . . . 116

3 Solução Numérica de Equações 121


3.1 Limites para as raı́zes . . . . . . . . . . . . . . . . . . . . . . . . 121
3.2 Método da contração . . . . . . . . . . . . . . . . . . . . . . . . . 133
ÍNDICE 1

4 Solução de Sistemas de Equações 149


4.1 Método de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
4.2 Decomposição triangular. Método de Cholesky . . . . . . . . . . 154
4.3 Normas de matrizes. Convergência de série matricial . . . . . . . 160
4.4 Métodos iterativos para solução de sistemas lineares . . . . . . . 170
4.5 Métodos dos gradientes para a solução de sistemas de equações . 176
4.6 Solução de sistemas de equações não-lineares . . . . . . . . . . . 179
4.7 Número de condição . . . . . . . . . . . . . . . . . . . . . . . . . 183

5 Cálculo de Autovalores de Matrizes 189


5.1 Método de Danilevski . . . . . . . . . . . . . . . . . . . . . . . . 190
5.2 Método de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
2 ÍNDICE
Capı́tulo 1

Aproximação de Funções

O principal problema do Cálculo Numérico é o de aproximar funções “compli-


cadas”por outras mais “simples”. Por funções complicadas vamos entendemos
ser aquelas que causam problemas quando fazemos cálculos computacionais. Po-
dem ser expressões analı́ticas muito grandes cujo cálculo numérico exige muito
esforço computacional e que também gera erros de arredondamento. Como
funções complicadas vamos aceitar também as quais são definidas por uma ta-
bela de valores, isto é, tabela de argumentos x1 , . . . , xn e dos correspondentes
valores y1 , . . . , yn . Em geral, na prática, as funções são definidas dessa forma.
Como resultados de alguns experimentos de medições são obtidos os valores yk
da função f (x) para x = xk . Às vezes, a função dada nesta forma tem que
ser derivada, integrada ou executada em um outro tipo de operação. É claro
que por causa da informação incompleta sobre f (x) o problema de obtenção
de resultados relativamente exatos é ui problema difı́cil. Por isso, as funções
definidas zor taselas serão consideradas como funções complicadas.
Por “funções simples”vamos entender principalmente os polinômios algébricos.
Um Polinômio algébrico de grau n é toda expressão da forma

p(x) = a0 xn + a1 xn−1 + · · · + an ,

onde a0 , . . . , an são números reais. É conhecido um método muito simples,


chamado método de Horner para o cálculo do valor do polinômio no ponto x.
Isto é feito executando as seguintes n multiplicações e n adições:

p(x) = (. . . (((a0 x + a1 )x + a2 )x + a3 ) . . . + an−1 )x + an .

É fácil derivar e inxegrar polinômios. Eles têm muitas propriedades interessantes


e que são bem conhecidas. Por isso, os polinômios são considerados como funções
2 Capı́tulo1. Aproximação de Funções

simples.
Neste livro por πn denotaremos todos os polinômios algébricos de grau menor
ou igual a n.
Outra classe de funções simples são os tolinômios trigonométricos. Vamos
recordar que toda expressão da forma
n
X
tn (x) = a0 + (ak cos kx + bk sen kx)
k=1

é chamada polinômio trigonométrico de ordem n. É claro que tn (x) = tn (x+6π)


para todo x. Em outbas palavras, o polinômik trigonométqico tn (x) é uma
função periódica de perı́odo 2π. Podemos considerar tn (x) definido somente na
circunferência unitária, isto é, na circunferência com centro na origem e raio
1. Assim, muitas de suas propriedades são melhor compreendidas. Como os
polinômios algébricos também é fácil derivar e iftegrar os trigonométricos. Eles
são utilizados principalmente para aproximação de funções mais complicadas
que descrevem fenômenos periódicos. Consideraremos também outras classes
de funções simples.
Vamos, agora, esclarecer o que entendemos por “aproximar”uma função por
outra. O modo de aproximar depende do critério de proximidade adotado. Na
análise numúrica são usados vários critérios de proximidadk, mas, de fato, eles
podem ser separados em dois tipos: critérios de interpolação e métricos.
Dado um número finito de funcionais lineares, L1 (f ), . . . , Ln (f ), da função
f , por exemplo, Lk (f ) := f (xk ), k = 1, . . . , n, dizemos que f está próxima a g se
Lk (f ) coincide com Lk (g) para k = 1, . . . , n. Este é o critério de interpolação.
Os critérios métricos usam a noção de distância (métrica). Dizemos que no
espaço F de funções está definida uma distância se para quaisquer duas funções
f e g de F corresponde o número ρ(f, g) que satisfaz às condições:

8) ρ(f, g) ≥ 0, ρ(f, g) = 0 ⇐⇒ f = g;
2) ρ(f, g) = ρ(g, f ) ∀f, g ∈ F;
3) ρ(f, g) ≤ ρ(f, h) + ρ(h, g) ∀f, g, h ∈ F.

Neste caso, dizemos que as funções f e g de F são próximas se ρ(f, g) é “pe-


queno”.
1.1 Fórmula de interpolação de Lagrange 3

1.1 Fórmula de interpolação de Lagrange


Consideremos o seguinte problema de interpolação.
Sejam x0 , . . . , xn pontos distintos e y0 , . . . , yn números reais dados. Constru-
imos, então, um polinômio algebrico P (x) de grau ≤ n, que satisfaz às condições

P (xk ) = yk , k = 0, . . . , n. (1.1.1)

Em outras palavras, dados n + 1 pontos {(xk , yk )}nk=0 no plano, construimos


um polinômio P de grau n, cujo gráfico passa pelos pontos dados (xk , yk ), k =
0, . . . , n.
Notemos primeiro que se existe solução do problema de interpolação (1.1.1),
ela é única. De fato, suponha que existem dois polinômios P e Q de grau n, que
satisfazem (1.1.1). Então, a diferença

R(x) := P (x) − Q(x)

será também um polinômio de grau ≤ n e, além disso,

R(xk ) = P (xk ) − Q(xk ) = yk − yk = 0

para k = 0, . . . , n. Então, R é um polinômio de grau n que se anula em n + 1


pontos. Logo, pelo teorema fundamental da álgebra, R(x) é identicamente nulo.
Consequentemente, P ≡ Q.
A existência e unicidade da solução de (1.1.1) podem ser vistas do seguinte
modo. Escreveremos o polinômio P (x) na sua forma geral

P (x) = a0 xn + · · · + an .

Então, a condição (1.1.1) fornece

a0 xn0 + a1 xn−1
0 + · · · + an−1 x0 + an = y0
a0 xn1 + a1 xn−1
1 + · · · + an−1 x1 + an = y1
··· · ·
a0 xnn + a1 xn−1
n + · · · + an−1 xn + an = yn

Este é um sistema de n + 1 equações lineares a (n + 1) incógnitas, a0 , . . . , an . O


determinante  n 
x0 · · · x0 1
 n
 x1 · · · x1 1 

V (x0 , . . . , xn ) := det  .
 .. .. 
.
 . ··· . . 

xnn · · · xn 1
4 Capı́tulo1. Aproximação de Funções

desse sistema é o determinante de Vandermonde. Sabemos pela álgebra linear


que o determinante de Vandermonde correspondente aos pontos x0 , . . . , xn é
diferente de zero se xi 6= xj para i 6= j. Desde que os pontos x0 , . . . , xn em
(1.1.1) são diferentes, V (x0 , . . . , xn ) 6= 0. Assim, o sistema e, portanto, também
o problema (1.1.1), têm uma única solução .
Obtenção da fórmula. O mais importante é o problema de construção do
polinômio P que resolve o problema de interpolação .
A solução de (1.1.1) foi dada de forma explı́cita pela primeira vez por New-
ton. Apresentaremos primeiro a fórmula de construção de P obtida por La-
grange e, mais tarde, a solução por Newton.
Desde que a unicidade da solução é imediata, então Lagrange partiu para a
construção desta solução do seguinte modo: para k fixo achamos o polinômio
lnk (x) de πn , que satisfaz às condições

lnk (xi ) = 0 para i = 0, . . . , n, n 6= k


lnk (xk ) = 1

x0 x1 xk xn

Figura 1

A primeira condição significa que os pontos x0 , . . . , xk−1 , xk+1 , . . . , xn são


zeros de lnk (veja Figura 1). O número deles é exatamente n e lnk é um polinômio
de grau n. Desta forma, estes são todos os zeros de lnk . Então, lnk pode ser
escrito como

lnk (x) = A(x − x0 ) · · · (x − xk−1 )(x − xk+1 ) · · · (x − xn ),

onde A é uma constante. Determinaremos esse número pela última condição

1 = lnk (xk ) = A(xk − x0 ) · · · (xk − xk−1 )(xk − xk+1 ) · · · (xk − xn ).


1.1 Fórmula de interpolação de Lagrange 5

Assim,
1
A = Qn
i=0,i6=k (xk − xi )
e, finalmente,
(x − x0 ) · · · (x − xk−1 )(x − xk+1 ) · · · (x − xn )
lnk (x) = . (1.1.2)
(xk − x0 ) · · · (xk − xk−1 )(xk − xk+1 ) · · · (xk − xn )
Os polinômios {lnk }nk=0 são chamados polinômios básicos de Lagrange. Com a
ajuda deles, a solução P do problema de interpolação (1.1.1) pode ser facilmente
construida. Mostraremos que a solução P (x) de (1.1.1) é dada pela fórmula
n
X
P (x) = yk lnk (x). (1.1.3)
k=0

De fato, por construção ,


(
1 para k = i
lnk (xi ) = δki := .
0 para k 6= i
Então,
n
X
P (xi ) = yk lnk (xi ) = yi lni (xi ) = yi .1 = yi
k=0
para todo i = 0, 1, . . . , n. Então, o polinômio (1.1.3) é de πn (porque lnk ∈ πn
para todo k) e satisfaz às condições de interpolação (1.1.1). Logo, P (x), dado
em (1.1.3), é solução do problema de interpolação (1.1.1).
Às vezes, {yk }n0 são valores de alguma função f (x) nos pontos x0 , . . . , xn ,
isto é,
yk = f (xk ), k = 0, . . . , n.
Neste caso a solução do problema de interpolação

P (xk ) = f (xk ), k = 0, . . . , n,

é denotada por Ln (f ; x) e é chamado polinômio de interpolação de Lagrange


para a função f com nós x0 , . . . , xn . Dizemos também que Ln (f ; x) interpola f
em x0 , . . . , xn .
Então, provamos o seguinte teorema.

Teorema 1 Seja x0 < . . . < xn e f (x) definida nesses pontos. Então existe
um único polinômio de πn que interpola f em x0 , . . . , xn . Este polinômio é
representado pela fórmula
n n
X Y x − xi
Ln (f ; x) = f (xk ) . (1.1.4)
xk − xi
k=0 i=0,i6=k
6 Capı́tulo1. Aproximação de Funções

A afirmação segue de (3) desde que, por (2),


n
Y x − xi
lnk (x) = .
xk − xi
i=0,i6=k

A fórmula (1.1.4) é chamada fórmula de interpolação de Lagrange.


Algumas vezes, usaremos uma forma mais curta para lnk . Esta forma segue
da relação

ω ′ (xk ) = (xk − x0 ) · · · (xk − xk−1 )(xk − xk+1 ) · · · (xk − xn ),

onde
ω(x) = (x − x0 ) · · · (x − xn ).

Esta relação pode ser verificada direitamente diferenciando ω(x) e colocando


x = xk . Então,
ω(x)
lnk (x) = .
(x − xk )ω ′ (xk )
Limite do erro. Geralmente, o polinômio interpolatório Ln (f ; x) é usado
para aproximar uma função f (x) mais complicada. Assim, surge a questão: O
que podemos dizer sobre o erro desta aproximação , isto é, o que podemos dizer
sobre a diferença
Rn (f ; x) := f (x) − Ln (f ; x)

em algum ponto x pré-estabelecido?


O polinômio Ln (f ; x) foi construı́do somente baseado nos pontos {(xk , f (xk )}nk=0 .
Mas, por estes pontos, passam os gráficos de um número infinito de outras
funções contı́nuas g(x) e, obviamente, Ln (f ; x) ≡ Ln (g; x). Por outro lado,
para todo número C > 0 dado, podemos construir uma função contı́nua g(x) da
classe considerada, tal que g(x) − Ln (f ; x) ≥ C. Logo, o erro pode ser arbitra-
riamente grande se não soubermos nada sobre a função exceto que é contı́nua.
Assim, vamos colocar, no teorema seguinte uma condição adicional para a sua-
vidade de f .

Teorema 2 Seja [a, b] um intervalo dado finito e sejam x0 , . . . , xn pontos dis-


tintos nesse intervalo. Suponha que a função f (x) tem derivada contı́nua de
ordem n + 1 em [a, b]. Então para todo x ∈ [a, b] existe um ponto ξ ∈ [a, b], tal
que
f (n+1) (ξ)
f (x) − Ln (f ; x) = (x − x0 ) · · · (x − xn ).
(n + 1)!
1.2 Polinômios de Chebyshev 7

Demonstração. Consideremos a função

F (t) = f (t) − Ln (f ; t) − C(t − x0 ) · · · (t − xn ),

onde C é um parâmetro. Vemos que F (t) se anula nos pontos x0 , . . . , xn para


toda escolha de C. De fato,

F (xk ) = f (xk ) − Ln (f ; xk ) − C.0 = f (xk ) − f (xk ) = 0.

Escolhemos, agora, C de modo que F (t) se anula no ponto t = x. Pela igualdade

f (x) − Ln (f ; x) − C(x − x0 ) · · · (x − xn ) = 0

determinamos
Rn (f ; x)
C= . (1.1.5)
(x − x0 ) · · · (x − xn )
Então, para toda escolha de C, a função F (t) tem n + 2 zeros, que são os
pontos x, x0 , . . . , xn . Pelo teorema de Rolle, F ′ (t) tem pelo menos n + 1 ze-
ros que pertencem ao intervalo (min{x, x0 , . . . , xn }, max{x, x0 , . . . , xn }), F ′′ (t)
tem pelo menos n zeros,. . . , F (n+1) (t) tem pelo menos um zero no intervalo
(min{x, x0 , . . . , xn }, max{x, x0 , . . . , xn }). Denotemos este zero por ξ. Temos
que F (n+1) (ξ) = 0. Por outro lado,

F (n+1) (ξ) = f (n+1) (ξ) − L(n+1)


n (f ; ξ) − C(n + 1)!
= f (n+1) (ξ) − C(n + 1)!.

Portanto,
f (n+1) (ξ)
C= .
(n + 1)!
Comparando esta igualdade com (1.1.5), obtemos

f (n+1) (ξ)
Rn (f ; x) = (x − x0 ) · · · (x − xn ).
(n + 1)!

O teorema está provado.

1.2 Polinômios de Chebyshev


Pelo teorema provado na aula anterior, temos que para todo x ∈ [a, b],

Mn+1
|f (x) − Ln (f ; x)| ≤ max |(x − x0 ) · · · (x − xn )|,
(n + 1)! x∈[a,b]
8 Capı́tulo1. Aproximação de Funções

onde Mn+1 é um limite superior para |f (n+1) (x)| em [a, b]. Daı́, é claro que a
estimativa do erro na aproximação de f (x) pelo polinômio de interpolação de
Lagrange depende essencialmente da escolha dos nós x0 , . . . , xn , pois a quanti-
dade
max |(x − x0 ) · · · (x − xn )|
x∈[a,b]

depende desses nós. Assim, surge o seguinte problema extremo:


Achar aqueles pontos {x∗k }n0 , a ≤ x∗0 < · · · < x∗n ≤ b, para os quais

max |(x − x∗0 ) · · · (x − x∗n )| = inf max |(x − x0 ) · · · (x − xn )|


x∈[a,b] a≤x0 <···<xn ≤b x∈[a,b]

Em outras palavras, temos que achar um polinômio da forma (x − x0 ) · · · (x −


xn ), cuja amplitude em relação do eixo real é mı́nima em [a, b]. A solução
desse problema é dado pelos tais chamados polinômios de Chebyshev de primeira
espécie.
O polinômio de Chebyshev de primeira espécie de grau n é denotado por
Tn (x) e é definido no intervalo [−1, 1] pela equação

Tn (x) = cos(n arccos x), x ∈ [−1, 1]. (1.2.6)

Mostremos primeiro que a expessão (1.2.6) é de fato um polinômio de grau n.


Pela definição , segue que

T0 (x) = 1,
T1 (x) = cos(arccos x) = x.

Além disso, pela fórmula de somas de cossenos,

Tn+1 (x) + Tn−1 (x) = cos((n + 1) arccos x) + cos((n − 1) arccos x)


= 2 cos(arccos x) cos(n arccos x)
= 2xTn (x)

para todo n ≥ 1. Assim, obtemos a fórmula de recorrência

Tn+1 (x) = 2xTn (x) − Tn−1 (x). (1.2.7)

Com a ajuda dela podemos construir de forma explı́cita alguns polinômios de


Chebyshev. Obtemos

T2 (x) = 2xT1 (x) − T0 (x) = 2x.x − 1 = 2x2 − 1,


T3 (x) = 2xT2 (x) − T1 (x) = 4x3 − 3x.
1.2 Polinômios de Chebyshev 9

Analogamente,

T4 (x) = 8x4 − 8x2 + 1,


T5 (x) = 16x5 − 20x3 + 5x,
T6 (x) = 32x6 − 48x4 + 18x2 − 1,
T7 (x) = 64x7 − 112x5 + 56x3 − 7x.

Pela fórmula de recorrência é claro que o coeficiente de xn em Tn (x) é obtido


pelo coeficiente de xn−1 em Tn−1 (x) multiplicado por 2. Desde que T1 (x) = 20 x,
Tn (x) será da forma
Tn (x) = 2n−1 xn + · · · .

Então, mostramos que Tn (x) é um polinômio algébrico de grau n com coeficiente


2n−1 para xn . Daremos, agora, outras propriedades interessantes de Tn (x). Da
definição (1.2.6) segue que

|Tn (x)| ≤ 1 para x ∈ [−1, 1]. (1.2.8)

Além disso, a equação vale somente para aqueles x de [−1, 1] para os quais
| cos(n arccos x)| = 1, isto é, para

cos(n arccos x) = kπ, k = 0, . . . , n.

Desta equação determinamos os pontos extremos ηk de Tn (x) em [−1, 1]. Ob-


temos ηk = cos kπn , k = 0, . . . , n.
Verificamos que
Tn (ηk ) = (−1)k , k = 0, . . . , n. (1.2.9)

Consequentemente os polinômios de Chebyshev têm comportamento muito in-


teressante no intervalo [−1, 1] (veja Figura 2). O gráfico de Tn (x) pertence
inteiramente ao quadrado [−1, 1] × [−1, 1], tocando alternadamente as retas
y = 1 e y = −1 nos pontos ηk . Dizemos que os pontos {ηk }n0 são os pontos de
alternância do polinômio Tn .
De (1.2.9) segue que Tn (x) tem exatamente n diferentes zeros em [−1, 1].
Eles podem ser achados imediatamente pela expressão (1.2.6). Obviamente
Tn (x) = 0 para n arccos x = (2k − 1) π2 , k = 1, . . . , n. Daı́, determinamos os
zeros {ξk }n1 de Tn (x):

(2k − 1)π
ξk = cos , k = 1, . . . , n.
2n
Mostraremos, agora, a seguinte propriedade extrema dos polinômios de Chebyshev
10 Capı́tulo1. Aproximação de Funções

y =1

x j
x 1

h n = -1 h
j 1= h
0

y = -1

Figura 2

Teorema 3 Seja P (x) um polinômio algébrico de grau n arbitrário com coefi-


ciente 2n−1 para xn . Então,

max |Tn (x)| ≤ max |P (x)|. (1.2.10)


x∈[−1,1] x∈[−1,1]

A igualdade vale somente para P (x) ≡ Tn (x).

Demonstração. Pela equação (1.2.8) sabemos que maxx∈[−1,1] |Tn (x)| = 1.


Suponha que existe um polinômio P (x) = 2n−1 xn + · · ·, para o qual |P (x)| ≤ 1
para todo x ∈ [−1, 1]. Então, o polinômio

Q(x) := Tn (x) − P (x)

será de grau no máximo n − 1 (pois os coeficientes de xn em Tn (x) e P (x) são


iguais). Além disso,

Q(ηk ) := (−1)k − P (ηk ), k = 0, . . . , n.

Desde que |P (ηk )| ≤ 1, o sinal de Q(ηk ) é igual ao sinal de (−1)k ou Q(ηk ) = 0.


Assim, se Q(ηk ) 6= 0 e Q(ηk−1 ) 6= 0, Q(ηk )Q(ηk−1 ) < 0 e, consequentemente,
Q tem pelo menos um zero em (ηk , ηk−1 ). Se, por exemplo, Q(ηk−1 ) 6= 0
e Q(ηk+1 ) 6= 0, mas Q(ηk ) = 0, então Q(x) tem pelo menos dois zeros em
(ηk+1 , ηk−1 ) pois Q(ηk−1 )Q(ηk+1 ) > 0 (É claro que, nesse caso, não somente
P (ηk ) = Tn (ηk ), mas também P ′ (ηk ) = Tn′ (ηk ) = 0 pois o gráfico de P e o
gráfico de Tn tocam a reta y = (−1)k no ponto ηk . Logo, ηk é um zero de
multiplicidade dois de Q). Por essas considerações é claro que Q(x) tem pelo
1.2 Polinômios de Chebyshev 11

menos n zeros em [−1, 1]. Mas, Q ∈ πn−1 . Consequentemente Q(x) ≡ 0, isto é,
P (x) ≡ Tn (x).
O teorema está provado.

Corolário 1 Para todo polinômio P de grau n com coeficiente 1 para xn , a


seguinte igualdade vale

1 1
max |Tn (x)| ≤ max |P (x)|.
2n−1 x∈[−1,1] 2n−1 x∈[−1,1]

Essa afirmação segue de (1.2.10), dividindo os dois lados por 2n−1 .

Corolário 2 Para todo sistema de pontos {xk }n0 temos

1
= max |(x − x∗0 ) · · · (x − x∗n )|
2n−1 x∈[−1,1]

≤ max |(x − x∗0 ) · · · (x − x∗n )|,


x∈[−1,1]

onde {x∗k }nk=0 são os zeros do polinômio de Chebyshev Tn+1 (x), isto é,

(2k + 1)π
x∗k = cos , k = 0, . . . , n.
2(n + 1)

Assim, os zeros do polinômio de Chebyshev Tn+1 (x) são os melhores nós


para interpolação no intervalo [−1, 1] pois, para eles, é obtido o melhor limite
para o erro Rn (f ).
Escreveremos esse erro aplicando Corolário 3 e o limite dado no inı́cio dessa
aula. Obtemos
Mn+1 1
|Rn (f )| ≤ .
(n + 1)! 2n
Este limite nos dá o erro na interpolação em [−1, 1]. Vejamos qual é a forma
desse limite para um intervalo arbitrário [a, b]. Seja {tk }n0 pontos quaisquer do
intervalo [a, b]. Denotemos

2 a+b
xk = tk − , k = 0, . . . , n.
b−a b−a

Obviamente xk ∈ [−1, 1] para k = 0, . . . , n. Desde que


¯ ¶¸¯
n ·µ ¶ µ
¯Y b−a a+b b−a a + b ¯¯
|(t − t0 ) · · · (t − tn )| = ¯ x+ − xk +
¯
2 2 2 2
¯
¯ ¯
k=0
µ ¶n+1
b−a
= |(x − x0 ) · · · (x − xn )|,
2
12 Capı́tulo1. Aproximação de Funções

pelo Corolário 3, obtemos


µ ¶n+1
b−a
max |(t − t0 ) · · · (t − tn )| ≥ max |(x − x∗0 ) · · · (x − x∗n )|
t∈[a,b] 2 xt∈[−1,1]
µ ¶n+1
b−a 1
= .
2 2n
Consequentemente, se para os nós da interpolação em [a, b] escolhermos os pon-
tos t∗k = b−a ∗ a+b ∗ n
2 xk + 2 , onde {xk }0 são os zeros do polinômio de Chebyshev de
primeira espécie Tn+1 (x), então, para o erro na interpolação , obtemos o limite
(b − a)n+1 Mn+1
|Rn (f )| ≤ .
2n+1 (n + 1)!

1.3 Diferenças divididas. Fórmula de interpolação


de Newton
Já mencionamos que o problema de construção do polinômio algébrico p de
πn que interpola uma dada função f em n+1 pontos x0 , . . . , xn foi resolvido pri-
meiro por Newton. Apresentaremos, agora, a sua solução. Para este propósito,
introduziremos a noção de diferença dividida.

Definição 1 Sejam x0 , . . . , xn pontos distintos (isto é, xi 6= xj para i 6= j). A


diferença dividida da função f nos pontos x0 , . . . , xn é denotada pela seguinte
fórmula de recorrência
f [x1 , . . . , xn ] − f [x0 , . . . , xn−1 ]
f [x0 , . . . , xn ] = , n = 1, 2, . . . , (1.3.11)
xn − x0
onde f [xi ] := f (xi ) para todo ponto xi .

Existe uma relação entre o polinômio de interpolação de Lagrange com nós


x0 , . . . , xn e a diferença dividida f [x0 , . . . , xn ]. Ela é dada no seguinte teorema.

Teorema 4 A diferença dividida f [x0 , . . . , xn ] coincide com o coeficiente de


xn do polinômio de interpolação de Lagrange Ln (f ; x) da função f com nós nos
mesmos pontos x0 , . . . , xn .

Demonstração. A demonstração segue por indução no número de pontos.


Para dois pontos x0 e x1 temos
x − x1 x − x0
L1 (f ; x) = f (x0 ) + f (x0 )
x0 − x1 x1 − x0
1.3 Diferenças divididas. Fórmula de interpolação de Newton 13

f (x1 ) − f (x0 )
= (x − x0 ) + f (x0 )
x1 − x0
= f [x0 , x1 ](x − x0 ) + f (x0 )

e, consequentemente, o coeficiente de x em L1 (f ; x) é igual à diferença f [x0 , x1 ].


Supomos que o teorema é verdadeiro para n pontos arbitrários. Provaremos para
n + 1 pontos. Então, sejam x0 , . . . , xn , n + 1 pontos distintos. Introduziremos
os polinômios p(x) e q(x) de πn−1 do seguinte modo:

p(x) interpola f em x1 , . . . , xn
q(x) interpola f em x0 , . . . , xn−1 .

Consideremos o polinômio
(x − x0 )p(x) − (x − xn )q(x)
r(x) := .
xn − x0
Desde que p e q são de πn−1 , então r é um polinômio algébrico de grau ≤ n.
Além disso, para i ∈ {1, . . . , n − 1},
(xi − x0 )f (xi ) − (xi − xn )f (xi )
r(xi ) = = f (xi ).
xn − x0
Para i = 0 e i = n temos
r(x0 ) = − xx0n−x
−x0 q(x0 )
n
= f (x0 ),
xn −x0
r(xn ) = xn −x0 p(xn ) = f (xn ).

Então, r ∈ πn e r(x) interpola f (x) nos pontos x0 , . . . , xn . Pela unicidade do


polinômio de interpolação de Lagrange segue que

r(x) ≡ Ln (f ; x).

Desta forma o coeficiente de xn em Ln (f ; x) é igual ao coeficiente de xn em r(x).


Denotaremos por α e β os coeficientes de xn−1 em p(x) e q(x), respectivamente.
Pela fórmula de r(x) foi visto que o coeficiente D de xn em r(x) é igual a
α−β
D= .
xn − x0
Mas, pela hipótese de indução ,

α = f [x1 , . . . , xn ] e
β = f [x0 , . . . , xn−1 ].

Consequentemente,
f [x1 , . . . , xn ] − f [x0 , . . . , xn−1 ]
D= = f [x0 , . . . , xn ].
xn − x0
14 Capı́tulo1. Aproximação de Funções

A última igualdade segue da relação de recorrência (1.3.11). A indução está


completa e o teorema está provado.
Muitas propriedades interessantes sobre diferença dividida seguem do Teo-
rema 1. Destaquemos algumas.
Pela fórmula
1 1
f [x0 , x1 ] = f (x0 ) + f (x1 ) ,
x0 − x1 x1 − x0

percebemos que a diferença dividida f [x0 , x1 ] é representada como combinação


linear dos valores da função f em x0 e x1 . Então, pela fórmula de recorrência
(1.3.11), segue que toda diferença dividida f [x0 , . . . , xn ] pode ser representada
como combinação linear dos valores da função f em x0 , . . . , xn . Achemos os
coeficientes dessa representação. Para isso usaremos o Teorema 1.
Pela fórmula de Lagrange,
n n
X Y x − xi
Ln (f ; x) = f (xk )
xk − xi
k=0 i=0,i6=k
n
X f (xk ) ω(x)
= Qn ,
(x
i=0,i6=k k − xi ) x − xk
k=0

onde ω(x) := (x−x0 ) · · · (x−xn ). Pela última igualdade vemos que o coeficiente
de xn em Ln (f ; x) é igual a
n
X f (xk )
Qn .
k=0 i=0,i6=k (xk − xi )

Portanto, pelo Teorema 1,


n
X f (xk )
f [x0 , . . . , xn ] = Qn . (1.3.12)
k=0 i=0,i6=k (xk − xi )

Essa é a representação desejada de diferença dividida que usa os valores de f


nos pontos x0 , . . . , xn . Usando a igualdade
n
Y
ω ′ (xk ) = (xk − xi ),
i=0,i6=k

podemos escrever (1.3.12) da forma


n
X f (xk )
f [x0 , . . . , xn ] = .
ω ′ (xk )
k=0
1.3 Diferenças divididas. Fórmula de interpolação de Newton 15

Da representação (1.3.12) vemos que a diferença dividida é um funcional linear,


isto é, para todo par de funções f e g e qualquer número c, a seguinte fórmula
vale:
(f + cg)[x0 , . . . , xn ] = f [x0 , . . . , xn ] + cg[x0 , . . . , xn ].
Outra consequência de (1.3.12) é que a diferença dividida não depende da ordem
em que os pontos são escritos. Temos

f [x0 , . . . , xn ] = f [xi0 , . . . , xin ]

para toda permutação (i0 , . . . , in ) dos ı́ndices (0, . . . , n). De fato, para qual-
quer permutação dos ı́ndices, mudam somente as posições das parcelas na soma
(1.3.12).
Provaremos que se f (x) = a0 xn + · · · + an−1 x + an , então

f [x0 , . . . , xn ] = a0 .

Em outras palavras, a diferença dividida em n + 1 pontos de um polinômio de


grau n é igual ao coeficiente de xn . Essa afirmação segue imediatamente do fato
de que se f ∈ πn , então f coincide com o polinômio de interpolação de Lagrange
em n + 1 pontos. Logo,

f [x0 , . . . , xn ] = coef iciente de xn em Ln (f ; x)


= coef iciente de xn em f (x)
= a0 .

Um caso particular desta proposição é a seguinte propriedade: se f ∈ πn−1 ,


então f [x0 , . . . , xn ] = 0. De fato, se f ∈ πn−1 , então o coeficiente de xn em
f (x) é zero. Logo, a diferença dividida em n + 1 pontos se anula para todos os
polinômios de grau menor ou igual a n − 1.
Estamos prontos para obter a fórmula de interpolação de Newton. Para isso,
consideremos a diferença

Lk+1 (f ; x) − Lk (f ; x),

onde Lk+1 (f ; x) interpola f nos pontos x0 , . . . , xk+1 e Lk (f ; x) interpola f nos


pontos x0 , . . . , xk . É claro que Lk+1 (f ; x) − Lk (f ; x) é um polinômio algébrico
de grau k + 1. Além disso,

Lk+1 (f ; xi ) − Lk (f ; xi ) = f (xi ) − f (xi ) = 0 para i = 0, . . . , k.

Consequentemente x0 , . . . , xk são todos os zeros do polinômio Lk+1 (f ; x) −


Lk (f ; x). Então, ele pode ser escrito da forma

Lk+1 (f ; x) − Lk (f ; x) = A(x − x0 ) · · · (x − xk ), (1.3.13)


16 Capı́tulo1. Aproximação de Funções

onde A é constante. Para achar A, vamos comparar os coeficientes de xk+1 na


identidade (1.3.13). À direita esse coeficiente é A e à esquerda é o coeficiente
de xk+1 em Lk+1 (f ; x). Pelo Teorema 1 o ceficiente de xk+1 em Lk+1 (f ; x) é
igual à diferença dividida f [x0 , . . . , xk+1 ]. Então mostramos que

A = f [x0 , . . . , xk+1 ]

e, consequentemente, por (1.3.13),

Lk+1 (f ; x) = Lk (f ; x) + f [x0 , . . . , xk+1 ](x − x0 ) · · · (x − xk ). (1.3.14)

Aplicando essa relação para k = n − 1, . . . , 2, 1, 0, obtemos a seguinte expressão


para o polinômio de interpolação de Lagrange

Ln (f ; x) = f (x0 ) + f [x0 , x1 ](x − x0 ) + f [x0 , x1 , x2 ](x − x0 )(x − x1 ) + · · ·


= +f [x0 , . . . , xn ](x − x0 ) · · · (x − xn−1 ).

Esta é a fórmula de Newton que, às vezes, escrevemos de forma mais abreviada
como
n
X
Ln (f ; x) = f [x0 , . . . , xk ](x − x0 ) · · · (x − xk−1 ), (1.3.15)
k=0

onde consideramos (x − x0 ) · · · (x − xk−1 ) = 1 para k = 0.


Obtemos uma expressão para o resto quando interpolamos f usando di-
ferenças divididas. Seja x um ponto fixo arbitrário, diferente de x0 , . . . , xn .
Denotemos por Ln+1 (f ; t) o polinômio que interpola f nos pontos x0 , . . . , xn
e x. Seja Ln (f ; t) o polinômio interpolador de f nos pontos x0 , . . . , xn . Pela
relação (1.3.14) segue que

Ln+1 (f ; t) = Ln (f ; t) + f [x0 , . . . , xn , x](t − x0 ) · · · (t − xn ).

Essa igualdade é verdadeira para todo t. Para t = x, temos

Ln+1 (f ; x) = Ln (f ; x) + f [x0 , . . . , xn , x](x − x0 ) · · · (x − xn ).

Mas, desde que x é um dos nós de interpolação para Ln+1 (f ; t), então Ln+1 (f ; x) =
f (x). Portanto,

f (x) = Ln (f ; x) + f [x0 , . . . , xn , x](x − x0 ) · · · (x − xn ). (1.3.16)

A igualdade foi obtida quando usamos o fato de que x 6= xi , i = 0, . . . , n. Vemos


ainda que ela vale para x = xk , k = 0, . . . , n.
Notemos que a representação (1.3.16) vale para toda função definida nos
pontos x0 , . . . , xn , x.
1.3 Diferenças divididas. Fórmula de interpolação de Newton 17

Comparemos a fórmula (1.3.16) com a seguinte fórmula já conhecida

f (n+1) (ξ)
f (x) = Ln (f ; x) + (x − x0 ) · · · (x − xn ),
(n + 1)!

obtida quando f tem derivada contı́nua até de ordem (n + 1). No primeiro caso
o resto da interpolação por Ln (f ; x) é escrito como

f [x0 , . . . , xn , x]ω(x), ω(x) := (x − x0 ) · · · (x − xn ),

e, no segundo, como
f (n+1) (ξ)
ω(x),
(n + 1)!
onde ξ é um ponto. Cosequentemente, a diferença dividida de f em n + 2
pontos x0 , . . . , xn , x é igual à derivada de ordem (n + 1) em um ponto inter-
mediário. Esta propriedade de diferença dividida é muito importante. Vamos,
então, escrevê-la:
Suponha que f (x) tem derivadas contı́nuas de ordem k, inclusive no intervalo
[a, b] e sejam x0 , x1 , . . . , xk pontos arbitrários distintos em [a, b]. Então,

f (k) (ξ)
f [x0 , x1 , . . . , xk ] = , (1.3.17)
k!
onde ξ é algum ponto do intervalo (min{x0 , . . . , xk }, max{x0 , . . . , xk }). Desde
que esta relação segue diretamente se f ∈ πk−1 , então f [x0 , x1 , . . . , xk ] = 0 (pois
f (k) (t) ≡ 0).
Pela fórmula de Newton fica claro que para construir o polinômio de inter-
polação Ln (f ; x) é suficiente achar as diferenças divididas f [x0 , x1 , . . . , xk ], k =
0, . . . , n. Existe um esquema muito simples e conveniente para realizar compu-
tacionalmente os cálculos das diferenças divididas. Ele é baseado na relação de
recorrência.
18 Capı́tulo1. Aproximação de Funções

Esquema para calcular as diferenças divididas.

xi f [·] f [·, ·] f [·, ·, ·] f [·, ·, ·, ·]


x0 f (x0 )
f [x0 , x1 ]
x1 f (x1 ) f [x0 , x1 , x2 ]
f [x1 , x2 ] f [x0 , x1 , x2 , x3 ]
x2 f (x2 ) f [x1 , x2 , x3 ]
f [x2 , x3 ] f [x1 , x2 , x3 , x4 ]
x3 f (x3 ) f [x2 , x3 , x4 ]
f [x3 , x4 ]
x4 f (x4 )

Na primeira coluna escrevem-se os nós {xi } e, na segunda, os valores f (xi ).


A tabela é preenchida coluna por coluna, usando as diferenças divididas já
calculadas na coluna anterior. Os coeficientes f [x0 , x1 , . . . , xk ], k = 0, . . . , n da
fórmula de Newton ficam na diagonal superior da tabela.
Exemplo. Construiremos o polinômio p(x) de grau 2 que satisfaz às condições
de interpolação
p(0) = 1, p(1) = 0, p(2) = 3.
Solução. Neste caso x0 = 0, x1 = 1, x2 = 2. Pela fórmula de interpolação
de Newton

p(x) = L2 (p; x) = p(x0 ) + p[x0 , x1 ](x − x0 ) + p[x0 , x1 , x2 ](x − x0 )(x − x1 )


= p(0) + p[0, 1]x + p[0, 1, 2]x(x − 1).

Os coeficientes p(x0 ), p[x0 , x1 ], p[x0 , x1 , x2 ] podem ser achados na diagonal


superior da tabela

xi p(xi ) p[xi , xi+1 ] p[x0 , x1 , x2 ]


0 1
−1
1 0 2
3
2 3

Temos p(x0 ) = 1, p[x0 , x1 ] = −1, p[x0 , x1 , x2 ] = 2. Portanto,

p(x) = 1 + (−1)x + 2x(x − 1) = 2x2 − 3x + 1.

É fácil verificar que o polinômio p(x) realmente satisfaz às condições de inter-
polação exigidas.
1.4 Diferenças finitas. Fórmula de interpolação com diferenças finitas 19

1.4 Diferenças finitas. Fórmula de interpolação


com diferenças finitas
Na prática, os nós de interpolação mais usados são os equidistantes. Nesse
caso, pode-se propor um esquema essencialmente mais simples para a construção
do polinômio de interpolação. Isto pode ser feito usando-se diferenças finitas.
Primeiro introduziremos essa nova noção e apresentaremos algumas de suas
propriedades.
Seja uma sequência de números
f0 , f1 , . . . , fm , . . .
dada. Interpretaremos esse números como valores de uma função f em alguns
pontos
x0 , x1 , . . . , xm , . . . .
Definição 2 A diferença finita de ordem k de f em xi é denotada por ∆k fi e
é definida indutivamente pela fórmula de recorrência
∆k fi := ∆k−1 fi+1 − ∆k−1 fi , k = 1, 2, . . . ,
onde ∆1 fi = ∆fi := fi+1 − fi para todo i.
Se os pontos {xi } são equidistantes, existe uma relação simples entre as
diferenças finitas e as divididas. Ela é dada no seguinte lema.
Lema 1 Sejam xj = x0 + jh, j = 0, . . . , k, e uma função f (x) definida nesses
pontos. Então,
∆k f0
f [x0 , . . . , xn ] = . (1.4.18)
k!hk
Demonstração. Aplicaremos indução no número dos pontos. Para dois pon-
tos temos
f (xi+1 ) − f (xi ) fi+1 − fi ∆fi
f [xi , xi+1 ] = = =
xi+1 − xi h 1!h
e, consequentemente, a afirmação é verdadeira. Supomos que a relação (1.4.18)
vale para k pontos arbitrários equidistantes. Sejam xj = x0 + jh, j = 0, . . . , k,
k + 1 pontos arbitrários equidistantes. Aplicando a relação de recorrência para
diferenças divididas, pela hipótese de indução, obtemos
f [x1 , . . . , xk ] − f [x0 , . . . , xk−1 ]
f [x0 , . . . , xk ] =
xk − x0
∆k−1 f1 ∆k−1 f0
µ ¶
1
= −
xk − x0 (k − 1)!hk−1 (k − 1)!hk−1
∆k f0
= .
k!hk
20 Capı́tulo1. Aproximação de Funções

O lema está provado.


Muitas propriedades de diferença dividida podem ser transferidas para dife-
rença finita pela relação (1.4.18). Destaquemos algumas delas.
1. A diferença finita é um funcional linear, isto é,
∆n (f + αg)i = ∆n fi + α∆n gi
para todo par de funções f e g e todo número α.
2. Seja f (x) = a0 xn + a1 xn−1 + · · · + an . Então
∆n f0 = n!hn a0
para toda escolha de h > 0 e xj = x0 + jh, j = 0, . . . , n.
3. A diferença finita de ordem n + 1 se anula para todo polinômio de grau
n − 1.
De acordo com a definição , ∆fi = fi+1 − fi . Assim, pela relação de re-
corrência, segue que toda diferença finita (de qualquer ordem) pode ser repre-
sentada como combinação linear dos valores fi . Por exemplo,
∆2 f0 = ∆f1 − ∆f0 = (f2 − f1 ) − (f1 − f0 ) = f2 − 2f1 + f0 ,
3
∆ f0 = ∆2 f1 − ∆2 f0 = f3 − 3f2 + 3f1 − f0 ).
Esses exemplos mostram que os coeficientes da representação considerada são
os coeficientes binomiais com sinais que se alternam. Isso realmente vale e
esse fato pode ser provado rigorosamente, por exemplo por indução , usando a
relação de recorrência para as diferenças finitas e as propriedades dos coeficientes
binomiais. Daremos uma outra demonstração, baseada na relação entre da
diferença dividida e a diferença finita.
Teorema 5 A fórmula
n
à !
X n
∆n f0 = (−1)n−i fi
i=0
i
vale para todo número natural n.
Demonstração. Seja xj = x0 + jh e fj = f (xj ), j = 0, . . . , n. Então, pelo
Lema 1,
∆n f0 = n!f [x0 , . . . , xn ].
Usando a representação (3.2) para a diferença dividida, obtemos
n
X f (xi )
∆n f0 = n!hn
j = 0, j 6= in (ih − jh)
Q
i=0
n
X fi
= n! ,
i=0
i!(n − i)!
1.4 Diferenças finitas. Fórmula de interpolação com diferenças finitas 21

que é a igualdade que querı́amos provar.


Essas informações sobre as diferencas finitas são suficientes para resolver
o nosso primeiro problema: a representação do polinômio de interpolação .
Sejam, então, os nós da interpolação equidistantes e a função f definida sobre
eles. Procuramos o polinômio Ln (f ; x) de πn , que interpola f em x0 , . . . , xn .
De acordo com a fórmula de interpolação de Newton
n
X
Ln (f ; x) = f [x0 , . . . , xk ](x − x0 ) · · · (x − xk−1 ).
k=0

Sejam xi = x0 + ih, i = 0, . . . , n. Substituindo x por t usando a fórmula


x = x0 + th, temos que
k−1
Y
(x − x0 ) · · · (x − xk−1 ) = (x0 + th − x0 − ih) = hk t(t − 1) · · · (t − k + 1).
i=0

Agora, usando a relação entre diferença dividida e diferença finita, obtemos


n
X ∆k f0
Ln (f ; x) = Ln (f ; x0 + th) t(t − 1) · · · (t − k + 1).
k!
k=0
! Ã
t
Na literatura, encontramos a denotação para valores reais arbitrários do
k
parâmetro t. Com ele define-se a função binomial, que é dada pela igualdade
à ! (
t(t−1)···(t−k+1)
t k! para k > 0,
:=
k 1 para k = 0.

Consequentemente, a expressão obtida para o polinômio de interpolação pode


ser escrita do seguinte modo:
n
à !
X
k t
Ln (f ; x0 + th) ∆ f0 .
k=0
k

Essa é a fórmula de interpolação de Newton para interpolação progressiva. Ela é


assim chamada porque os nós são colocados
à ! em ordem crescente quando calcula-
t
mos os coeficientes dos polinômios . Notemos que o valor f (x0 ) participa
k
de todos os coeficientes, o valor no ponto seguinte, x1 , participa de todos desde
o segundo até o último, e o valor f (xn ) participa somente do último coeficiente.
Consequentemente, se quisermos calcular aproximadamente o valor de f em um
ponto x próximo de x0 , é bom usar a fórmula de Newton para interpolação
progressiva pois, nesta fórmula, participam essencialmente os valores de f em
22 Capı́tulo1. Aproximação de Funções

pontos que estão próximos de x0 e, por isso, trazem informações mais completas
para o valor de f em x. Seguindo essa lógica, devemos aproximar f (x) em pon-
tos, próximos do último nó xn , usando uma fórmula de interpolação em que os
nós são colocados em ordem oposta: xn , xn−1 , . . . , x0 . Obteremos esta fórmula
também. Pela fórmula de Newton
n
X
Ln (f ; x) = f [xn , xn−1 , . . . , xn−k ](x − xn ) · · · (x − xn−k+1 ).
k=0

Fazendo a substitução x = xn + th, obtemos


n k−1
X ∆k fn−k Y
Ln (f ; x) = Ln (f ; xn + th) = (xn + th − xn + ih).
k! i=0
k=0
e, consequentemente,
n
à !
X
k t+k−1
Ln (f ; xn + th) = ∆ fn−k .
k=0
k
Essa é a fórmula de Newton para interpolação regressiva.
Analogamente, podem ser obtidas fórmulas de interpolação quando os nós
aparecem em qualquer outra ordem. Por exemplo, se o ponto x está perto de
xi , é bom colocar os nós na seguinte ordem: xi , xi+1 , xi−1 , xi+2 , xi−2 , . . ..
O cálculo dos coeficientes do polinômio de interpolação com nós equidistantes
reduz-se ao cálculo de diferenças finitas. Tais cálculos podem ser organizados
através do seguinte esquema:
xi fi
.. ..
. .
x−3 f−3
∆f−3
x−2 f−2 ∆2 f−3
∆f−2 ∆3 f−3
x−1 f−1 ∆2 f−2
∆f−1 ∆3 f−2
x0 f0 ∆2 f−1
∆f0 ∆3 f−1
x1 f1 ∆2 f0
∆f1 ∆3 f0
2
x2 f2 ∆ f1
∆f2
x3 f3
.. ..
. .
1.5 Problema de interpolação de Hermite 23

Nas primeiras duas colunas são colocados os dados: nós da interpolação e os


valores da função. Depois, a tabela é preenchida, coluna por coluna, usando a
relação de recorrência para as diferenças finitas. Os números obtidos na diagonal
crescente, que começa em f0 são os coeficientes do polinômio de interpolação
quando usamos diferenças progessivas e os números da diagonal decrescente,
para interpolação progressiva. Notemos que somente subtraı́mos, enquanto que
o esquema das diferenças divididas dividimos também. Isto é uma vantagem
essencial do uso de diferencas finitas.

1.5 Problema de interpolação de Hermite


Até agora consideramos o problema de interpolação de Lagrange, que exige
a construção de um polinômio de grau ≤ n que, em n + 1 pontos distintos dados
x0 , . . . , xn assume valores y0 , . . . , yn , respectivamente. A fórmula de Lagrange
que dá a solução desse problema tem papel importante na análise numérica.
Consideraremos, agora, um problema mais geral, quando se procura um po-
linômio que interpola nao somente a função, mas suas derivadas também. Re-
presentemos, primeiro, a colocação rigorosa.
Sejam x0 , . . . , xn pontos distintos da reta real. Sejam ν0 , . . . , νn números
inteiros positivos e

{ykl , k = 0, . . . , n, l = 0, . . . , νk − 1}

uma tabela de valores reais arbitrários. Denotemos por N := ν0 + · · · + νn − 1.


O problema é construir um polinômio algébrico P de grau N , que satisfaz às
condições
P (l) (xk ) = ykl , k = 0, . . . , n, l = 0, . . . , νk − 1. (1.5.19)

Ele é conhecido como problema de interpolação de Hermite.

Teorema 6 Para toda escolha dos nós de interpolação {xk }n0 (xi 6= xj para
i 6= j) e para toda tabela de dados {ykl } o problema de interpolação de Hermite
(1.5.19) tem uma única solução .

Demonstração. As condições (1.5.19) representam um sistema de N + 1


equações lineares com N + 1 incógnitas - os coeficientes a0 , . . . , aN do polinômio
P (x). Esse sistema tem uma única solução se o seu determinante D da matriz
dos coeficientes é diferente de zero. Suponhamos D = 0. Então, o sistema
homogênio
P (l) (xk ) = 0, k = 0, . . . , n, l = 0, . . . , νk − 1
24 Capı́tulo1. Aproximação de Funções

tem uma solução não-zero P (x) = a0 xN + · · · + aN −1 x + aN (i.e., com pelo


menos um coeficiente ai diferente de zero). Mas, as condições acima significam
que P tem N + 1 zeros, contando as multiplicidades. Por outro lado, P ∈ πN .
Consequentemente, P (x) ≡ 0 e daı́ a0 = . . . = aN = 0. Chegamos a uma
contradição. O teorema está provado.
Consideremos a importante questão para nós de construir a solução. Começaremos
com um caso particular, quando ν0 = · · · = νn = 2. Acharemos, de forma
explı́cita, o polinômio de grau 2n + 1 que interpola uma função f dada e a sua
primeira derivada em n + 1 pontos x0 , . . . , xn . Para esse propósito usaremos as
notações
ω(x)
ω(x) = (x − x0 ) · · · (x − xn ) e ωk (x) = .
x − xk
Notemos, ainda, que

ω ′ (xk ) = ωk (xk ) = (xk − x0 ) · · · (xk − xk−1 )(xk − xk+1 ) · · · (xk − xn ).

Teorema 7 Sejam x0 , . . . , xn arbitrários pontos distintos da reta real. Então,


para toda escolha dos números y0 , . . . , yn e y0′ , . . . , yn′ o polinômio
n ¸2
ω ′′ (xk )
½ ¾·
X ω(x)
P (x) = yk 1 − ′ (x − xk )
ω (xk ) (x − xk ω ′ (xk )
k=0
n ½ ¾2
X ω(x)
+ yk′ (x − xk )
(x − xk )ω ′ (xk )
k=0

é de grau 2n + 1 e satisfaz às condições

P (xk ) = yk , P ′ (xk ) = yk′ , k = 0, . . . , n. (1.5.20)

Demonstração. De acordo com o Teorema 1, existe um único polinômio P


de π2n+1 que satisfaz às condições de interpolação (1.5.20). Procuremos esse
polinômio dado da forma
n
X n
X
P (x) = yk Φk0 (x) + yk′ Φk1 (x),
k=0 k=0

onde, para todo k ∈ {0, . . . , n}, os polinômios básicos Φk0 , Φk1 ∈ π2n+1 são
determinados pelas condições
Φk0 (xi ) = δki , Φ′k0 (xi ) = 0,
(1.5.21)
Φk1 (xi ) = 0, Φ′k0 (xi ) = δki ,
para i = 0, . . . , n. Usamos, aqui, o sı́mbolo de Kronecker δki ,
(
0 para k 6= i,
δki :=
1 para k = i.
1.5 Problema de interpolação de Hermite 25

Obviamente as condições (1.5.21) implicam imediatamente em (1.5.20). Isso


pode ser verificado direitamente. Vamos construir os polinômios Φk0 e Φk1 .
Comecemos com Φk0 . De (1.5.21), segue que Φk0 é da forma

Φk0 (x) = ωk2 (x)[A + B(x − xk )],

onde os constantes A e B são escolhidos de modo a satisfazerem as condições

Φk0 (xk ) = 1, Φ′k0 (xk ) = 0.

Pela primeira condição ,

Φk0 (xk ) = ωk2 (xk )A = 1

e determinamos A,
1 1
A= = ′ .
ωk2 (xk ) [ω (xk )]2
Substituimos esse valor na segunda condição,

Φ′k0 (xk ) = 2ωk (xk )ωk′ (xk )A + ωk2 (xk )B = 0

e determinamos B,
ωk′ (xk )
B = −2 .
ωk3 (xk )
Falta somente observar que 2ωk′ (xk ) = ω ′′ (xk ). De fato, temos
· ¸′
′ ω(x)
ωk (xk ) =
x − xk x=xk
ω ′ (x)(x − xk ) − ω(x) ω ′′ (xk )
= lim = .
x→xk (x − xk )2 2!
Consequentemente,
ω ′′ (xk )
· ¸
1
Φk0 (x) = ωk2 (x) − (x − xk )
ωk2 (xk ) ωk3 (xk )
¸2
ω ′′ (xk )
· ¸·
ω(x)
= 1− ′ (x − xk ) .
ω (xk ) (x − xk ω ′ (xk )
Pelas condições (1.5.21) podemos achar facilmente a forma explı́cita de Φk1 (x).
Desde que xi é raiz com multiplicidade 2 de Φk1 (x) para i 6= k e xk é raiz
simples, então
Φk1 (x) = Cωk2 (x)(x − xk ).
A constante C, determinamos pela condição Φ′k1 (xk ) = 1. Obtemos, então,

Cωk2 (xk ) = 1.
26 Capı́tulo1. Aproximação de Funções

Daı́, C = 1/ωk2 (xk ) = 1/[ω ′ (xk )]2 e, consequentemente,


· ¸2
ω(x)
Φk1 (x) = (x − xk ).
(x − xk )ω ′ (xk )
O teorema está provado.
Usualmente os números {yk } e {yk′ } são valores de alguma função f (x) e de
sua derivada f ′ (x) em pontos fixos {xk }. Nesse caso, o polinômio de interpolação
é chamado polinômio de interpolação de Hermite para a função f . Usando a
denotação para os polinômios fundamentais de Lagrange lnk (x) e o Teorema 2,
esse polinômio pode ser escrito da seguinte forma:
n
ω ′′ (xk )
X ½ ¾
2
P (x) = f (xk ) 1 − ′ (x − xk ) lnk (x)
ω (xk )
k=0
Xn
+ f ′ (xk )lnk
2
(x)(x − xk ).
k=0

Os números ν0 , . . . , νn são chamados multiplicidades dos nós x0 , . . . , xn . Re-


solvemos o problema de Hermite no caso de nós com multiplicidade igual a dois.
A solução pode ser dada para arbitrárias multiplicidades {νk }n0 . Escreveremos
os polinômios de Hermite no caso geral.
Dados os nós {xk }n0 com multiplicidades {νk }n0 , denotemos por Ω(x) a ex-
pressão (x − x0 )ν0 · · · (x − xn )νn . Seja N + 1 := ν0 + . . . + νn . O polinômio
n νX
X k −1

HN (f ; x) = f (λ) (xk )Hkλ (x), (1.5.22)


k=0 λ=0

onde
νkX
−λ−1 ¾(µ) ¯¯
(x − xk )νk
½
1 Ω(x) 1
Hkλ (x) = (x − xk )µ
¯
λ! (x − xk )νk −λ µ! Ω(x)
¯
¯
µ=0 x=xk

é de grau ≤ N e satisfaz às condições de interpolação (1.5.19) para


ykl = f (l) (xk ), k = 0, . . . , n, l = 0, . . . , νk − 1.
Para demonstrar esta afirmação, basta verificar que os polinômios Hkλ (x)
satisfazem às exigências

 0 para i 6= k, j = 0, . . . , νi − 1,

(j)
Hkλ (xi ) = 0 para i = k, j 6= λ,

1 para i = k, j = λ.
Quando i 6= k a igualdade segue pelo fato que Hkλ tem o fator (x − xi )νi .
(j)
Temos que mostrar que Hkλ (xk ) = δjλ . Para este proposito, vamos denotar
1.5 Problema de interpolação de Hermite 27

por Tm (g; x) o polinômio de Taylor de grau m que interpola a função g e as suas


derivadas até a ordem m no ponto xk . Temos
m
X g (s) (xk )
Tm (g; x) := (x − xk )s .
s=0
s!

(s)
Desde que g (s) (xk ) = Tm (g; xk ) para s = 0, . . . , m, é claro que
¯ ¯
(s) ¯ (s) ¯
{f (x)g(x)} ¯ = {f (x) Tm (g; x)} ¯
x=xk x=xk

para 0 ≤ s ≤ m. Vamos observar, agora, que

1 (x − xk )λ
Hkλ (x) = Tνk −λ−1 (g; x),
λ! g(x)

onde g(x) = (x − xk )νk /Ω(x). Consequentemente


¾(j) ¯¯
(x − xk )λ
½
(j) 1
Hkλ (xk ) = Tνk −λ−1 (g; x)
¯
λ! g(x)
¯
¯
(j)
¯ x=xk
1 (x − xk )λ
½ ¾ ¯
= Tνk −1 (g; x)
¯
λ! g(x)
¯
¯
x=xk
(j) ¯
¯
1 (x − xk )λ
½ ¾
= g(x)
¯
λ! g(x)
¯
¯
¯ x=xk
1 © ¯
(j) ¯
(x − xk )λ
ª
= = δjλ ,
λ!
¯
¯
x=xk

o que é que tivemos que mostrar.


Agora, daremos uma estimativa para o erro quando aproximamos f (x) por
HN (f ; x).

Teorema 8 Sejam a ≤ x0 < · · · < xn ≤ b e {νk }n0 arbitrários números


inteiros positivos. Suponha que f tem derivada contı́nua de ordem N + 1
em [a, b], N := ν0 + · · · + νn − 1. Então, para todo x ∈ [a, b], existe ξ ∈
(min{x, x0 , . . . , xn }, max{x, x0 , . . . , xn }), tal que

f (N +1) (ξ)
f (x) − HN (f ; x) = (x − x0 )ν0 · · · (x − xn )νn . (1.5.23)
(N + 1)!

Demonstração. A demonstração de (1.5.23) é feita da mesma maneira que a


demonstração do caso de interpolação de Lagrange. Construimos a função

F (z) = f (z) − HN (f ; z) − CΩ(z)


28 Capı́tulo1. Aproximação de Funções

e escolhemos C de modo que F (z) tem raiz z = x. Então, F (z) tem N + 2


zeros: x0 , . . . , xn com multiplicidades ν0 , . . . , νn e o ponto x. Pelo teorema de
Rolle, F (N +1) (z) tem pelo menos um zero entre a maior e a menor raı́z de F (z).
Denotamos esse zero por ξ. Obtemos C pela igualdade F (N +1) (ξ) = 0 e pela
condição F (x) = 0. O resultado é (1.5.23). O teorema está provado.

1.6 Diferenças divididas com nós múltiplos


A noção de diferença dividida em alguns pontos dados x0 , . . . , xN foi intro-
duzida sob a hipótese de que os pontos são distintos, i.e, xi 6= xj para i 6= j.
Existe uma generalização natural desta noção, que faz sentido para qualquer
sequência arbitrária de pontos. A relação estreita entre a diferença dividida e a
fórmula de Newton sugere que poderı́amos usar as diferenças divididas generali-
zadas para a construção do polinômio interpolador com nós múltiplos, i.e., para
a solução do problema de interpolação de Hermite. Introduziremos as diferenças
e provaremos algumas de suas propriedades.
Seja x̄ = (x0 , . . . , xN ) uma sequência arbitrária de pontos. É conveniente
supor que eles estão ordenados em ordem crescente, x0 ≤ x1 ≤ · · · ≤ xN . Seja
f uma função suficientemente suave (i.e, com derivadas contı́nuas de ordem
suficientemente grande) e definida em x0 , . . . , xN . Desde que os pontos {xi }
não são obrigatoriamente distintos, vamos pensar que eles estão divididos em
n grupos de pontos coincidentes. Mais precisamente, sejam os primeiros ν1
pontos coincidentes com t1 , os próximos ν2 coincidentes com t2 , . . . , os últimos
νn pontos coincidentes com tn , onde t1 < · · · < tn . Escreveremos da seguinte
maneira mais sucinta,

x̄ = (x0 , . . . , xN ) ≡ ((t1 , ν1 ), . . . , (tn , νn )).

Aqui (t, ν) significa que o ponto t é escrito consecutivamente ν vezes na sequência.


É claro que N + 1 = ν1 + · · · + νn . Vamos dizer que o polinômio p interpola f
nos pontos x̄, se p ∈ πN e

p(j) (ti ) = f (j) (ti ), i = 1, . . . , n, j = 0, . . . , νi − 1,

isto é, se p interpola f nos nós ((t1 , ν1 ), . . . , (tn , νn )) no sentido de Hermite.

Definição 3 A diferença dividida da função f nos pontos x0 , . . ., xN é o coefi-


ciente de xN do polinômio p(x) que interpola f nos mesmos pontos x0 , . . . , xN .
1.6 Diferenças divididas com nós múltiplos 29

Denotaremos esta diferença dividida generalizada também por f [x0 , . . . , xN ].


Notemos que quando os pontos x0 , . . . , xN são distintos esta definição é equi-
valente á definição da diferença dividida simples dada anteriormente. A equi-
valência segue imediatamente do teorema 3.1.
Como exemplo, vamos achar a diferença dividida generalizada f [a, . . . , a] de
f no ponto a com multiplicidade N + 1. É conhecido que o polinômio

f ′ (a) f (N ) (a)
p(x) = f (a) + (x − a) + · · · + (x − a)N ,
1! N!
construı́do pela fórmula de Taylor satisfaz à condição

p(j) (a) = f (j) (a), j = 0, . . . , N.

Em outras palavras, o polinômio p interpola f no ponto a com multiplicidade


N + 1. Pela forma explı́cita de p vemos que o coeficiente de ordem xN é igual
a f (N ) (a)/N !. Consequentemente, de acordo com a definição acima,

f (N ) (a)
(1) f [x0 , . . . , xn ] = para x0 = · · · = xN = a.
N!
A razão principal para introduzir essas diferenças divididas é revelada na
seguinte afirmação.

Teorema 9 Sejam x̄ = (x0 , . . . , xN ), a ≤ x0 ≤ · · · ≤ xN ≤ b, pontos ar-


bitrários. Seja f com derivadas contı́nuas até ordem N em [a, b]. Então, o
polinômio
N
X
(2) p(x̄, f ; t) := f [x0 , . . . , xk ](t − x0 ) · · · (t − xkn1 )
k=0

interpola f nos pontos x̄.

Demonstração. Aplicaremos indução com relação ao número de pontos. Para


N = 0 temos p(x̄, f ; t) = f (x0 ) e a afirmação é obviamente verdadeira. Vamos
supor que o teorema é verdadeiro para N pontos arbitrários x0 ≤ · · · ≤ xN .
Como já sabemos da seção anterior, existe um único polinômio H(t) de πN
que interpola f nos pontos x̄. Provaremos que H(t) ≡ p(x̄, f ; t). Para este
propósito, vamos notar primeiramente que, de acordo com a hipótese da indução
, o polinômio

N
X −1
p1 (t) := f [x0 , . . . , xk ](t − x0 ) · · · (t − xk−1 )
k=0
30 Capı́tulo1. Aproximação de Funções

interpola f nos pontos x0 , . . . , xN −1 . Desde que

p(x̄, f ; t) = p1 (t) + f [x0 , . . . , xN ](t − x0 ) · · · (t − xN −1 ),

p(x̄, f ; t) também interpola f em x0 , . . . , xN −1 . Segue que o polinômio


R(t) := H(t)−p(x̄, f ; t) é zero em x0 , . . . , xN −1 . Desde modo, R tem pelo menos
N zeros. Mas, por construção, o coeficiente de tN em p(x̄, f ; t) é f [x0 , . . . , xN ] e
o coeficiente de tN em H(t) também é f [x0 , . . . , xN ] pela definição de diferença
dividida generalizada. Consequentemente, o coeficiente de tN em R(t) é igual a
zero. Isto significa que R(t) é um polinômio algébrico de grau N − 1. Já obser-
vamos que R(t) tem pelo menos N zeros. Logo, pelo teorema fundamental da
álgebra R(t) ≡ 0 e daı́ H(t) ≡ p(x̄, f ; t). A indução está completa e o teorema
está provado.
O teorema 1 mostra que a fórmula de interpolação de Newton vale para pon-
tos arbitrários não obrigatoriamente distintos x0 , . . ., xN . Este fato permite-nos
usar a fórmula clássica de Newton para resolver o problema mais complexo de
Hermite. Para o uso prático da fórmula (2) precisamos de método efetivo para
calcular as diferenças divididas generalizadas de uma dada função. Mostrare-
mos, agora, que o esquema simples para cálculo de diferenças divididas com
nós distintos pode ser reajustado para calcular as diferenças divididas no caso
geral. Para fazermos isto, provaremos, primeiramente, um lema que é também
de interesse geral.

Lema 2 Sejam ξ, t1 , . . . , tm pontos arbitrários e f uma função suficientemente


suave definida nesses pontos. Então,

(3) {(x − ξ)f (x)}[ξ, t1 , . . . , tm ] = f [t1 , . . . , tm ].

Demonstração. Vamos esclarecer que o lado esquerdo de (3) é a diferença


dividida da função (x − ξ)f (x) nos pontos ξ, t1 , . . . , tm .
Seja p o polinômio de πm−1 que interpola f em t1 , . . . , tm . Obviamente
o polinômio q(x) := (x − ξ)p(x) interpola a função (x − ξ)f (x) nos pontos
ξ, t1 , . . . , tm . De acordo com a definição de diferenças divididas, o lado esquerdo
de (3) é o coeficiente de xm em q e o lado direito coincide com o coeficiente
de xm−1 em p. Mas esses dois coeficientes são os mesmos por causa da relação
q(x) = (x − ξ)p(x). A igualdade (3) está provada.
Já estamos prontos para mostrar a relação de recorrência das diferenças
divididas.

Teorema 10 Suponha que f tem derivadas contı́nuas em [a, b] até a ordem k


1.6 Diferenças divididas com nós múltiplos 31

inclusive. Então, a relação de recorrência



f [x1 ,...,xk ]−f [x0 ,...,xk−1 ]

 xk −x0 , quando x0 < xk
(4) f [x0 , . . . , xk ] =
 f (k) (x0 )

k! , quando x0 = xk ,
vale para arbitrários pontos x0 ≤ . . . ≤ xk em [a, b].

Demonstração. O caso x0 = xk segue da fórmula (1), já provada. Vamos


supor agora que x0 < xk . Desde que a diferença dividida é um funcional linear,
então

(xk − x0 )f [x0 , . . . , xk ] = {(xk − x + x − x0 )f (x)}[x0 , . . . , xk ]

= {(xk − x)f (x)}[x0 , . . . , xk ] + {(x − x0 )f (x)}[x0 , . . . , xk ].

Do Lema 2

{(xk − x)f (x)}[x0 , . . . , xk ] = −f [x0 , . . . , xk−1 ],

{(x − x0 )f (x)}[x0 , . . . , xk ] = f [x1 , . . . , xk ].

Consequentemente, para x0 < xk , temos

(xk − x0 )f [x0 , . . . , xk ] = f [x1 , . . . , xk ] − f [x0 , . . . , xk−1 ] ,

que é exatamente a relação (4). O teorema está provado.


Problema. Construir o polinômio p de π3 , que satisfaz às condições de inter-
polação
p(0) = 1, p′ (0) = 0, p′′ (0) = 2, p(1) = −1 .
Solução. Neste caso, temos x0 = x1 = x2 = 0, x3 = 1. De acordo com a
fórmula de interpolação de Newton (com diferenças divididas generalizadas)

p(x) = p(x0 ) + p[x0 , x1 ](x − x0 ) + p[x0 , x1 , x2 ](x − x0 )(x − x1 )

+ p[x0 , x1 , x2 , x3 ](x − x0 )(x − x1 )(x − x2 )

= p(0) + p[0, 0]x + p[0, 0, 0]x2 + p[0, 0, 0, 1]x3 .

Para o cálculo das diferenças divididas usaremos a tabela abaixo onde as


primeiras duas colunas contêm os dados e as próximas são preenchidas usando
a relação de recorrência (4).
32 Capı́tulo1. Aproximação de Funções

tabela

xi p(xi ) p[·, ·] p[·, ·, ·] p[·, ·, ·, ·]

0 1
0
0 1 1
0 -3
0 1 −2
−2
1 −1

Os números marcados com quadrados são as diferenças divididas procuradas.


Obtemos
p(x) = 1 + 0.x + 1.x2 − 3.x3 = −3x3 + x2 + 1 .

Uma verificação direta mostra que o polinômio obtido satisfaz às condições
de interpolação.
Continuidade da diferença dividida. Pela definição de diferença divi-
dida, para toda sequência x0 , . . . , xN de pontos distintos, poderı́amos extender
esta definição para quaisquer pontos por continuidade (isto é, por limite). Por
exemplo, poderı́amos definir a diferença dividida de f no ponto a com multipli-
cidade 2 pela igualdade

f [a, a] = lim f [a, a + h] ,


h→0

o que é a extenção mais natural desta noção.


Desde que

f (a + h) − f (a)
lim f [a, a + h] = lim = f ′ (a),
h→0 h→0 h
se f é uma função diferenciável em a, por esta abordagem obterı́amos

f [a, a] = f ′ (a).

Mas, este é exatamente o resultado que já obtivemos pela nossa definição. Acon-
tece que as duas abordagens conduzem ao mesmo resultado não somente neste
caso particular. Em geral, são equivalentes. Esta afirmação é consequência da
1.6 Diferenças divididas com nós múltiplos 33

propriedade de continuidade da diferença dividida generalizada introduzida pela


primeira definição desta seção.
Vamos provar, primeiramente, a continuidade em um caso particular.

Lema 3 Seja xi → a para i = 0, . . . , N . Se f tem a N-ésima derivada contı́nua,


então
f [x0 , . . . , xN ] → f [a, . . . , a].

Demonstração. Sejam x0 , . . . , xN pontos arbitrários. Sem perda de genera-


lidade, vamos supor que x0 ≤ . . . ≤ xN . Seja p o polinômio de πN que interpola
f em x̄ = (x0 , . . . , xN ). Mais precisamente, se

x̄ = (x0 , . . . , xN ) = ((t1 , ν1 ), . . . , (tn , νn )),

então,
p(j) (ti ) = f (j) (ti ), i = 1, . . . , n, j = 0, . . . , νi − 1.
Consequentemente a diferença f (x)−p(x) tem pelo menos N +1 zeros, contando
as multiplicidades. Então, pelo Teorema de Rolle, f ′ (x) − p′ (x) tem pelo menos
N zeros, . . . , f (N ) (x) − p(N ) (x) tem pelo menos um zero ξ e este zero pertence
ao intervalo [x0 , xN ]. Temos

f (N ) (ξ) = p(N ) (ξ) .

O coeficiente de xN em p(x) é igual f [x0 , . . . , xN ]. Consequentemente p(N ) (ξ) =


N ! f [x0 , . . . , xN ] e por isto
f (N ) (ξ)
(5) f [x0 , . . . , xN ] = .
N!
Assim, para pontos arbitrários x0 , . . . , xN (x0 ≤ . . . ≤ xN ), existe um ponto ξ
de [x0 , xN ] tal que a igualdade (5) vale. Este fato é conhecido para as diferenças
divididas simples. Agora podemos facilmente provar o lema. De fato, vamos
fazer xi em (5) convergir para a, para i = 0, . . . , N . Desde que x0 ≤ ξ ≤ xN , o
lema do sandwich mostra que a sequência dos correspondentes pontos ξ converge
para a. Desde que f (N ) é contı́nua, por (5) obtemos
f (N ) (ξ) f (N ) (a)
lim f [x0 , . . . , xN ] = lim = = f [a, . . . , a] (de acordo com (1))
xi →a ξ→a N! N!
e o lema está provado.

Teorema 11 Seja ȳ = (y0 , . . . , yN ) uma escolha arbitrária de pontos e x̄ → ȳ,


isto é
|xi − yi | → 0 para i = 0, . . . , N.
Então f [x0 , . . . , xN ] → f [y0 , . . . , yN ].
34 Capı́tulo1. Aproximação de Funções

Demonstração. Em outras palavras, a diferença dividida é uma função


contı́nua dos seus argumentos. É claro que a função deve ser suficientemente
suave. Provaremos o teorema por indução. Para N = 1 a afirmação é óbvia
quando y0 < y1 e quando y0 = y1 = a temos f [y0 , y1 ] = f ′ (a) e a continui-
dade segue pelas considerações acima. Vamos supor, agora, que f [t1 , . . . , tN ] é
função contı́nua de t1 , . . . , tN na região t1 ≤ t2 ≤ . . . ≤ tN . Usando a relação
de recorrência (3) provaremos que f [t0 , . . . , tN ] é função contı́nua em um ponto
fixo ȳ = (y0 , . . . , yN ), y0 ≤ . . . ≤ yN . Para y0 = yN está afirmação foi provada
no lema 4. Seja y0 < yN . Desde que x̄ → ȳ, então, para x̄ suficientemente perto
do ponto ȳ, temos x0 < xN . Logo, pela relação de recorrência (4) e usando a
hipótese de indução , obtemos

f [x1 , . . . , xN ] − f [x0 , . . . , xN −1 ]
lim f [x0 , . . . , xN ] = lim
x̄→ȳ x̄→ȳ xN − x0
½ ¾
1
= lim f [x1 , . . . , xN ] − lim f [x0 , . . . , xN −1 ]
yN − y0 x̄→ȳ x̄→ȳ

f [y1 , . . . , yN ] − f [y0 , . . . , yN −1 ]
= = f [y0 , . . . , yN ] .
yN − y0
O teorema está provado.
A seguinte afirmação nos dá uma regra para se calcular diferenças divididas
do produto de duas funções.

Lema 4 (Stevenson) Para pontos arbitrários x0 , x1 , . . . , xn e funções f e g


suficientemente suaves definidas nesses pontos, a seguinte representação vale
n
X
(f g)[x0 , . . . , xn ] = f [x0 , . . . , xk ] g[xk , . . . , xn ] .
k=0

Demonstração. Aplicaremos indução no número dos pontos. Para um ponto


temos (f g)[x0 ] = f (x0 )g(x0 ) = f [x0 ]g[x0 ] e a afirmação é obviamente ver-
dadeira. Vamos supor que ela é verdadeira para quaisquer n pontos. Sejam
x0 , . . . , xn , n + 1 pontos arbitrários. Representemos f pela fórmula de inter-
polação de Newton:

f (x) = f (x0 ) + f [x0 , x](x − x0 ).

Então,

(f g)[x0 , . . . , xn ] = {(f (x0 ) + f [x0 , x](x − x0 ))g(x)} [x0 , . . . , xn ]


1.7 Sistemas de Chebyshev: interpolação por polinômios trigonométricos 35

= f (x0 )g[x0 , . . . , xn ] + {f [x0 , x](x − x0 ))g(x)} [x0 , . . . , xn ].

Mas, pelo lema 2,

{f [x0 , x](x − x0 ))g(x)} [x0 , . . . , xn ] = {f [x0 , x]g(x)} [x1 , . . . , xn ].

Aplicando a hipótese de indução para o último produto obtemos


n
X
(f g)[x0 , . . . , xn ] = f (x0 )g[x0 , . . . , xn ] + f [x0 , . . . , xk ] g[xk , . . . , xn ]
k=1
n
X
= f [x0 , . . . , xk ] g[xk , . . . , xn ].
k=0

A demonstração está completa.

1.7 Sistemas de Chebyshev: interpolação por


polinômios trigonométricos
Problema de interpolação. Sejam ϕ0 (x), . . . , ϕn (x) funções linearmente
independentes em [a, b]. As combinações lineares a0 ϕ0 (x) + . . . + an ϕn (x) são
chamadas polinômios generalizados do sistema {ϕi }. Consideremos o problema
de interpolação por polinômios generalizados. Dados os nós x0 < · · · < xn
em [a, b] e valores y0 , . . . , yn , procuramos um polinômio generalizado ϕ(x) =
a0 ϕ0 (x) + · · · + an ϕn (x), que satisfaça às condições de interpolação

(1) a0 ϕ0 (xk ) + . . . + an ϕn (xk ) = yk , k = 0, . . . n.

Mas (1) é um sistema linear com relação a a0 , . . . , an . Consequentemente, o


problema de interpolação (1) tem solução única para qualquer escolha de {yk }
se, e somente se, o determinante da matriz dos coeficientes é diferente de zero.
Nada mais pode ser afirmado neste caso mais geral.
n
São de interesse aqueles sistemas de funções {ϕi }0 , para os quais o pro-
blema de interpolação (1) tem uma única solução para qualquer escolha dos
nós x0 < · · · < xn em [a, b] e para qualquer escolha dos valores y0 , . . . , yn . Por
exemplo, o sistema algébrico ϕk (x) = xk , k = 0, . . . n. Consideremos, agora,
n
uma classe de sistemas {ϕi }0 que satisfaz essa exigência e, consequentemente,
são generalizações naturais dos polinômios algébricos clássicos.

Definição 4 Dizemos que as funções ϕ0 (x), . . . , ϕn (x) formam um sistema de


Chebyshev no intervalo I se qualquer polinômio generalizado não-nulo desse
sistema tem no máximo n zeros distintos em I.
36 Capı́tulo1. Aproximação de Funções

Vamos lembrar que a0 ϕ0 (x)+· · ·+an ϕn (x) é um polinômio generalizado não-


n
nulo se pelo menos um dos coeficientes {ai }0 é diferente de zero. Os sistemas
de Chebyshev são chamados também T-sistemas.
Vamos denotar por D[x0 , . . . , xn ] a matriz dos coeficientes do sistema linear
(1).

Teorema 12 As funções ϕ0 , . . . , ϕn formam um sistema de Chebyshev no in-


tervalo I se, e somente se,

det D[x0 , . . . , xn ] 6= 0

para qualquer escolha dos pontos x0 < · · · < xn em I.

Demonstração. Seja ϕ0 , . . . , ϕn um sistema de Chebyshev em I. Vamos


supor que det D[x0 , . . . , xn ] = 0 para alguns pontos x0 < · · · < xn de I. Então,
as colunas da matriz D[x0 , . . . , xn ] são linearmente dependentes, ou seja, existem
números b0 , . . . , bn , com pelo menos um diferente de zero, tais que

(2) b0 ϕ0 (xk ) + b1 ϕ1 (xk ) + · · · + bn ϕn (xk ) = 0, para k = 0, . . . , n.

Mas, essas igualdades significam que o polinômio generalizado não-nulo


ϕ(x) := b0 ϕ0 (x) + · · · + bn ϕn (x) tem pelo menos n + 1 zeros distintos, a saber,
x0 , . . . , xn . Isto contradiz a definição de sistema de Chebyshev. Reciproca-
mente, seja det D[x0 , . . . , xn ] 6= 0 para qualquer escolha de x0 < · · · < xn em I.
Vamos supor que o sistema ϕ0 , . . . , ϕn não é um sistema de Chebyshev. Então,
existe um polinômio generalizado não nulo ϕ(x) := b0 ϕ0 (x) + · · · + bn ϕn (x) e
n + 1 pontos distintos em I tais que ϕ(xk ) = 0 para k = 0, . . . , n. Isto signi-
fica que o sistema homogênio (2) tem solução não nula b0 , . . . , bn . Portanto, o
determinante do sistema é zero, ou seja, det D[x0 , . . . , xn ] = 0. Contradição! O
teorema está provado.
Uma consequência imediata da propriedade provada para os sistemas de
Chebyshev é o seguinte teorema de interpolação.

Teorema 13 Suponha que as funções ϕ0 (x), . . . , ϕn (x) formam um sistema de


Chebyshev no intervalo I. Então, para quaisquer nós x0 < · · · < xn de I e para
quaisquer valores y0 , . . . , yn o problema de interpolação

a0 ϕ0 (xk ) + · · · + an ϕn (xk ) = yk , k = 0, . . . , n,

tem solução única.


1.7 Sistemas de Chebyshev: interpolação por polinômios trigonométricos 37

De fato, o problema de interpolação tem uma única solução se, e somente


se, det D[x0 , . . . , xn ] 6= 0 e Teorema 2 segue imediatamente do Teorema 1 já
provado.
Exemplos de T-sistemas:
1) As funções 1, x, x2 , . . . , xn formam um T -sistema em cada subintervalo da
reta real.
2) As funções x, x3 , x5 , . . . , x2n+1 formam um T -sistema em cada subintervalo
de (0, ∞).
3) As funções 1, xα1 , . . . , xαn formam um T -sistema em cada subintervalo de
(0, ∞) para números reais arbitrários 0 < α1 < · · · < αn .
1 1
4) As funções x−x 0
, . . . , x−x n
formam um T -sistema em cada subintervalo que
não contém os pontos x0 , . . . , xn .
5) Se p(x) é uma função monôtona e contı́nua em [−1, 1] e tal que p(−1) =
−1, p(1) = 1, então as funções 1, p(x), p2 (x), . . . , pn (x) formam um T -sistema
em [−1, 1].
Interpolação por polinômios trigonométricos. Cada expressão da
forma
n
X
tn (x) = a0 + (ak cos kx + bk sen kx)
k=1

é chamada polinômio trigonométrico de ordem n. Os polinômios trigonométricos


são funções periódicas de perı́odo 2π. Eles são ferramentas convenientes para
aproximar funções que descrevem fenômenos periódicos.
Vamos tratar do problema de interpolação de funções periódicas por po-
linômios trigonométricos. Primeiramente, forneceremos um limite para o número
e zeros de um polinômio trigonométrico em um intervalo com comprimento 2π.

Lema 5 Todo polinômio trigonométrico não-nulo de ordem n tem no máximo


2n zeros distintos em [0, 2π).

Demonstração. Consideremos a mudança de variáveis z = eix em tn (x).


Para x ∈ [0, 2π) a variável z descreve a circunferência unitária. Desde que

eikx + e−ikx z k + z −k
cos kx = = ,
2 2
eikx ne−ikx z k − z −k
sen kx = = ,
2i 2i
então

1X
tn (x) = a0 + [(ak − ibk )z k + (ak + ibk )z −k ]
2
k=1
38 Capı́tulo1. Aproximação de Funções

n
X 2n
X
= ck z k = z −n ck−n z k =: z −n P2n (z),
k=−n k=0

onde c0 = a0 e
1
ck = (ak − ibk ), k = 1, . . . , n,
2
1
c−k = (ak + ibk ), k = 1, . . . , n.
2
Vamos supor, agora, que o polinômio trigonométrico não nulo tn (x) tem
2n + 1 zeros distintos em [0, 2π). A relação acima implica que o polinômio
algébrico P2n (z) tem 2n+1 zeros distintos na circunferência unitária. De acordo
com o teorema fundamental da álgebra, ele tem 2n zeros em todo o plano
complexo ou é identicamente zero. Portanto, P2n ≡ 0. Segue que ck = 0,
k = n, . . . , n, o que implica nas igualdades ak = 0, bk = 0 para todo k admissı́vel.
Assim obtemos tn (x) ≡ 0. O lema está provado.
Como consequência imediata do lema podemos concluir que as funções

1, cos x, sen x, cos 2x, sen 2x, . . . , cos nx, sen nx

formam um sistema de Chebyshev em todo intervalo da forma [α, α + 2π). Isto


nos permite formular a seguinte afirmação no caso particular de interpolação
por polinômios generalizados por sistemas de Chebyshev.

Teorema 14 Sejam α ≤ x0 < · · · < x2n < α + 2π. Então, para toda função
2n
f definida nos pontos {xi }0 existe um único polinômio trigonométrico , tn , de
ordem n, tal que

(1) tn (xi ) = f (xi ), i = 0, . . . , 2n.

Agora, procuraremos uma expressão explı́cita para esse polinômio trigonométrico.


Fazendo uma analogia com a fórmula de Lagrange, procuraremos um polinômio
da forma:
2n
X
(2) tn (x) = f (xk )λk (x).
k=0

Afirmamos que
2n
Y sen x−x
2
i

(3) λk (x) = xk −xi .


i6=k,i=0
sen 2
1.7 Sistemas de Chebyshev: interpolação por polinômios trigonométricos 39

As funções λk satisfazem às condições

λk (xj ) = 0, j 6= k,

λk (xk ) = 1,

de onde segue imediatamente que a expressão (2) satisfaz às condições de in-
terpolação (1). Precisamos somente nos convencer de que λk (x), e daı́ também
tn (x), é de fato um polinômio trigonométrico de ordem n. Para este fim, usare-
mos indução em n.
Para n = 1 a expressão λk (x) é um produto de dois senos, ou seja, ela é da
forma
x−α x−β
sen sen .
2 2
Usando fórmulas conhecidas para transformações trigonométricas, obtemos
· µ ¶¸
x−α x−β 1 β−α α+β
sen sen = cos − cos x −
2 2 2 2 2
1 β−α 1 α+β 1 α+β
= cos − cos x cos − sen x sen
2 2 2 2 2 2

= A0 + A1 cos x + B1 sen x

e, portanto, λk é um polinômio trigonométrico de ordem 1. Vamos supor, agora,


que todo produto de n − 1 pares de senos é um polinômio trigonométrico de
ordem n − 1. Vamos considerar uma expressão arbitrária λk (x) da forma (3).
Obviamente ela pode ser escrita da seguinte maneira
2n
Y x − xi
λk (x) = C sen
2
i=0,i6=k
n−1
( )½ ¾
Y x − αi x − βi x−α x−β
= C sen sen sen sen ,
i=1
2 2 2 2

onde C é constante. Mas, de acordo com a hipótese de indução as duas ex-


pressões entre chaves são polinômios trigonométricos de ordem n − 1 e 1, res-
pectivamente, e, portanto
n−1
" #
X
λk (x) = a0 + (ak cos kx + bk sen kx) [A0 + A1 cos x + B1 sen x] .
k=1

Multiplicando, obtemos para λk uma expressão que é uma combinação linear


de funções trigonométricas da forma

cos kx cos mx, cos kx sen mx, sen kx sen mx,


40 Capı́tulo1. Aproximação de Funções

onde k + m ≤ n. Mas, pelas fórmulas de multiplicação de senos e cossenos,


temos
1
cos kx sen mx = [ sen (k + m)x − sen (k − m)x],
2
1
cos kx cos mx = [cos(k − m)x + cos(k + m)x],
2
1
sen kx sen mx = [cos(k − m)xn cos(k + m)x].
2
Consequentemente λk (x) é representado como combinação linear de

sen kx, cos kx, k = 0, . . . , n,

o que significa que λk (x) é um polinômio trigonométrico de ordem n. A indução


está completa. Então, a expressão tn (x) é um polinômio trigonométrico de
ordem n e satisfaz às condições de interpolação (1).
Daqui para frente, dada a função f , denotaremos este polinômio por τn (f ; x).
Vamos formular a afirmação que acabamos de provar.

Teorema 15 Sejam {xk }2n k=0 pontos arbitrários tais que α ≤ x0 < x1 < · · · <
x2n < α + 2π para algum α e seja f uma função arbitrária definida nesses
pontos. Então,
2n 2n
X Y sen x−x
2
i

τn (f ; x) = f (xk )
k=0 i=0,i6=k
sen xk −x
2
i

é o único polinômio trigonométrico de ordem n que interpola f em x0 , . . . , x2n .

Quando os nós xk são equidistantes, o polinômio interpolador pode ser escrito


de uma forma mais conveniente. Consideremos, agora, esta forma. Para isto
provaremos, primeiramente, a identidade trigonométrica

sen n + 21 x
¡ ¢
1
(4) + cos x + cos 2x + · · · + cos nx = .
2 2 sen x2

Temos µ ½ ¾¶
x 1
2 sen + cos x + cos 2x + · · · + cos nx
2 2

x x x x
= sen + 2 cos x sen + 2 cos 2x sen + · · · + 2 cos nx sen
2 2 2 2
µ ¶ µ ¶
x 3x x 5x 3x
= sen + sen − sen + sen − sen + ···
2 2 2 2 2
1.7 Sistemas de Chebyshev: interpolação por polinômios trigonométricos 41

µ ¶
1 1
+ sen (n + )x − sen (n − )x
2 2
µ ¶
1
= sen n + x,
2

que é equivalente à identidade considerada.


A função
sen n + 21 x
¡ ¢
Dn (x) :=
2 sen x2
é chamada núcleo de Dirichlet. Vamos considerar algumas de suas propriedades
dela. Por (4) vemos que
1
Dn (0) = n + .
2
Denotemos por {xk } os nós equivalentes

2kπ
xk = , k = 0, . . . , 2n.
2n + 1
O núcleo de Dirichlet é zero em todos os nós xk que são distintos de x0 = 0.
De fato:
³ ´
sen 2n+12
2kπ
2n+1 sen kπ
Dn (xk ) = kπ
= kπ
= 0 z k = 1, 2, . . . , 2n.
2 sen 2n+1 2 sen 2n+1

Essas duas propriedades implicam que a função


2
λk (x) := Dn (x − xk )
2n + 1
satisfaz às condições de interpolação

λk (xi ) = δki , k, i = 0, . . . , 2n.

De fato,
µ ¶
2 2 1
λk (xk ) = Dn (xk − xk ) = n+ = 1,
2n + 1 2n + 1 2

e, para i 6= k,
2
λk (xi ) = Dn (xi − xk )
2n + 1
µ ¶
2 2π
= Dn (i − k)
2n + 1 2n + 1
2
= Dn (xi−k ) = 0.
2n + 1
42 Capı́tulo1. Aproximação de Funções

Mas, λk (x) é um polinômio trigonométrico de ordem n (isto é consequência da


identidade (4)). Consequentemente λk (x), k = 0, . . . , 2n, podem servir como
polinômios básicos quando interpolamos nos pontos {xk }. Portanto, a fórmula
de interpolação com nós de interpolação equidistantes toma a forma
2n
X 2
τn (f ; x) = f (xk ) Dn (x − xk )
2n + 1
k=0

e, finalmente,
2n
sen (n + 12 )(x − xk )
¡ ¢
1 X
(5) τn (f ; x) = f (xk ) .
2n + 1
k=0
sen x−x 2
k

1.8 Transformada rápida de Fourier


Já sabemos que, para dados nós 0 ≤ x0 < · · · < x2n < 2π e valores
f (x0 ), . . . , f (x2n ), existe um único polinômio trigonométrico τ (x) de ordem n
que satisfaz às condições de interpolação

τ (xk ) = f (xk ), k = 0, . . . , 2n.

Vamos representar τ (x) na forma usual


n
a0 X
τ (x) = + ak cos kx + bk sen kx
2
k=1

no caso em que os nós são equidistantes, isto é, para

2kπ
xk = , k = 0, . . . , 2n.
2n + 1

Para este propósito, vamos lembrar que, de acordo com a fórmula (5) da Seção
1.7,
2n
sen n + 12 (x − xk )
¡ ¢
1 X
τ (x) = f (xk )
2n + 1
k=0
sen x−x
2
k

2n ½ ¾
2 X 1
= f (xk ) + cos(x − xk ) + · · · + cos n(x − xk ) .
2n + 1 2
k=0

Daı́, usando a igualdade

cos m(x − xk ) = cos mx cos mxk + sen mx sen mxk ,


1.8 Transformada rápida de Fourier 43

obtemos
2n n
à !
2 X 1 X
τ (x) = f (xk ) + cos mxk cos mx + sen mxk sen mx
2n + 1 2 m=1
k=0
n
1 X
= A0 + (Am cos mx + Bm sen mx) ,
2 m=1

onde
2n
2 X 2kmπ
Am := f (xk ) cos ,
2n + 1 2n + 1
k=0
(1)
2n
2 X 2kmπ
Bm := f (xk ) sen .
2n + 1 2n + 1
k=0
Consequentemente, o cálculo do polinômio interpolador trigonométrico τ se re-
duz ao cálculo dos coeficientes Am e Bm pelas fórmulas (1).
A transformação
Z 2π
ˆ
f (x) → f (t) := f (x)e−itx dx
0

é chamada transformada de Fourier de f e a transformação

(f0 , f1 , . . . , fN −1 ) → (C0 , . . . , CN −1 ),

onde
N −1
1 X
Cm = fk e−2πkim/N , m = 0, . . . , N − 1,
N
k=0
é chamada transformação de Fourier discreta. Podemos ser observar que os
coeficientes Am e Bm estão relacionados com Cm quando N = 2n + 1. Temos

(2) Am − iBm = 2Cm .

Observemos aqui que, para o cálculo de todos os coeficientes {Cm }N −1


m=0 , preci-
samos de N 2 multiplicações nas quais participam os valores f0 , . . . , fN −1 .
Existe um algorı́tmo rápido para o cálculo de {Cm }N −1
m=0 para todo N e, daı́,
um método para o cálculo dos coeficientes {Am }, {Bm } baseado na relação (2).
Este método é chamado transformada rápida de Fourier e foi sugerido por Conly
e Tukyem 1965.
Seja N representado por N = p q. Os números m e k podem ser unicamente
representados da forma

m = m1 q + m0 , 0 ≤ m0 < q

k = k1 p + k0 , 0 ≤ k0 < p.
44 Capı́tulo1. Aproximação de Funções

Não é difı́cil verificar que


mk (m1 q + m0 )k1 p + mk0 m0 k1 mk0
= = m1 k1 + + .
N N q N

Usando o fato de que e−2πij = 1 para todo número inteiro j, obtemos


N −1
1 X mk
Cm = fk e−2πi N
N
k=0

p−1 q−1
1 X X
¡ m0 k1 mk0 ¢
−2πi + N
= fk1 p+k0 e q
pq
k0 =0 k1 =0

p−1 q−1
( )
1 X 1 X m0 k 1 mk0
= fk1 p+k0 e2πi q e−2πi N .
p q
k0 =0 k1 =0

Consequentemente,
p−1
1 X (1) n2πi mk0
(3) Cm = Ck0 e N ,
p
k0 =0

(1)
onde Ck0 são expressões semelhantes parecidas a de Cm , mas número menor de
elementos na soma. A fórmula (3) é uma relação de recorrência que é utilizada
para o cálculo dos coeficientes Cm .
(1)
Quando N é potência de dois ( N = 2s ), a redução de Cm para Ck0 e
(2)
esses, para os Cj , etc., é feita por fórmulas simples e convenientes nas quais é
baseado um algoritmo rápido para o cálculo de Cm .

Vamos considerar, por exemplo, o caso p = q ≈ N . Neste caso para
(1)
calcular todos os Ck0 precisamos de pq 2 multiplicações. Depois, para calcular
todos os Cm pela fórmula (3) precisamos de mais qp2 multiplicações. Em geral,
obtemos

pq 2 + qp2 = pq(p + q) ≈ 2N N = 2N 3/2 ,

o que, para N grande, é significativamente menor que N 2 multiplicações.

1.9 Funções splines. Interpolação por splines


cúbicas
A precisão de uma aproximação de f (x) em [a, b] depende essencialmente
do comprimento do intervalo e do grau do polinômio algébrico. Desde que os
1.9 Funções splines. Interpolação por splines cúbicas 45

cálculos computacionais com polinômios de alto grau criam alguns problemas, é


desejável usar polinômios de grau não muito alto. Neste caso a única oportuni-
dade de aumentar a precisão da aproximação é trabalhar em intervalos menores.
Se o intervalo [a, b] é grande, ele se reparte em pequenos subintervalos [xi , xi+1 ],
i = 0, . . . , m, e f (x) é aproximada, em [xi , xi+1 ], por um polinômio algébrico
pi (x) de algum grau r baixo. Deste modo, obtemos a aproximação

f (x) ≈ P (x) := pi (x) para x ∈ (xi , xi+1 ).

A função P (x) é uma curva polinomial por partes que aproxima o gráfico
de f com uma determinada precisão. Em geral, P (x) é contı́nua nos pontos
x1 , . . . , xm . Se f descreve um processo suave, é desejável que a função que
aproxima também seja suave. Para atingir este efeito, impõe-se a condição
adicional de que as partes polinomiais sejam conectadas suavemente, isto é,
que as derivadas de pi−1 (x) e pi (x), até uma determinada ordem, coincidam no
ponto de conexão xi . Como resultado, obtemos uma curva suave que aproxima
bem f . Tais curvas suaves que passam por alguns pontos dados são chamadas
”splines”.
As propriedades interessantes das funções spline e as suas conexões com
outras áreas da matemática mostram que o seu surgimento vem da lógica interna
do desenvolvimento da própria matemática.

Definição 5 A função s(x) é chamada função spline de grau r com nós x1 <
· · · < xn se:

1. s(x) é um polinômio de grau no máximo r em cada subintervalo


(xi , xi+1 ), i = 0, . . . , n, (x0 = −∞, xn+1 = ∞) ;

2. s(x), s′ (x), . . . , s(r−1) (x) são funções contı́nuas em (−∞, ∞).

Daqui para frente, denotaremos por Sr (x1 , . . . , xn ) o conjunto das funções


spline de grau r com nós x1 , . . . , xn . Algumas vezes, em vez de escrever função-
spline, escreveremos apenas ”spline”.
Como consequência imediata da definição , seguem as propriedades:
1. Se s ∈ Sr (x1 , . . . , xn ), então s′ é uma spline de grau r − 1 com os mesmos
nós.
2. Se s ∈ Sr (x1 , . . . , xn ), então a r-ésima derivada de s é função constante
por partes com saltos eventualmente nos pontos x1 , . . . , xn . Reciprocamente,
a r-ésima função primitiva de uma função constante por partes com saltos nos
pontos x1 , . . . , xn é uma spline de grau r com nós x1 , . . . , xn .
46 Capı́tulo1. Aproximação de Funções

A função potência truncada


(x − ξ)r , se x ≥ ξ
½
r
(x − ξ)+ :=
0, se x < ξ

é um exemplo simples de função spline. É uma spline de grau r com um único


r r
nó no ponto ξ. De fato, (x − ξ)+ coincide com o polinômio (x − ξ) para x ≥ ξ
© r ª(i)
e com o polinômio p(x) ≡ 0 para x < ξ. Além disso (x − ξ)+ é contı́nua
no ponto x = ξ para i = 0, . . . , r − 1 e atinge o valor 0 neste ponto. A função
potência truncada tem um papel importante na teoria das funções spline.

Teorema 16 Toda função-spline s(x) da classe Sr (x1 , . . . , xn ) é unicamente


representada por
n
X
(1) s(x) = p(x) + ck (x − xk )r+ ,
k=1

onde p é o polinômio de grau r e c1 , . . . , cn são números reais. Além disso,

s(r) (xk + 0) − s(r) (xk − 0)


(2) ck = , k = 1, . . . , n.
r!
Demonstração. Vamos esclarecer, primeiramente, que aqui usaremos a notação

f (x + 0) := lim f (x + h).
h→0,h>0

Analogamente, definimos f (x − 0).


Seja s(x) ∈ Sr (x1 , . . . , xn ). Então, s coincide com algum polinômio Pk de
grau r no subintervalo (xk , xk+1 ), k = 0, . . . , n. Desde que s(j) (x) é função
(j) (j)
contı́nua no ponto xk , Pk−1 (xk ) = Pk (xk ) para j = 0, . . . , r − 1. Consequen-
temente

(3) Pk (x) = Pk−1 (x) + ck (x − xk )r para todo x,

onde ck é alguma constante. Esta é uma relação de recorrência para os po-


linômios {Pk } que implica imediatamente na representação
k
X
Pk (x) = P0 (x) + ci (x − xi )r .
i=1

Levando em consideração o fato de que s(x) coincide com Pk (x) para x ∈


(xk , xk+1 ) e a definição da função potência truncada, pela igualdade acima,
obtemos
X n
s(x) = P0 (x) + ci (x − xi )r+ ,
i=1
1.9 Funções splines. Interpolação por splines cúbicas 47

que é a representação desejada.


Basta mostrar que os coeficientes ck são unicamente determinados. De fato,
pela relação (3), derivando r vezes no ponto xk , obtemos
(r) (r)
Pk (xk ) = Pk−1 (xk ) + ck r!

e, da’ı,
ck r! = s(r) (xk + 0) − s(r) (xk − 0),
que coincide com a fórmula (2).
O polinômio p(x) na representação (1) é unicamente determinado pois coin-
cide com o polinômio P0 (x). O teorema está provado.
Desde que cada expressão da forma (1) é uma spline de classe Sr (x1 , . . . , xn ),
o teorema implica que Sr (x1 , . . . , xn ) coincide com o conjunto de todas as
funções da forma (1). Consequentemente, a dimensão do espaço linear Sr (x1 , . . . , xn )
é igual a r + n + 1.
Discutiremos, agora, o problema de interpolação por funções spline. Con-
sideremos o problema de interpolação de Lagrange por splines de grau três,
chamadas também de splines cúbicas. São as mais usadas na prática.
Seja f (x) uma função real contı́nua em [a, b]. Queremos construir uma spline
cúbica s(x) com nós em x1 , . . . , xn que interpola f (x) nos pontos x0 , . . . , xn+1
onde a = x0 < x1 < · · · < xn+1 = b. Construir s significa determinar os
polinômios {Pi (x)} de grau três que representam s(x) nos intervalos (xi , xi+1 ),
i = 0, . . . , n, respectivamente. As condições de interpolação

s(xi ) = f (xi ), i = 0, . . . , n + 1,

implicam nas condições sobre o polinômio Pi :

(4) Pi (xi ) = f (xi ), Pi (xi+1 ) = f (xi+1 ), i = 0, . . . , n.

Notemos que as últimas igualdades implicam imediatamente que

Pi−1 (xi ) = Pi (xi ), i = 1, . . . , n,

o que garante que s(x) é função contı́nua em [a, b]. Lembremos que todo po-
linômio cúbico é determinado por quatro condições de interpolação. Por en-
quanto, toda parte cúbica Pi (x) de s(x) interpola f (x) somente nos pontos xi e
xi+1 . Portanto, temos à disposição mais duas condições de interpolação. Esco-
lheremos essas condições de modo que s seja não apenas contı́nua, mas que tenha
primeira e segunda derivadas contı́nuas, isto é, que s(x) seja spline cúbica. Há
maneiras diferentes de escolher essas duas condições de interpolação adicionais
48 Capı́tulo1. Aproximação de Funções

que levam a métodos diferentes para funções cúbicas por partes. Por enquanto,
vamos exigir que Pi (x) satisfaça às condições

(5) Pi′ (xi ) = di , Pi′ (xi+1 ) = di+1 , i = 0, . . . , n ,

onde d0 , . . . , dn+1 são parâmetros cuja escolha vai ser feita posteriormente. As
últimas condições garantem que s′ (x) é uma função contı́nua em [a, b]. Para de-
terminar Pi (x) pelas condições de interpolação de Hermite (4) e (5), utilizaremos
a fórmula de Newton
2
Pi (x) = Pi (xi ) + Pi [xi , xi ](x − xi ) + Pi [xi , xi , xi+1 ](x − xi )

2
+ Pi [xi , xi , xi+1 , xi+1 ](x − xi ) (x − xi+1 ).

Determinaremos os coeficientes pela tabela para o cálculo das diferenças dividi-


das. Vamos introduzir a notação ∆i := xi+1 − xi . Temos:

Pi (xi ) = f (xi ) ,

Pi [xi , xi ] = di ,

Pi [xi , xi+1 ] = f [xi , xi+1 ] ,

f [xi , xi+1 ] − di
Pi [xi , xi , xi+1 ] = ,
∆i
di+1 − 2f [xi , xi+1 ] + di
Pi [xi , xi , xi+1 , xi+1 ] = .
(∆i )2
Observe que todas as diferenças divididas de Pi em quatro pontos são idênticas
e iguais ao coeficiente do termo de maior grau de Pi (x).
n+1
Escolhendo os parâmetros {di }0 de modos diferentes obtemos diferentes
funções interpoladoras. Tomemos um caso particular especial.
Interpolação cúbica de Hermite por partes. Escolhemos

di = f ′ (xi ), i = 0, . . . , n + 1.

Neste caso, Pi (x) depende somente do comportamento de f (x) em [xi , xi+1 ].


Para x ∈ [xi , xi+1 ] obtemos
2 2
|f (x) − s(x)| = |(x − xi ) (x − xi+1 ) |.|f [xi , xi , xi+1 , xi+1 , x]|
µ ¶4 ¯ (4) ¯
¯f (ξ)¯
∆i
≤ max
2 ξ∈[xi ,xi+1 ] 4!
1.9 Funções splines. Interpolação por splines cúbicas 49

sob a hipótese de que f tenha derivada contı́nua de ordem quatro em [a, b].
Consequentemente, para todo x de [a, b], obtemos
µ ¶4
max ∆i
0≤i≤n
¯ ¯
|f (x) − s(x)| ≤ max ¯f (4) (ξ)¯ .
¯ ¯
ξ∈[a,b] 384

Interpolação por spline cúbica. Como já notamos, a função s(x) de-
terminada pelas condições (4) e (5), não é apenas contı́nua para qualquer es-
colha dos parâmetros di . Mostremos, agora, que sempre é possı́vel escolher os
parâmetros {di } de modo que a função s(x) tenha a segunda derivada contı́nua,
isto é, que s(x) seja spline cúbica.
A nossa exigência de que s′′ (x) seja contı́nua é equivalente às condições
′′
(6) Pi−1 (xi ) = Pi′′ (xi ), i = 1, . . . , n.

Usando a representação já obtida pela fórmula de Newton de Pi−1 e Pi


obtemos:
Pi′′ (xi ) = 2Pi [xi , xi , xi+1 ] − 2Pi [xi , xi , xi+1 , xi+1 ]∆i ,
′′
Pi−1 (xi ) = 2Pi−1 [xi−1 , xi−1 , xi ] + 4Pi−1 [xi−1 , xi−1 , xi , xi ]∆i−1 .

Substituindo as diferenças divididas pelas expressões obtidas acima e por


(6), obtemos

f [xi−1 , xi ] − di−1 di − 2f [xi−1 , xi ] + di−1


+2 =
∆i−1 ∆i−1

f [xi , xi+1 ] − di di+1 − 2f [xi , xi+1 ] + di


− .
∆i ∆i
Colocando sob o mesmo denominador comum chegamos à igualdade

(7) ∆i di−1 + 2(∆i−1 + ∆i )di + ∆i−1 di+1 = bi , i = 1, . . . , n,

onde
bi = 3(f [xi−1 , xi ]∆i + f [xi , xi+1 ]∆i−1 ), i = 1, . . . , n.

Vamos supor que d0 e dn+1 são escolhidos de alguma maneira. Assim, por (7),
obtemos um sistema linear de n equações com n incógnitas d1 , . . . , dn . Este
sistema tem diagonal principal dominante, isto é, o módulo do elemento da
diagonal é maior do que a soma dos módulos de todos os elementos da mesma
linha fora da diagonal. É fácil mostrar que toda matriz com diagonal principal
50 Capı́tulo1. Aproximação de Funções

dominante tem determinante não-nulo. Portanto, o sistema (7) sempre tem uma
única solução para qualquer escolha de d0 e dn+1 .
Existem duas maneiras diferentes de escolher os parâmetros d0 e dn+1 .
I) Se f ′ (a) e f ′ (b) são conhecidas, é natural escolher

d0 = f ′ (a), dn+1 = f ′ (b).

Deste modo, é obtida a chamada interpolação por spline cúbica completa.


II) Outra maneira de escolher d0 e dn+1 é adicionar as equações

s′′ (a) = P0′′ (x0 ) = 0,

s′′ (b) = Pn′′ (xn+1 ) = 0,

que junto com (7), formam um sistema linear de n + 2 equações com n + 2


incógnitas d0 , . . . , dn+1 . Assim, obtemos a interpolação spline cúbica natural.
As splines cúbicas com nós x0 , x1 , . . . , xn+1 que coincidem com polinômios
de grau um nos intervalos (−∞, x0 ) e (xn+1 , ∞) são chamadas splines cúbicas
naturais. Vê-se que as splines cúbicas naturais são determinadas unicamente
pelas condições s′′ (a) = s′′ (b) = 0. Essas splines são chamadas naturais de-
vido ao comportamento natural delas. Elas descrevem suficientemente bem o
comportamento de uma barra elástica presa por anéis colocados nos pontos
{xi , f (xi )}n+1
0 . É claro que tal barra vai ficar como uma reta antes do primeiro
e depois do último anel. A ferramenta de desenho técnico chamada ”spline”,
que já mencionamos, consiste de uma barra flexı́vel e de objetos para fixá-la à
prancha de desenho.
Provaremos uma propriedade extremal das splines naturais. Esta proprie-
dade mostra que elas são as funções mais suaves, em algum sentido, entre todas
as outras que interpolam uma dada tabela.
Sejam x̄ = (x0 , . . . , xn+1 ) alguns pontos dados, a = x0 < · · · < xn+1 = b, e
ȳ = (y0 , . . . , yn+1 ) valores dados. Denotemos por F (x̄, ȳ) a classe de todas as
funções f cujas segundas derivadas são contı́nuas em [a, b] e que satisfazem às
condições de interpolação

f (xk ) = yk , para k = 0, . . . , n + 1.

Teorema 17 (Hollyday) Para x̄ e ȳ dados, seja s(x) a única spline cúbica


com nós x0 , . . . , xn+1 , que pertence à classe F (x̄, ȳ). Então,
Z b Z b
2 2
s′′ (x) dx ≤ f ′′ (x) dx para toda f ∈ F (x̄, ȳ).
a a

A igualdade é atingida somente para f ≡ s.


1.9 Funções splines. Interpolação por splines cúbicas 51

Demonstração. Seja f uma função arbitrária de F (x̄, ȳ) e seja s(x) uma
spline cúbica de F (x̄, ȳ) com nós x0 , . . . , xn+1 . A integral
Z b
σ := [f ′′ (x) − s′′ (x)] s′′ (x) dx
a

pode ser facilmente calculada. De fato, integrando por partes, obtemos

n+1
X Z xi
σ = [f ′′ (x) − s′′ (x)] s′′ (x) dx
i=1 xi−1

¯xi
n+1
X ¯ n+1
X Z xi
= s′′ (x) [f ′ (x) − s′ (x)] ¯ − [f ′ (x) − s′ (x)] s′′′ (x) dx.
¯
i=1
¯
i=1 xi−1
xi−1

Mas, s é uma spline cúbica. Logo s coincide com um polinômio de grau três
no subintervalo (xi−1 , xi ) e, portanto, s′′′ (x) é constante em (xi−1 , xi ). Vamos
denotar esta constante por ci . Obtemos, então,

n+1
¯xi n+1
¯xi
X ¯ X ¯
σ= s′′ (x) [f ′ (x) − s′ (x)] ¯ − ci [f (x) − s(x)]¯ .
¯ ¯
¯ ¯
i=1 xi−1 i=1 xi−1

A última soma é igual a zero porque f, s ∈ F (x̄, ȳ) e, consequentemente,

f (xj ) − s(xj ) = yj − yj = 0 para j = 0, . . . , n + 1.

Além disso a função s′′ (x) [f ′ (x) − s′ (x)] é contı́nua nos pontos {xj }n+1 0 . Por-
tanto, a soma de todos os termos que contêm os valores desta função nos pontos
interiores é nula pois participam de dois termos consectivos da soma com sinais
opostos. Vão sobrar somente os valores no primeiro e no último ponto. Assim,
obtemos
(8)
Z b
σ= [f ′′ (x) − s′′ (x)] s′′ (x) dx = s′′ (b) [f ′ (b) − s′ (b)] − s′′ (a) [f ′ (a) − s′′ (a)] .
a

Observe, agora, que se s é uma spline natural de F (x̄, ȳ), então s′′ (a) =
′′
s (b) = 0 e, consequentemente, σ = 0. Em outras palavras, as funções
f ′′ (x) − s′′ (x) e s′′ (x) são ortogonais. Mas, se duas funções f1 e f2 são or-
togonais, obviamente
Z b Z b
f12 (x) dx ≤ [f1 (x) + f2 (x)]2 dx,
a a
52 Capı́tulo1. Aproximação de Funções

e a igualdade é atingida somente quando f2 (x) ≡ 0. Aplicando este fato para


f1 = s′′ (x) e f2 = f ′′ (x) − s′′ (x), obtemos
Z b Z b Z b
′′ 2 ′′ ′′ ′′ 2 2
s (x) dx ≤ [f (x) − s (x) + s (x)] dx = f ′′ (x) dx.
a a a
′′ ′′
A igualdade é atingida somente para f2 = f − s ≡ 0. Então, f − s é um
polinômio de grau um. Desde que f − s é zero em x0 , . . . , xn+1 , pelas definições
de f e de s, obviamente f ≡ s. Então, a igualdade é atingida somente para
f ≡ s. O teorema está provado.
O mesmo teorema vale se F é a classe das funções que satisfazem às condições
de interpolação

f (xi ) = yi , i = 0, . . . , n + 1, f ′ (a) = y0′ , f ′ (b) = yn+1



,

e s é a spline cúbica que realiza a interpolação spline cúbica completa. De fato,


neste caso,

f ′ (a) − s′ (a) = 0,
f ′ (b) − s′ (b) = 0,

e, por (8), novamente segue que as funções f ′′ (x) − s′′ (x) e s′′ (x) são ortogonais.

1.10 B-splines
Já mostramos que toda spline de grau r − 1 com nós x1 < · · · < xn pode ser
representada como combinação linear de um polinômio p de πr−1 e da sequência
de funções
r−1 r−1
(x − x1 )+ , . . . , (x − xn )+ .
Tal representação da spline não é conveniente quando trabalhamos em um com-
putador pela seguinte razão. Se n é muito grande, o valor da spline s(x) no
ponto x ∈ (xi , xi+1 ) é escrito como soma de um grande número de expressões,
precisamente n + r. Por outro lado, s(x) é um polinômio de grau r − 1 em
(xi , xi+1 ) e é natural escrevê-lo como combinação linear de r funções linearmente
independentes. Quando fazemos cálculos com grande número de expressões ob-
temos erros que podem levar a imprecisões essenciais no resultado final. Agora,
introduziremos uma outra base no espaço das splines que não apresenta essa
desvantagem.

r−1
Definição 6 A diferença dividida da função (x − t)+ com relação a x nos
pontos x0 < · · · < xr é chamada B-spline de grau r − 1 com nós x0 , . . . , xr .
1.10 B-splines 53

Vamos introduzir a notação B(x0 , . . . , xr ; t) para esta B-spline. De acordo


com a definição ,
r−1
B(x0 , . . . , xr ; t) = (· − t)+ [x0 , . . . , xr ].

Podemos verificar que a expressão B(x0 , . . . , xr ; t) é de fato uma spline de grau


r − 1 com nós x0 , . . . , xr . Para isto, lembremos que, para toda f ,

f [x0 , . . . , xr ] = c0 f (x0 ) + c1 f (x1 ) + · · · + cr f (xr ),

1
onde ck = ω ′ (xk ) e ω(x) := (x − x0 ) . . . (x − xr ). Consequentemente,

r
r−1
X
B(x0 , . . . , xr ; t) = ck (xk − t)+ ,
k=0

o que mostra que a expressão B(x0 , . . . , xr ; t) é uma combinação linear das


r−1
funções {(xk − t)+ }rk=0 , isto é, B(x0 , . . . , xr ; t) é spline de grau r − 1 com nós
x0 , . . . , xr .
Provaremos algumas propriedades interessantes das B-splines.

Teorema 18 Para todo r ≥ 1 temos:

B(x0 , . . . , xr ; t) = 0 para t ≤ x 0 e t ≥ xr ,
B(x0 , . . . , xr ; t) > 0 para t ∈ (x0 , xr ).

Demonstração.
r−1
a) Seja t ≤ x0 . Logo, xk −t ≥ 0 para todo k. Consequentemente, (xk − t)+ =
r−1 r−1 r−1
(xk − t) e B(x0 , . . . , xr ; t) = (· − t) [x0 , . . . , xr ]. Mas, (x − t) é um po-
linômio de grau r − 1. Portanto, a sua diferença dividida em quaisquer r + 1
pontos é igual a zero. Então,

B(x0 , . . . , xr ; t) = 0 para t ≤ x0 .

Vamos supor agora que t ≥ xr . Assim, xk − t ≤ 0 para k = 0, . . . , r e, portanto,


r−1
(xk − t)+ = 0 para k = 0, . . . , r. Por este fato e pela definição de B-spline,
obtemos
r
r−1
X
B(x0 , . . . , xr ; t) = ck (xk − t)+ = 0.
k=0

b) Seja t um ponto fixo em (x0 , xr ). Vamos denotar por Pr (x) = bxr + · · ·


r−1
o polinômio de grau r que interpola a função Qt (x) := (x − t)+ nos pontos
r−1
x0 , . . . , xr . É claro que Pr (x) não pode coincidir identicamente com (x − t)
54 Capı́tulo1. Aproximação de Funções

ou ser identicamente zero em algum subintervalo de (−∞, ∞). Caso contrário,


r−1
o polinômio Pr (x) coincide com o polinômio (x − t) ou com a função zero,
o que é obviamente impossı́vel. Consideremos a diferença Pr (x) − Qt (x). Ela
tem pelo menos r + 1 zeros x0 , x1 , . . . , xr . De acordo com a observação feita
acima, esses zeros são isolados, isto é, em qualquer vizinhança pequena de xi há
pontos onde a função é diferente de zero. Então, pelo teorema de Rolle, entre
dois zeros quaisquer de Pr (x) − Qt (x) há pelo menos um zero de Pr′ (x) − Q′t (x)
ou, mais precisamente, entre quaisquer dois zeros de Pr (x) − Qt (x) há um ponto
onde a derivada Pr′ (x) − Q′t (x) muda de sinal. Então, Pr′ (x) − Q′t (x) tem pelo
menos r zeros distintos que são pontos de mudanças de sinal. Continuando da
mesma maneira, concluimos que Pr′′ (x) − Q′′t (x) tem pelo menos r − 1 zeros,
(r−2) (r−2)
. . ., Pr (x) − Qt (x) tem pelo menos 3 zeros onde ela muda de sinal. Por
outro lado
r! 2
Pr(r−2) (x) = bx + · · · ,
2

(r−2) (r−2)
isto é, Pr (x) é uma parábola e Qt (x) é uma função linear por partes,
que é monotonicamente crescente. (veja Figura 3).

(r - 2)
Q (x)
t

(r - 2)
P (x)
r

Figura 3

(r−2) (r−2)
Podemos observar que a parábola Pr (x) não pode cruzar Qt (x) em
mais do que dois pontos, se ela é côncava, isto é, se seu coeficiente r!b/2 é não-
positivo. Consequentemente, r!b/2 > 0 e, portanto, b > 0. Mas, b é o coeficiente
de xr do polinômio interpoladorPr (x). De acordo com uma das propriedades de
diferenças divididas, b coincide com a diferença dividida da função interpolada
1.10 B-splines 55

r−1
(x − t)+ em x0 , . . . , xr . Em outras palavras,

b = B(x0 , . . . , xr ; t) > 0,

que é o que querı́amos provar.


Seja
· · · < xi−1 < xi < xi+1 < · · ·
uma sequência finita de pontos distintos. Consideremos a correspondente sequência
de B-splines
Bi,r−1 (t) := B(xi , . . . , xi+r ; t), ∀i.
Mostraremos que as funções Bi,r−1 (t), i = m, m+1, . . . , m+N , são linearmente
independentes em (−∞, ∞) para qualquer escolha de m e N . De fato, vamos
supor o contrário. Então, existe uma combinação linear
m+N
X
f (t) = αi Bi,r−1 (t)
i=m

que é zero para todo t de (−∞, ∞), mas pelo menos um dos coeficientes {αi }
é diferente de zero. Vamos escolher um ponto t do intervalo(xm , xm+1 ). Para
este t, temos
f (t) = αm Bm,r−1 (t),
pois Bi,r−1 (t) = 0 para i > m. Desde que, pelo Teorema 1, Bm,r−1 (t) > 0,
a condição f (t) = 0 implica que αm = 0. Da mesma maneira, provamos que
m+N
αm+1 = 0, . . ., até chegarmos à conclusão de que todos os coeficientes {αi }i=m
são iguais a zero, o que é contradição com a hipótese de que αi é diferente de
zero. A afirmação está provada.
Agora, vamos construir uma nova base para o espaço das splines usando
B-splines. Para este propósito, precisaremos do seguinte lema.

r−1
Lema 6 Para toda escolha dos pontos ξ1 < · · · < ξr as funções (ξ1 − x) ,
r−1
. . ., (ξr − x) são linearmente independentes em (−∞, ∞).

Demonstração. Supomos o contrário. Então, existe uma combinação linear


r
r−1
X
f (x) = ai (ξi − x) ,
i=1

que é zero para todo x ∈ (−∞, ∞), com pelo menos um ai diferente de zero.
Desde que f (x) é um polinômio algébrico em x, identicamente zero, suas deri-
vadas são também identicamente zero, isto é,

f (x) = f ′ (x) = · · · = f r−1 (x) = 0 para x ∈ (−∞, ∞)


56 Capı́tulo1. Aproximação de Funções

Fixamos algum x de (−∞, ξ1 ) e denotamos yi = ξi − x, i = 1, . . . , r. Então,

f (x) = 0 ⇒ a1 y1r−1 + · · · + ar yrr−1 = 0

f ′ (x) = 0 ⇒ a1 y1r−2 + · · · + ar yrr−2 = 0

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

f (r−1) (x) = 0 ⇒ a1 .1 + · · · + ar .1 = 0

Concluimos que a1 , . . . , ar satisfazem a um sistema linear. O determinante deste


sistema é o de Vandermonde e, portanto, é diferente de zero. Então, o sistema
tem somente solução nula, a1 = · · · = ar = 0. Chegamos a uma contradição .
O lema está provado.
O Teorema 1 implica que cada B-spline Bi,r−1 (t) é diferente de zero somente
no intervalo finito (xi , xi+r ). Este intervalo é chamado suporte de Bi,r−1 (t).
Então, as B-splines são funções splines com suporte finito. Agora, mostraremos
que não existem outras splines de grau r − 1 que têm “menor”suporte do que
as B-splines.

Lema 7 Sejam x1 < · · · < xr e f ∈ Sr−1 (x1 , . . . , xr ). Se f (t) = 0 para todo


t 6∈ [x1 , xr ], então f (t) ≡ 0 em (−∞, ∞).

Demonstração. A spline f pode ser representada da forma


r
r−1
X
f (t) = p(t) + ck (t − xk )+ ,
k=1

onde p é um polinômio de πr−1 . Seja t ∈ (−∞, x1 ). Então, f (t) = p(t) = 0.


Consequentemente, p ≡ 0. Portanto,
r
r−1
X
f (t) = ck (t − xk )+
k=1

para todo t. Vamos escolher alguns pontos arbitrários ξ1 < · · · < ξr do intervalo
(xn , ∞) e introduzir as notações
r−1
pj (x) := (ξj − x) , j = 1, . . . , r.

O lema 2 implica que p1 , . . . , pr são polinômios linearmente independentes.


Desde que o número deles é r, eles formam uma base em πr−1 . Consideremos o
1.10 B-splines 57

funcional
r
X
L(p) := ck p(xk ).
k=1
r
A condição f (ξj ) = 0 implica que L(pj ) = 0, j = 1, . . . , r. Desde que {pj }1
forma uma base em πr−1 , então

L(q) = 0 para todo q ∈ πr−1 .

Seja qj o polinômio de πr−1 que satisfaz às condições de interpolação

qj (xk ) = δkj , k = 1, . . . , r.

Para q = qj , obtemos
r
X
0 = L(qj ) = ck qj (xk ) = cj
k=1

para j = 1, . . . , r. Consequentemente, f (t) ≡ 0. A afirmação está provada.


Então, vamos destacar mais uma vez: As B-slines de grau r − 1 têm o menor
suporte no espaco das splines de grau r − 1.
Já estamos preparados para provar o resultado principal desta seção .

Teorema 19 Sejam a < xr+1 < · · · < xn < b pontos fixos. Tomemos outros
2r pontos arbitrários x1 < · · · < xr < a e b < xn+1 < · · · < xn+r . Sejam
Bi (t) := B(xi , . . . , xi+r ; t), i = 1, . . . , n. As B-splines B1 , . . . , Bn formam
uma base no espaço Sr−1 (xr+1 , . . . , xn ) no intervalo [a, b].

Demonstração. Já sabemos que a dimensao do espaço Sr−1 (xr+1 , . . . , xn )


é n. Desde que Bi ∈ Sr−1 (xr+1 , . . . , xn ) para i = 1, . . . , n e o número des-
sas splines também é n, basta mostrar que B1 , . . . , Bn são funções linearmente
independentes em [a, b].
Suponha o contrário. Então, existe uma combinação linear
n
X
f (t) = αi Bi (t),
i=1

que é identicamente zero em [a, b], mas pelo menos um de seus coeficientes {αi }
é diferente de zero. Pela expressão de f podemos observar que

f (t) ≡ 0 em (−∞, x1 ),
58 Capı́tulo1. Aproximação de Funções

f (t) ≡ 0 em (xr+n , ∞).

Além disso, pela exigência para f , f (t) ≡ 0 em [a, b]. Mas, f coincide com
um polinômio algébrico em (xr , xr+1 ). Pelo fato de que f (t) ≡ 0 em [a, xr+1 ],
concluı́mos que f (t) ≡ 0 no subintervalo inteiro [xr , xr+1 ]. Da mesma forma,
podemos obsevar que f (t) ≡ 0 também em [xn , xn+1 ]. Consequentemente, f ≡ 0
em [xr , xn+1 ]. Portanto, seu gráfico é como o da Figura 4.

x1 xr a b x n+1 x n+ r

Figura 4

Vamos considerar as funções

0 para t > xr
½
f1 (t) = ,
f (t) para t ≤ xr

0 para t < xn+1


½
f2 (t) = .
f (t) para t ≥ xn+1
Obviamente f (t) = f1 (t) + f2 (t). Mas, f1 ∈ Sr−1 (x1 , . . . , xr ) e f1 (t) ≡ 0 para
t 6∈ [x1 , xr ]. Agora, pelo lema 3 sobre o suporte mı́nimo, segue que f1 (t) ≡
0 em (−∞, ∞) e, daı́, f (t) ≡ 0 em (−∞, a]. Da mesma maneira podemos
observar que f2 ≡ 0 e, portanto, f (t) ≡ 0 em [b, ∞). Consequentemente, f (t) ≡
0 em (−∞, ∞). Mas, como já notamos no inı́cio, as funções B1 , . . . , Bn são
linearmente independentes em (−∞, ∞). Então, α1 = · · · = αn = 0. Chegamos
a uma contradição. O teorema está provado.
Assim, toda função spline f de Sr−1 (xr+1 , . . . , xn ) pode ser unicamente re-
presentada da forma
n
X
(3) f (t) = αi Bi (t).
i=1
1.10 B-splines 59

Levando em considereção o fato de que Bi (t) tem suporte finito, esta é uma
representação muito conveniente de f quando trabalhamos com computador
pois, para t fixo, a sline f (t) é de fato uma combinação linear de apenas r B-
splines consecutivas, aquelas que contêm t no seu suporte. Uma outra vantagem
da representação (3) é que existe um esquema simples para o cálculo do valor
de Bi em um ponto dado. Este esquema é baseado na seguinte relação de
recorrência.

Relação de recorrência principal: Para todo r ≥ 2 e t ∈ (−∞, ∞) a


iguladade
t − xi xi+r − t
(4) Bi,r−1 (t) = Bi,r−2 (t) + Bi+1,r−2 (t).
xi+r − xi xi+r − xi
vale.

Demonstração. Usaremos a já conhecida regra de Stevenson para o cálculo


de diferenças divididas do produto de duas funções
n
X
(f · g)[x0 , . . . , xn ] = f [x0 , . . . , xk ] g[xk , . . . , xn ].
k=0

r−2
Escolhemos f (x) = x − t e g(x) = (x − t)+ . Obviamente
r−1
f (x)g(x) = (x − t)+ para x ∈ (−∞, ∞)

e, portanto,

Bi,r−1 (t) = (f.g)[xi , . . . , xi+r ]

= f (xi )g[xi , . . . , xi+r ] + f [xi , xi+1 ]g[xi+1 , . . . , xi+r ],

desde que f [xi , . . . , xi+k ] = 0 para k ≥ 2. Depois, levando em consideração que


f [xi , xi+1 ] = 1 e aplicando a relação de recorrência para as diferenças divididas,
obtemos
g[xi+1 , . . . , xi+r ] − g[xi , . . . , xi+r−1 ]
Bi,r−1 (t) = f (xi ) + g[xi+1 , . . . , xi+r ]
xi+r − xi

µ ¶
f (xi ) f (xi )
= 1+ g[xi+1 , . . . , xi+r ] − g[xi , . . . , xi+r−1 ]
xi+r − xi xi+r − xi

xi+r − t t − xi
= Bi+1,r−2 (t) + Bi,r−2 (t),
xi+r − xi xi+r − xi
60 Capı́tulo1. Aproximação de Funções

que é a igualdade desejada.


Notamos que os coeficientes de Bi,r−2 (t) e Bi+1,r−2 (t) da relação de re-
corrência acima são positivos para t ∈ (xi , xi+1 ) e que sua soma é igual a 1.
Consequentemente, a fórmula (4) representa Bi,r−1 (t) como combinação con-
vexa de Bi,r−2 (t) e Bi+1,r−2 (t).
A fórmula (4) é a parte fundamental para o cálculo dos valores das B-splines.

B00 (t)
ց
B01 (t)
ր ց
B10 (t) B02 (t)
ց ր ց
B11 (t) B03 (t)
ր ց ր
B20 (t) B12 (t)
ց ր ց
B21 (t) B13 (t)
ր ց ր
B30 (t) B22 (t)
ց ր
B31 (t)
ր
B40 (t)
A primeira coluna desta tabela é preenchida usando-se a definição de Bi,0 (t),
½ 1
para t ∈ [xi , xi+1 )
Bi,0 (t) = xi+1 −xi .
0 para t 6∈ [xi , xi+1 )

As próximas colunas são preenchidas consecutivamente usando os dados da an-


terior e a relação de recorrência (4).

1.11 Melhor aproximação em espaços lineares


normados
Seja F um espaço linear dado. Introduzimos em F uma distância, i.e., para
qualquer par de elementos f, g de F colocamos em correspondência o número
ρ(f, g), que satisfaz às seguintes exigências:
1) ρ(f, g) ≥ 0 e a igualdade vale se, e somente se, f = g,
1.11 Melhor aproximação em espaços lineares normados 61

2) ρ(f, g) = ρ(g, f ) (simetria),


3) ρ(f, g) ≤ ρ(g, h) + ρ(h, g) para todo f, g, h ∈ F .
Espaço linear, quando é introduzida uma distância, é chamado espaço linear
métrico. Formularemos o problema de aproximação em um espaço linear métrico
F.
Sejam ϕ0 , . . . , ϕn elementos arbitrários linearmente independentes de F . De-
notemos por Ωn o conjunto de todas as combinações lineares de {ϕk }n0 , i.e.,
( n )
X
n
Ωn := ak ϕk : (a0 , . . . , an ) ∈ IR .
k=0

A quantidade
ρ(f, ϕ) := inf {ρ(f, ϕ) : ϕ ∈ Ωn }

é chamada a melhor aproximação de f por elementos de Ωn . Se existe um


elemento ϕf de Ωn para o qual a igualdade acima é atingida, i.e., para o qual

ρ(f, ϕf ) = inf {ρ(f, ϕ) : ϕ ∈ Ωn } ,

este elemento ϕf é chamado elemento da melhor aproximação de f .


Depois dessa formulação do problema de aproximação, surgem as seguintes
questões básicas:
Existe o elemento da melhor aproximação?
Se tal elemento existe, é único?
Como pode ser construı́do o elemento da melhor aproximação?
Existe uma grande classe de espaços lineares métricos, onde a resposta da
questão sobre a existência do elemento da melhor aproximação pode ser encon-
trada. Esses espaços são chamados espaços lineares normados. Vamos relembrar
brevemente a definição de espaço normado.
Seja F um espaço linear dado. Dizemos que em F é introduzida uma norma,
se, para todo elemento f de F , é colocado em correspondência um número kf k
(chamado norma de f ) e essa correspondência satisfaz às seguintes exigências:
1) kf k ≥ 0 (a igualdade vale se, e somente se, f = 0);
2) kλf k = |λ|kf k para todo λ;
3) kf + gk ≤ kf k + kgk para todo f, g ∈ F .
Um espaço linear onde é introduzida uma norma, é chamado de espaço linear
normado.
Toda norma k · k gera uma distância da seguinte maneira:

ρ(f, g) := kf − gk.
62 Capı́tulo1. Aproximação de Funções

Não é dificil verificar que a distância ρ(f, g) assim definida realmente satisfaz às
propriedades listadas acima. Deixaremos essa verificação como exercı́cio.
Toda norma em F pode ser considerada como função de f , definida em F .

Teorema 20 A norma é uma função contı́nua com relação à distância, gerada


por ela.

Demonstração. Primeiro, provaremos a desigualdade

|kf k − kgk| ≤ kf − gk.

De fato,
kf k = kf − g + gk ≤ kf − gk + kgk
e, daı́ segue que kf k − kgk ≤ kf − gk. Analogamente, kgk − kf k ≤ kg − f k =
kf − gk. Consequentemente, |kf k − kgk| ≤ ρ(f, g). É claro que se ρ(f, g) → 0,
então kf k → kgk, e isto mostra que kf k é uma função contı́nua de f .
Consideraremos o espaço linear

IRn = {f = (f1 , . . . , fn ) : f1 , . . . , fn ∈ IR} .

de vetores reais. Toda norma em IRn é de fato uma função de n variáveis: as


coordenadas f1 , . . . , fn de f .

Teorema 21 Toda norma em IRn é uma função contı́nua com relação às coor-
denadas do elemento.

Demonstração. Denotemos por

ek = (0, . . . , 0, 1, 0, . . . , 0), k = 1, . . . , n,

os vetores base em IRn . Entao, todo vetor f = (f1 , . . . , fn ) de IRn pode ser
escrito da forma f = f1 e1 + · · · fn en e, consequentemente,
n
X n
X
| kf k − kgk | ≤ kf − gk = k (fi − gi )ei k ≤ |fi − gi |kei k.
i=1 i=1

Então, kf k → kgk quando fi → gi , i = 1, . . . , n. O teorema está provado.


Em um espaço linear F podem ser introduzidas normas de maneiras dife-
rentes. Por exemplo, em IRn usam-se frequentemente as normas:

kf k∞ := max |fi |,
1≤i≤n
kf k1 := |f1 | + · · · + |fn |,
à n !1/2
X
2
kf k2 := fi .
i=1
1.11 Melhor aproximação em espaços lineares normados 63

A última norma é chamada de Euclides, pois ela determina a distância de Eu-


clides ( n )1/2
X
2
d(f, g) := kf − gk2 = (fk − gk ) .
k=1

Definição 7 Dizemos que duas normas ν(f ) e µ(f ) são equivalentes em F , se


existem números positivos m e M , tais que

mµ(f ) ≤ ν(f ) ≤ M µ(f )

para todo f ∈ F .

Teorema 22 Quaisquer duas normas em IRn são equivalentes.

Demonstração. É suficiente provar que toda norma ν é equivalente à norma


de Euclides k · k2 . Para isso, introduzimos a esfera com raio um em IRn ,
n
( )
X
2
S := (f1 , . . . , fn ) : fi = 1 .
i=1

S é um conjunto limitado. Além disso, de acordo com o Teorema 2, ν(f ) =


ν(f1 , . . . , fn ) é função contı́nua de fi , −∞ < fi < ∞. Pelo teorema de Wei-
erstrass, ν(f ) atinge o seu valor mı́nimo em S. Consequentemente, existe um
elemento f ∗ de S, tal que

m := inf {ν(f ) : (f1 , . . . , fn ) ∈ S} = ν(f ∗ ).

Obviamente m ≥ 0. Além disso, m > 0. De fato, a hipótese m = 0 imlpica


em ν(f ∗ ) = 0 e, consequentemente, f ∗ = 0, i.e., f1∗ = · · · = fn∗ = 0, uma
contradição com o fato que f ∗ ∈ S.
Então, ν(f ) ≥ m > 0 para toda f ∈ S.
Seja f um elemento não nulo de F . Então, f /kf k2 ∈ S e de acordo com
desigualdade que acabamos de provar, temos
µ ¶ µ ¶
f f
ν(f ) = ν kf k2 = kf k2 ν ≥ mkf k2 .
kf k2 kf k2
Provamos que mkf k2 ≤ ν(f ) para todo f ∈ F . Analogamente, escolhendo

M := sup {ν(f ) : (f1 , . . . , fn ) ∈ S} ,

obtemos
ν(f ) ≤ M kf k2 para todo f ∈ F.
O teorema está provado.
Formularemos uma consequência importante do teorema da equivalência das
normas.
64 Capı́tulo1. Aproximação de Funções

Corolário 3 Toda bola Sr = {(f1 , . . . , fn ) : kf k ≤ r < ∞} em IRn é um


conjunto limitado e fechado.

Demonstração. Seja f um elemento da esfera Sr . Então, kf k ≤ r e, conse-


quentemente, existe uma constante M tal que

kf k∞ ≤ M r.

Segue, então, a desigualdade |fi | ≤ M r, que mostra que o conjunto Sr é limi-


tado. Mostraremos que Sr é fechado. Seja {f (n) } uma sequência arbitraria de
elementos f (n) ∈ Sr , que converge para algum elemento g de IRn . Temos

kgk ≤ kf (n) − g + f (n) k ≤ kf (n) − gk + kf (n) k.

Seja n → ∞. Como kf (n) k ≤ r, obtemos que

kgk ≤ kf (n) k ≤ r,

que mostra que g ∈ Sr . Então Sr é um conjunto fechado.

Teorema 23 Seja F um espaço linear normado. Sejam ϕ0 , . . . , ϕn elementos


linearmente independentes de F e Ωn o subespaço formado por eles. Então,
para todo f ∈ F existe em Ωn um elemento que melhor aproxima f com relação
à distância, gerada pela norma em F .

Demonstração. Seja ϕ ∈ Ωn com kϕk > 2kf k =: r. Então

kf − ϕk ≥ kϕk − kf k > 2kf k − kf k = kf k = kf − 0k ≥ En (f ).

Consequentemente,

inf {kf − ϕk : ϕ ∈ Ωn } = inf {kf − ϕk : ϕ ≤ r} = inf kf − ϕk.


ϕ∈Sr

Por outro lado kf − ϕk é uma função contı́nua dos coeficientes a0 , . . . , an de ϕ


e Sr é um conjunto limitado e fechado. Pelo teorema de Weierstrass

inf kf − ϕk = min kf − ϕk = kf − ϕf k
ϕ∈Sr ϕ∈Sr

para algum ϕf ∈ Ωn . O teorema está provado.


O seguinte teorema é sobre a unicidade do elemento da melhor aproximação.

Definição 8 Dizemos que o espaço normado F é estritamente normado se a


desigualdade
kf + gk = kf k + kgk
implica que os elementos f e g são linearmente dependentes.
1.12 Aproximação uniforme de funções por polinômios algébricos 65

Teorema 24 Se F é estritamente normado, então para todo f ∈ F existe em


Ωn um único elemento que melhor aproxima f .

Demonstração. Suponha o contrário. Então, existem f ∈ F e elementos p e


q de Ωn , para os quais

kf − pk = kf − qk = En (f ) := inf {kf − ϕk : ϕ ∈ Ωn }

e p 6= q. Por outro lado,


p+q 1 1
kf − k = k(f − p) + (f − q)k ≤ (kf − pk + kf − qk) = En (f ). (1.11.24)
2 2 2
Pela definição da melhor aproximação , temos kf − (p + q)/2k ≥ En (f ). Então,
em (1.11.24) temos somente igualdades. Em particular,

k(f − p) + (f − q)k = kf − pk + kf − qk.

Como F é estritamente normado, temos que f − p = α(f − q). Se α = 1 essa


igualdade implica que p = q. Contradição! Se α 6= 1, temos f = (p−αq)/(1−α)
e, consequentemente, f ∈ Ωn , o que, por seu lado, implica que f = p = q.
Contradição novamente. O teorema está provado.

1.12 Aproximação uniforme de funções por po-


linômios algébricos
Seja [a, b] um dado intervalo finito. Consideremos o espaço linear de todas as
funções contı́nuas em [a, b]. Introduziremos uma norma nesse espaço, definida
por
kf k := max |f (x)|. (1.12.25)
x∈[a,b]

É fácil ver que (1.12.25) é realmente uma norma. Ela é chamada norma uniforme
(ou norma de Chebyshev). Daqui pra frente, denotaremos por C[a, b] o espaço
normado das funções contı́nuas em [a, b]. Como já sabemos, toda norma dá
origem a uma distância. A norma uniforme dá origem à distância uniforme

ρ(f, g) := kf − gk := max |f (x) − g(x)|. (1.12.26)


x∈[a,b]

No espaço métrico C[a, b] consideremos o problema da melhor aproximação de


funções contı́nuas por polinômios algébricos.
À quantidade
En (f ) := inf kf − pk
p∈πn
66 Capı́tulo1. Aproximação de Funções

chamaremos melhor aproximação uniforme de f por polinômios de grau n. Se


o ı́nfimo é atingido para algum polinômio p∗ de πn , i.e. se kf − p∗ k = En (f ), o
polinômio p∗ é chamado polinômio de melhor aproximação de f em πn .
Desde que C[a, b] é um espaço normado e πn é subespaço linear de C[a, b],
então o problema da existência de polinômio da melhor aproximação para toda
função contı́nua f se resolve como consequência do teorema geral sobre apro-
ximação em espaços lineares normados. O seguinte teorema vale.

Teorema 25 (Teorema de Borel) Para toda função f de C[a, b] e todo número


inteiro não negativo n, existe polinômio da melhor aproximação para f de grau
n.

A afirmação segue como caso particular do Teorema 11.5.


O problema da unicidade não pode ser resolvido pelo teorema geral sobre
aproximação em espaços estritamente normados porque C[a, b] não é estrita-
mente normado, que podemos mostrar com o seguinte exemplo. Seja [a, b] =
[0, 1]. Pra f1 (x) = 1 e f2 (x) = x, temos

kf1 k = kf2 k = 1, kf1 + f2 k = 2.

Consequentemente, kf1 + f2 k = kf1 k + kf2 k. Mas, obviamente, f1 e f2 não são


linearmente dependentes.
Então, o problema de unicidade do polinômio da melhor aproximação uni-
forme não é elementar. Começemos a resolvê-lo.

Lema 8 (Lema de Vallet-Poussin) Seja Q ∈ πn . Suponha que existem n + 2


pontos x0 < . . . < xn+1 em [a, b] e números positivos λ0 , . . . , λn+1 , tais que

f (xi ) − Q(xi ) = (−1)i ελi , i = 0, . . . , n + 1, (1.12.27)

onde ε = 1 ou ε = −1. Então ,

En (f ) ≤ λ := min λi .
0≤i≤n+1

Demonstração. Suponha o contrário. Então, existe um polinômio P ∈ πn ,


tal que
kf − P k = En (f ) < λ.

É obvio que P 6= Q. A situação é representada graficamente na Figura 5. A


propriedade (1.12.27) significa que o gráfico de Q oscila sobre o gráfico de f ,
de modo que a diferença f (x) − Q(x) assume valores {λi } com sinais que se
1.12 Aproximação uniforme de funções por polinômios algébricos 67

Q
f(x) + λ

f(x) − λ

x0 ξ1 x1 ξk xn+1

Figura 5

alternam (começando com mais se ε = 1, ou com menos se ε = −1). O gráfico


do polinômio P pertence à faixa de largura 2λ cuja curva central é f .
Desde que o gráfico de Q forma n + 1 barreiras nesta faixa (entre os pontos
x0 e x1 , x1 e x2 , . . . , xn e xn+1 ), então o gráfico de P cruza o gráfico de Q em
pelo menos em n + 1 pontos diferentes ξ1 , . . . , ξn+1 . Logo, P (ξi ) − Q(ξi ) = 0
para i = 1, . . . , n + 1. Mas, P − Q ∈ πn . Consequentemente, P ≡ Q. Chegamos
a uma contradição. Portanto, En (f ) ≥ λ e o lema está provado.
A caracterização completa do polinômio da melhor aproximação é dada pelo
grande matemático russo Pafnutii Lvovitch Chebyshev (1821-1894) no seu fa-
moso teorema da alternância. Esse teorema é a base da Teoria da Aproximação
.

Teorema 26 (Teorema de Chebyshev sobre a alternância). Seja f uma função


arbitrária e contı́nua no intervalo finito e fechado [a, b]. A condição necessária
e suficiente para o polinômio P de πn ser polinômio da melhor aproximação
para f de grau n em [a, b] é que existem n + 2 pontos {xi }n+1i=0 de [a, b], tais que
a ≤ x0 < x1 < · · · < xn+1 ≤ b e

f (xi ) − P (xi ) = (−1)i εkf − P k, i = 0, . . . , n + 1, (1.12.28)

onde ε = 1 ou ε = −1.

Demonstração. A condição (1.12.28) significa que a diferença f (x) − P (x)


atinge o maximo do seu módulo em n + 2 pontos onde ela alterna o sinal. Nesse
caso, dizemos que f e P realizam alternância em n + 2 pontos.
68 Capı́tulo1. Aproximação de Funções

Suficiência da condição (1.12.28). Seja P satisfazendo (1.12.28). Então, pelo


Lema de Valet-Poussin,
En (f ) ≥ kf − P k.

Mas, por definição, En (f ) ≤ kf − Qk para todo Q ∈ πn . Consequentemente,


En (f ) = kf − P k e P é polinômio de melhor aproximação .
Necessidade. Seja P um polinômio de melhor aproximação para f de grau n.
Mostremos que existem n + 2 pontos de alternância onde P satisfaz à condição
(1.12.28). É fácil ver que P tem pelo menos 2 pontos de alternância. De fato,
o gráfico de P pertence à faixa determinada por f (x) − En (f ) e f (x) + En (f )
e ele tangencia pelo menos uma dessas duas linhas limites. O nosso objetivo é
provar que o gráfico tangencia as duas linhas limites. Suponha que o gráfico de
P tangencia somente uma das linhas, por exemplo, a linha superior f (x)+En (f )
e não tangencia a linha inferior f (x) − En (f ). Então,

f (x) − En (f ) < P (x) ≤ f (x) + En (f )

e existe um constante c > 0 tal que

f (x) − En (f ) < P (x) − c < f (x) + En (f ).

Isto significa que |f (x) − (P (x) − c)| < En (f ) em [a, b]. Consequentemente, o
polinômio P (x) − c aproxima f melhor do que P . Chegamos a uma contradição.
Agora, suponha que a diferença f (x) − P (x) tem no máximo m + 2 pontos
de alternância em [a, b], com m < n. Sejam {xi }m+1
0 esses pontos, i.e., a ≤ x0 <
· · · < xm+1 ≤ b e

f (xi ) − P (xi ) = (−1)i ε En (f ), i = 0, . . . , m + 1,

para algum ε = 1 ou −1. Para todo intervalo [xi−1 , xi ] determinamos os pontos


x̄i−1 e xi do seguinte modo: x̄i−1 é o limite superior exato dos pontos x no
intervalo [xi−1 , xi ], para o qual

f (x) − P (x) = (−1)i−1 ε En (f ) (1.12.29)

e xi é o limite inferior dos pontos x de [xi−1 , xi ], para o qual

f (x) − P (x) = (−1)i ε En (f ). (1.12.30)

Sendo a função f contı́nua, então as igualdades (1.12.29) e (1.12.30) valem


para os pontos limites x̄i−1 e xi , respectivamente. Consequentemente x̄i−1 <
xi e f (x) − P (x) tem raiz em algum ponto ξi de (x̄i−1 , xi ) pois f (x) − P (x)
1.12 Aproximação uniforme de funções por polinômios algébricos 69

En

f(x) - P(x)

xi-1 xi - 1

ξi xi xi ξ i+1

d
-En

Figura 6

é uma função contı́nua e atinge valores de sinais opostos nos pontos x̄i−1 e
xi (veja Figura 6). Essa conclusão vale para todo i = 1, 2 . . . , m + 1. Seja
ξ0 := a, ξm+2 := b. Consideraremos o comportamento da diferença f (x) −
P (x) no intervalo [ξi , ξi+1 ]. Pela escolha dos pontos ξi é claro que f (x) − P (x)
atinge o máximo de seu módulo En (f ) somente com sinal (−1)i ε em [ξi , ξi+1 ].
Consequentemente,

−En (f ) < (−1)i ε[f (x) − P (x)] ≤ En (f ) (1.12.31)

para todo x de [ξi , ξi+1 ]. Isso é verdade para i = 0, . . . , m + 1. Desde que o


número de intervalos [ξi , ξi+1 ] é finito, existe um número δ > 0, tal que

−En (f ) + δ < (−1)i ε[f (x) − P (x)] ≤ En (f ) (1.12.32)

para x ∈ [ξi , ξi+1 ] e todo i. Introduzimos o polinômio

Q(x) := λ(x − ξ1 ) · · · (x − ξm+1 ),

onde λ é um número escolhido de modo que as seguintes condições sejam satis-


feitas:
1) |Q(x)| ≤ δ/2 para todo x ∈ [a, b];
2) sinal Q(x) = (−1)i ε para x ∈ [ξi , ξi+1 ].
Obviamente essas condições são satisfeitas quando

(−1)m+1 εδ
λ= , onde M := max |(x − ξ1 ) · · · (x − ξm+1 )|.
2M x∈[a,b]
70 Capı́tulo1. Aproximação de Funções

Desde que m < n por hipótese, Q ∈ πn e, consequentemente, P + Q ∈ πn .


Mostraremos que o polinômio P + Q aproxima f melhor do que P . Para esse
propósito, consideremos a diferença f (x) − (P (x) + Q(x)) no intervalo [ξi , ξi+1 ].
Pelas condições
δ δ
− ≤ Q(x) ≤
2 2
e
sinal Q(x) = sinal [f (x) − P (x)]

e pela desigualdade (1.12.32), segue que

δ δ
−En (f ) + < (−1)i ε[f (x) − (P (x) + Q(x)] ≤ En (f ) −
2 2
para todo x ∈ [ξi , ξi+1 ], i = 0, . . . , m + 1. Desde que a união dos intervalos
[ξi , ξi+1 ] cobre [a, b], então

δ
kf − (P + Q)k ≤ En (f ) − < En (f ).
2
Chegamos a uma contradição da definição de En (f ). Consequentemente, m ≥ n
e a demonstração está completa.
A unicidade do polinômio de melhor aproximação segue facilmente do teo-
rema de Chebyshev.

Corolário 4 Para toda função contı́nua f em [a, b] existe um único polinômio


de melhor aproximação de grau n.

Demonstração. Vamos supor o contrário. Então, existem uma função contı́nua


f e polinômios P e Q de πn , para os quais

kf − P k = kf − Qk = En (f ). (1.12.33)

Além disso, P 6= Q. O polinômio (P + Q)/2 é também polinômio de melhor


aproximação para f pois

P +Q 1
En (f ) ≤ kf − k = k(f − P ) + (f − Q)k
2 2
1 1
≤ kf − P k + kf − Qk = En (f ).
2 2

Pelo teorema da alternância existem pelo menos n + 2 pontos {xi }n+1


0 tais que

P (xi ) + Q(xi )
f (xi ) − = (−1)i εEn (f ) (ε = 1 ouε = −1).
2
1.12 Aproximação uniforme de funções por polinômios algébricos 71

Consequentemente,
¯ ¯
¯ f (xi ) − P (xi ) f (xi ) − Q(xi ) ¯
¯ + ¯ = En (f ). (1.12.34)
¯ 2 2 ¯

Mas,
|f (xi ) − P (xi )| ≤ En (f )

e
|f (xi ) − Q(xi )| ≤ En (f ),

de acordo com a proposição (1.12.33). Então, para ser satisfeita a equação


(1.12.34), os números f (xi ) − P (xi ) e f (xi ) − Q(xi ) têm que ter os mesmos
sinais e têm que ter módulos iguais a En (f ), i.e.,

f (xi ) − P (xi ) = f (xi ) − Q(xi ), i = 0, . . . , n + 1.

Segue que P (xi ) = Q(xi ) para i = 0, . . . , n + 1, o que implica P ≡ Q. Chegamos


a uma contradição da condição P 6= Q. A afirmação está provada.
Existem poucas funções f para os quais o polinômio de melhor aproximação
pode ser achado de forma explı́cita. Um exemplo interessante é a função xn .
Para todo n o polinômio de melhor aproximação de grau n − 1 de f (x) = xn
em [−1, 1] pode ser escrito explicitamente e está certamente relacionado ao
polinômio de Chebyshev Tn (x). Pelo teorema da alternância, Pn−1 é completa-
mente determinado pela condição da existência de (n − 1) + 2 pontos x0 , . . . , xm
em [−1, 1], tais que

xni − Pn−1 (xi ) = (−1)i ε max |xn − Pn−1 (x)|, i = 0, . . . , n. (1.12.35)


x∈[−1,1]

Mas, xn − Pn−1 (x) é um polinômio de grau n com coeficiente de xn igual a 1.


Consequentemente, (1.12.35) será satisfeita se construirmos um polinômio da
forma
xn + a1 xn−1 + · · · + an ,

que atinge o máximo de seu módulo em [−1, 1] em n + 1 pontos que alternam o


sinal. Mas, já sabemos que existe esse tal polinômio. Mostremos que o polinômio
de Chebyshev Tn satisfaz às condições

max |Tn (x)| = 1,


x∈[−1,1]

Tn (x) = 2n−1 xn + · · · ,
Tn (ξk ) = (−1)n−k , k = 0, . . . , n,
72 Capı́tulo1. Aproximação de Funções

onde ξk = cos kπ
n .
Consequentemente, o polinômio
1
Tn (x) = Pn−1 (x) − Pn−1 (x)
2n−1
satisfaz às condições exigidas (1.12.35) nos pontos ξ0 , . . . , ξn . Então,
1
Pn−1 (x) = xn − Tn (x)
2n−1
é o polinômio de melhor aproximação uniforme de grau n−1 para xn em [−1, 1].

1.13 Teorema de Weierstrass


Já vimos que para toda função f (x) contı́nua em [a, b] e para todo número
natural n fixo existe um polinômio de melhor aproximação pn de grau n. Deno-
temos a melhor aproximação por En (f ). Uma questão natural surge: se En (f )
converge para zero quando n converge para infinito? Em outras palavras, se
o gráfico do polinômio de melhor aproximação se aproxima cada vez mais do
gráfico de f quando n → ∞? A resposta dessa questão foi dada por Weierstrass.
Ele provou que toda função contı́nua é limite de uma sequência de polinômios
algébricos. Ou, mais visı́velmente, para qualquer faixa estreita escolhida ao re-
dor do gráfico de uma função contı́nua f , pode-se achar um polinômio algébrico
p cujo gráfico está localizado nessa faixa.
Para nos prepararmos para a demonstração desse resultado introduziremos
algumas noções.
Módulo de continuidade. Seja f uma função definida em [a, b]. A quan-
tidade

ω(f ; δ) := sup {|f (x) − g(x)| : x, y ∈ [a, b], |x − y| ≤ δ}

é chamada módulo de continuidade de f em [a, b]. Esse módulo é definido para


todo δ ∈ [0, b − a]. Ele caracteriza completamente as funções contı́nuas do
seguinte modo: a função f é contı́nua em [a, b] se, e somente se, ω(f ; δ) → 0
quando δ → 0. De fato, se f é contı́nua no intervalo finito e fechado [a, b],
ela é uniformemente contı́nua e, consequentemente, para todo ǫ > 0 existe um
número δ > 0, tal que se |x − y| < δ então |f (x) − f (y)| < ǫ para todo par de
pontos x, y ∈ [a, b]. Daqui segue que ω(f ; δ) → 0 quando δ → 0. Vice versa, se
ω(f ; δ) → 0 quando δ → 0, então para todo ǫ > 0 pode ser achado δ = δ(ǫ) > 0,
tal que ω(f ; δ) < ǫ. Segue que |f (x) − f (y)| < ǫ quando |x − y| < δ, i.e. f é
uniformemente contı́nua em [a, b].
1.13 Teorema de Weierstrass 73

Destaquemos algumas propriedades importantes do módulo de continuidade.


1) Se 0 < δ1 ≤ δ2 , então ω(f ; δ1 ) < ω(f ; δ2 ).
A mononicidade é uma consequência imediata da definição de ω(f ; δ).
2) Para todo número real λ > 0 vale a desigualdade

ω(f ; λδ) ≤ (1 + λ)ω(f ; δ).

Demonstração. Supomos primeiro que λ é um número inteiro. Sejam λ = k.


Seja x < y pontos arbitrarios de [a, b], tais que |x − y| ≤ kδ. Dividimos o
intervalo [x, y] em k partes iguais nos pontos xi = x + i(y − x)/k, i = 0, . . . , k.
Obviamente
y−x
xi − xi−1 = ≤ δ, i = 1, . . . , k.
k
Temos
¯ k ¯ k
¯X ¯ X
|f (x) − f (y)| = ¯ (f (xi ) − f (xi−1 ))¯ ≤ |f (xi ) − f (xi−1 )| ≤ kω(f ; δ).
¯ ¯
¯ ¯
i=1 i=1

Então, se |x − y| ≤ kδ, |f (x) − f (y)| ≤ kω(f ; δ). Consequentemente

ω(f ; kδ) ≤ kω(f ; δ)

e a desigualdade em 2) está provada para λ = k.


Seja, agora, λ um número real positivo arbitrário. Então [λ] ≤ λ < [λ] + 1,
onde [λ] é a parte inteira de λ. Da desiguladade que acabamos de provar e a
monotonicidade de ω(f ; δ) segue que

ω(f ; λδ) ≤ ω(f ; ([λ] + 1)δ) ≤ ([λ] + 1)ω(f ; δ) ≤ (λ + 1)ω(f ; δ).

e a afirmação 2) está provada.


Polinômios de Bernstein. Provaremos o resultado de Weierstrass usando
a demonstração sugerida por S. N. Bernstein (1880-1968). Para toda função f
contı́nua em [a, b] ele construiu de forma explicita, polinômios algébricos que
convergem para essa função na distância (métrica) uniforme.
Seja f (t) uma função arbitrária definida no intervalo [0, 1]. O polinômio de
Bernstein de grau n para a função f é denotado por Bn (f ; t) e é definido por
n
à !
X k n
Bn (f ; t) := f( ) tk (1 − t)n−k .
n k
k=0

Obviamente Bn ∈ πn , Bn (f ; 0) = f (0)e Bn (f ; 1) = f (1). Além disso,

Bn (cf ; t) = cBn (f ; t)
Bn (f + g; t) = Bn (f ; t) + Bn (g; t).
74 Capı́tulo1. Aproximação de Funções

As últimas duas propriedades mostram que Bn (f ; t) é um operador linear no


espaço das funções definidas em [0, 1].
Notemos, também, que os polinômios
à !
n
ϕnk (t) := tk (1 − t)n−k
k

são positivos em (0, 1). Seque que se f (t) ≥ 0 para todo t ∈ [0, 1], então
Bn (f ; t) ≥ 0 para todo t ∈ [0, 1]. Essa propriedade é chamada positividade do
operador Bn (f ; t). Dessa propriedade seque a monotonicidade de Bn (f ; t), i.e.,

f (t) ≤ g(t) em [0, 1] implica Bn (f ; t) ≤ Bn (g; t) em [0, 1].

O seguinte lema dá uma representação para Bn (f ; t). Para esse propósito, de-
notemos por ∆k f a diferença finita de f nos pontos 0, 1/n, 2/n, · · · , k/n.

Lema 9
n
à !
X
k n
Bn (f ; t) = ∆ f tk .
k=0
k

Demonstração. Usando a fórmula binomial de Newton para (1 − t)n−k ,


obtemos
n
à ! n−k à !
X k n k
X
n−k−j n−k
Bn (f ; t) = f( ) t (−1) tn−k−j .
n k j=0
j
k=0

Fazendo m = n − j, obtemos
n
n X
à !à !
X n−k n k
Bn (f ; t) := (−1)m−k f ( )tm .
n−m k n
k=0 m=k

Desde que à !à ! à !à !
n−k n n m
= ,
n−m k m k
invertendo a ordem da soma, obtemos
n
à !( m à ! )
X n X
m−k m k
Bn (f ; t) := (−1) f ( ) tm ,
m=0
m k m
k=0

que é exatamente a repesentação desejada para Bn (f ; t). O lema está provado.


Observação. Do Lema 1 segue, por exemplo, que se f é um polinômio de
grau m, Bn (f ; t) ∈ πm para todo n. (Sugestão: Use a propriedade de diferenças
finitas que anula os polinômios algebricos.)
1.13 Teorema de Weierstrass 75

Achemos Bn (f ; t) para as funções f (t) = 1, f (t) = t e f (t) = t2 . Vamos


precisar deles mais tarde.
a) Bn (1; t) = 1. De fato,
n
à !
X n
Bn (f ; t) := tk (1 − t)n−k = {t + (1 − t)}n = 1.
k=0
k
b) Para f (t) = t temos Bn (f ; t) = t.
Demonstração. Aplicando o Lema 1 nesse caso particular, obtemos
à ! à ! µ ¶
n n 1
Bn (f ; t) = ∆f t + f (0) 1= − 0 nt = t.
1 0 n

b) Para f (t) = t2 temos Bn (f ; t) = t2 + t(1−t)


n .
Demonstração. Do Lema 1
à ! à ! à !
2 n 2 n n
Bn (f ; t) = ∆ f t + ∆f t + f (0) 1
2 1 0
õ ¶ !
2 µ ¶2
2 1 n(n − 1) 2 t
= −2 +0 t +
n n 2 n
2 n(n − 1) 2 t n−1 2 t t(1 − t)
= t + = t + = t2 + .
n2 2 n n n n
Dos exemplos vemos que Bn (f ; t) → f (t) quando n → ∞ para f (t) = 1, t, t2 .
Mais tarde, veremos, pela convergência dos polinômios de Bernstein para essas
funções, como segue a convergência para toda função contı́nua em [0, 1].
Teorema 27 Seja f função contı́nua arbitrária em [0, 1]. Então, para todo n
e todo t ∈ [0, 1], temos
3 1
|f (t) − Bn (f ; t)| ≤ ω(f ; √ ).
2 n
Demonstração. Seja t um ponto arbitrário em [0, 1]. Notemos que
n n
à !
X n X
f (t) = f (t) tk (1 − t)n−k = f (t) = f (t)ϕnk (t).
k=0
k k=0

Então,
¯ n · ¸ ¯
¯X k ¯
|f (t) − Bn (f ; t)| = ¯ f (t) − f ( ) ϕnk (t)¯
¯ ¯
¯ n ¯
k=0
n ¯ ¯
¯f (t) − f ( k )¯ ϕnk (t)
X ¯ ¯
≤ ¯ n ¯
k=0
n µ ¯ ¯¶
X ¯ k ¯¯
≤ ω f ; ¯t − ¯ ϕnk (t).
¯
n
k=0
76 Capı́tulo1. Aproximação de Funções

Pela propriedade 2 de ω(f ; δ) temos


à ¯ ¯ ! µ ¯
µ ¯
k
¯¶ ¯t − k ¯ 1 ¯¯
¯
k ¯¯

n
¯ ¯
ω f ; ¯t − ¯ = ω f ;
¯ ¯ δ ≤ t − ¯ + 1 ω(f ; δ)
n δ δ¯ n

para todo δ > 0. Então,


n ¯ ¯
ω(f ; δ) X ¯¯ k ¯¯
|f (t) − Bn (f ; t)| ≤ ¯t − n ¯ ϕnk (t) + ω(f ; δ).
δ
k=0

Pela desigualdade de Cauchy-Schwartz


n ¯ ¯ Ã n µ ¶2 !1/2 Ã n !1/2
X ¯ k ¯
¯t − ¯ ϕnk (t) ≤
X k X
t− ϕnk (t) ϕnk (t)
¯ n¯ n
k=0 k=0 k=0
p
= Bn ((t − x)2 ; t).

Aqui Bn ((t−x)2 ; t) é o valor do polinômio de Bernstein no ponto t para a função


(t − x)2 considerada como função de x (t é o parâmetro). Finalmente, obtemos
ω(f ; δ) p
|f (t) − Bn (f ; t)| ≤ Bn ((t − x)2 ; t) + ω(f ; δ).
δ
Mas, pela linearidade do operador Bn (f ; t) e usando as expressões de Bn (f ; t)
ja obtidos em a), b) e c) para f (x) = 1, x, x2 , obtemos

Bn ((t − x)2 ; t) = Bn (t2 − 2tx + x2 ; t)


= t2 Bn (1; t) − 2tBn (x; t) + Bn (x2 ; t)
t(1 − t) t(1 − t)
= t2 − 2t.t + t2 + = .
n n
Consequentemente, para todo δ > 0 e para todo t ∈ [0, 1], temos
( r )
1 t(1 − t)
|f (t) − Bn (f ; t)| ≤ ω(f ; δ) +1 .
δ n
1
Mas, t(1 − t) ≤ 4 para t ∈ [0, 1]. Consequentemente,
( r )
1 t(1 − t)
|f (t) − Bn (f ; t)| ≤ ω(f ; δ) +1 .
δ n

Escolhendo δ = √1 obtemos
n

3 1
|f (t) − Bn (f ; t)| ≤ ω(f ; √ ).
2 n
Já estamos prontos para dar a demonstração do teorema de Weierstrass para
um intervalo finito [a, b] arbitrário.
1.14 Polinômios ortogonais 77

Teorema 28 (Teorema de Weierstrass). Seja [a, b] um intervalo arbitrário fi-


nito e seja f (x) uma função contı́nua em [a, b]. Então, para todo ǫ > 0, existe
um polinômio algébrico P (x), tal que

max |f (x) − P (x)| ≤ ǫ.


x∈[a,b]

Demonstração. Usaremos o Teorema 2. Para esse propósito introduzimos a


função
h(t) := f (a + t(b − a)),
definida para todo t ∈ [0, 1]. Desde que f é contı́nua em [a, b], h(t) é contı́nua
em [0, 1] e, consequentemente,

lim ω(h, δ).


δ→0

Então, existe n tal que


3 1
ω(h; √ ) < ǫ.
2 n
Pelo Teorema 2,
3 1
|h(t) − Bn (h; t)| ≤ ω(h; √ ) < ǫ
2 n
para esse n, i.e., o polinômio Bn (h; t) aproxima h em [0, 1] com precisão ǫ.
Voltando para a variavel x pela substituição t = x−a
b−a , obtemos
µ ¶ µ ¶
x−a x−a
h − Bn h; < ǫ para x ∈ [a, b].
b−a b−a

1.14 Polinômios ortogonais


Daqui em diante precisaremosde várias propriedades dos polinômios orto-
gonais. Por esta razão, forneceremos algumas informações preliminares sobre
eles.
Sejam [a, b] um intervalo dado, finito ou infinito, e µ(x) uma função definida
e não-negativa em [a, b]. Vamos supor que
Z β
µ(x) dx > 0
α

para qualquer subintervalo [α, β] de [a, b]. Toda função µ(x) que satisfaz essa
propriedades é chamada função peso em [a, b]. O produto interno (f, g) de duas
funções funções f (x) e g(x) é definido por
Z b
(f, g) = µ(x)f (x)g(x) dx.
a
78 Capı́tulo1. Aproximação de Funções

É claro que estamos supondo que f e g são definidas em [a, b] e que a integral
acima existe.

Definição 9 As funções f (x) e g(x) são ortogonais em [a, b] com relação à


função peso µ(x) se (f, g) = 0.

Definição 10 Dizemos que P0 (x), P1 (x), P2 (x), . . . é uma sequência de polinômios


ortogonais em [a, b] relativamente à função peso µ(x) se

a) P i ∈ πi , ∀i,

b) (Pi , Pi ) 6= 0, ∀i,

c) (Pi , Pj ) = 0 para i 6= j.

Destaquemos algumas propriedades dos polinômios ortogonais.

Propriedade 1 Toda subsequência finita P0 (x), . . . , Pn (x) de

P0 (x), P1 (x), P2 (x), . . .

é um sistema de funções linearmente independentes.

Demonstração . Supomos o contrário. Então, existem um número n e co-


eficientes a0 , . . . , an , com pelo menos um deles diferente de zero, tais que o
polinômio f (x) = a0 P0 (x) + · · · + an Pn (x) é identicamente nulo. Então,

(1) (f, Pi ) = 0 para todo i.

Por outro lado,


n
X
(f, Pi ) = ak (Pk , Pi ) = ai (Pi , Pi )
k=0

e pelo menos um dos coeficientes a0 , . . . , an é diferente de zero. Isto, junto com


a condição b) leva a uma contradição com (1). A afirmação está provada.

Propriedade 2 Se o polinômio f (x) é de grau menor ou igual do que n, então


f pode ser unicamente representada por

f (x) = a0 P0 (x) + · · · + an Pn (x)

com coeficientes reais a0 , . . . , an .


1.14 Polinômios ortogonais 79

Isto é uma simples consequência simples da Propriedade 1. Desde que πn


é um espaço linear de dimensão (n + 1) e P0 , . . . , Pn são , de acordo com a
Propriedade 1, n + 1 elementos linearmente independentes de πn , então cada
elemento de πn pode ser representado como combinação linear deles. É facil
obter as expressões explı́citas para ak , k = 0, . . . , n. De fato, temos

(f, Pk ) = a0 (P0 , Pk ) + · · · + ak (Pk , Pk ) + · · · + an (Pn , Pk )

= ak (Pk , Pk ).

Portanto,
(f, Pk )
ak = .
(Pk , Pk )
Vale a pena mencionar também que as condições a), b) e c) implicam que Pn (x)
é um polinômio algébrico de grau exatamente n, isto é, Pn (x) é da forma

(2) Pn (x) = αn xn + q(x), q(x) ∈ πn−1 ,

onde αn 6= 0. Supomos o contrário. Então, Pn ∈ πn−1 e, de acordo com


Propiedade 2, Pn (x) pode ser escrito da forma

Pn (x) = a0 P0 (x) + · · · + an−1 Pn−1 (x)

com constantes a0 , . . . , an−1 . Mas, esta relação significa que P0 , . . . , Pn são


linearmente dependentes, o que contradiz à Propriedade 1.

Propriedade 3 Seja f (x) um polinômio arbitrário de grau menor ou igual a


n − 1. Então, (f, Pn ) = 0.

Demonstração. Desde que f ∈ πn−1 , pela Propriedade 2,

f (x) = a0 P0 (x) + · · · + an−1 Pn−1 (x).

Portanto, pela Propriedade c),

(f, Pn ) = a0 (P0 , Pn ) + · · · + an−1 (Pn−1 , Pn ) = 0.

Propriedade 4 Para todo número natural n, o polinômio Pn (x) tem n zeros


distintos que pertencem ao intervalo aberto (a, b).

Demonstração. Suponha que o polinômio Pn (x) tem somente k mudanças


k
de sinal em (a, b) e k < n. Sejam {ξi }i=1 , a < ξ1 < · · · < ξk < b, os pontos onde
80 Capı́tulo1. Aproximação de Funções

Pn (x) muda de sinal. Escolhemos um ponto arbitrário t do intervalo (ξk , b) onde


Pn (t) 6= 0 e construimos o polinômio

Q(x) = Pn (t)(x − ξ1 ) . . . (x − ξk ).

Obviamente Q(x)Pn (x) é um polinômio algébrico que não é identicamente nulo


e Q(x)Pn (x) ≥ 0 em [a, b]. Consequentemente,
Z b
(Q, Pn ) = µ(x)Q(x)Pn (x) dx > 0.
a

Por outro lado Q ∈ πn−1 pois k < n. Pela Propriedade 3, (Q, Pn ) = 0. Assim
temos uma contradição. Consequentemente, k ≥ n. Desde que Pn (x) muda de
sinal em ξi , i = 1, . . . , k, então ξ1 , . . . ξk são zeros de Pn (x). Mas, Pn ∈ πn .
Entao, de acordo com o teorema fundamental da álgebra, Pn (x) tem no máximo
n zeros reais em (a, b). Consequentemente, k é exatamente n, isto é, ξ1 , . . . , ξn
são todos os zeros de Pn (x), eles pertencem ao intervalo (a, b) e são distintos.

Propriedade 5 Todo sistema de polinômios ortogonais

P0 (x), P1 (x), . . .

satisfaz a uma relação de recorrência de três termos da forma

(3) Pn+1 (x) = (An x − Bn )Pn (x) + Cn Pn−1 (x), n = 1, 2, . . . ,

onde An , Bn , Cn são constantes.

Demonstração. Pela Propriedade 2,

xPn (x) = a0 P0 (x) + · · · + an Pn (x) + an+1 Pn+1 (x)

com constantes a0 , . . . , an+1 . Multiplique esta igualdade por Pi (x) e integremos.


Daı́,
Z b
(4) µ(x)xPn (x)Pi (x) dx = ai (Pi , Pi ), i = 0, . . . , n + 1.
a

A integral à esquerda é igual a zero para i = 0, . . . , n − 2, de acordo com Pro-


priedade 3 pois xPi (x) ∈ πn−1 . Consequentemente, ai = 0 para i = 0, . . . , n − 2
e

(5) xPn (x) = an−1 Pn−1 (x) + an Pn (x) + an+1 Pn+1 (x).
1.14 Polinômios ortogonais 81

Assim, obtemos a relação desejada. Por (4) achamos

(xPn , Pn−1 )
an−1 = ,
(Pn−1 , Pn−1 )
(xPn , Pn )
an = ,
(Pn , Pn )

enquanto que (5) implica que an+1 = αn /αn+1 , se

Pk (x) = αk xk + polinômio de πk−1 , k = 0, 1, . . . .

Propriedade 6 Para o polinômio ortogonal Pn (x) com relação à função peso


µ(x) no intervalo [a, b] e para cada polinômio Qn (x) ∈ πn com o mesmo coefi-
ciente de xn que Pn (x), a desigualdade
Z b Z b
µ(x)Pn2 (x) dx ≤ µ(x)Q2n (x) dx,
a a

vale. Além disso, a igualdade é atingida somente quando Pn (x) ≡ Qn (x).

Demonstração. De acordo com as hipóteses, temos

Pn (x) = αn xn + qn−1 (x)

Qn (x) = αn xn + rn−1 (x),

onde αn 6= 0 e qn−1 , rn−1 ∈ πn−1 . Então,


Z b Z b
2
µ(x)Q2n (x) dx = µ(x) [αn xn + rn−1 (x)] dx
a a
Z b
2
= µ(x)[Pn (x) + rn−1 (x) − qn−1 (x)] dx
a
Z b
= µ(x)Pn2 (x) dx
aZ
b
+ 2 µ(x)Pn (x) [rn−1 (x) − qn−1 (x)] dx
a
Z b
2
+ µ(x)[rn−1 (x) − qn−1 (x)] dx.
a
Rb
Desde que rn−1 − qn−1 ∈ πn−1 , a µ(x)Pn (x) [rn−1 (x) − qn−1 (x)] dx = 0. Ob-
temos, então
Z b Z b
µ(x)Q2n (x) dx − µ(x)Pn2 (x) dx ≥ 0,
a a
82 Capı́tulo1. Aproximação de Funções

onde a igualdade é possı́vel somente quando rn−1 (x) ≡ qn−1 (x), isto é, quando
Qn (x) ≡ Pn (x). A propriedade está provada.
Finalmente, esclarecemos a questão fundamental da existência e, eventual-
mente, da construção de sequências de polinômios ortogonais para um intervalo
[a, b] e uma função peso µ(x) dados. Sejam [a, b] um intervalo arbitrário e µ(x)
uma função peso qualquer em [a, b]. Vamos exigir que µ(x) satisfaça à condição
adicional Z b
µ(x)xk dx < ∞, k = 0, 1, . . . ,
a
caso o intervalo [a, b] seja infinito. Para construir uma sequência de polinômios
ortogonais, podemos executar o seguinte esquema (agir da seguinte maneira):
1. Escolhemos uma sequência qualquer de números α0 , α1 , . . ., todos dife-
rentes de zero. Eles serão os coeficientes de xn em Pn (x), respectivamente, para
n = 0, 1, . . . . Consequentemente, P0 (x) ≡ α0 .
2. Para n = 1, 2, . . ., construimos o polinômio

Pn (x) = αn xn + polinômio de πn−1

de modo que satisfaça às condições

(6) (Pn , Pi ) = 0, i = 0, . . . n − 1.

Evidentemente as condições (6) serão satisfeitas se (Pn , f ) = 0 para todo f ∈


πn−1 . Consequentemente, o problema reduz-se à construção do polinômio Pn (x)
de grau n com coeficiente αn , de xn , fixo que é ortogonal a todos os polinômios
do espaço πn−1 . Este problema é de interesse mais geral e por isto vamos tratá-lo
em um teorema separado.

Teorema 29 Para um intervalo [a, b], uma função peso µ(x) e um coeficiente
αn dados, existe um único polinômio da forma

Pn (x) = αn xn + polinômio de πn−1 ,

que é ortogonal a todos os polinômios de grau menor ou igual a n − 1.

Demonstração. Apliquemos indução em n. Para n = 0 o polinômio P0 (x)


é únicamente determinado pela condição P0 (x) = α0 . Suponhamos que já de-
terminamos, unicamente, P0 , P1 , . . ., Pn−1 . Desde que eles formam um sitema
de polinômios ortogonais, todo polinômio de grau n − 1 pode ser representado
como combinação linear deles. Consequentemente, Pn (x) pode ser escrito da
forma
Pn (x) = αn xn + bn−1 Pn−1 (x) + · · · + b0 P0 (x).
1.14 Polinômios ortogonais 83

Pelas condições de ortogonalidade (6), obtemos

(Pn , Pi ) = αn (xn , Pi ) + bi (Pi , Pi ),

e, por esta igualdade, para um dado αn , os coeficientes bi podem ser unicamente


determinados. O teorema está provado.
Então, para um intervalo [a, b], uma função peso µ(x) e coeficientes α0 , α1 , . . .,
para as maiores potências das variáveis, existe um único sistema de polinômios
ortogonais.

Exemplo. Provar que os polinômios


n
1 dn (x2 − 1)
Ln (x) = , n = 0, 1, . . . ,
2n n! dxn
formam um sistema ortogonal em [−1, 1] com relação à função peso µ(x) ≡ 1.
n
Solução. Temos que verificar as condições a), b) e c). Obviamente (x2 − 1) é
um polinômio de grau exatamente 2n. Consequentemente, sua n-ésima derivada
é um polinômio de grau exatamente n. Isto implica que a) e b) estão satisfeitas.
Basta provar que c) vale. Mostraremos que
Z 1
Ln (x)f (x) dx = 0
n1

1 n
para todo polinômio f ∈ πn−1 . De fato, denotando a função 2n n! (x2 − 1) por
ϕ(x) e integrando repetidamente por partes, obtemos
Z 1 Z 1 Z 1
(n)
Ln (x)f (x) dx = f (x)ϕ (x) dx = f (x) dϕ(n−1) (x)
−1 −1 −1
¯1 Z 1
= f (x)ϕ(n−1) (x) ¯ − f ′ (x)ϕ(n−1) (x) dx
¯
−1 −1

= ··· ··· ··· ··· ··· ··· ···


n ¯1 Z 1
k−1 (k−1) n
X
= (−1) f ϕ(n−k) ¯ + (−1) f (n) (x)ϕ(x) dx.
¯
−1 −1
k=1

Esta última expressão é igual a zero pois f (n) (x) ≡ 0 e ϕ(n−k) (x) é zero nos
ponto x = ±1 para k = 1, . . . , n.
Os polinômios Ln (x) são chamados polinômios de Legendre.
O coeficiente 2n1n! é escolhido para que seja satisfeita a condição

Ln (1) = 1, n = 0, 1, 2, . . . .
84 Capı́tulo1. Aproximação de Funções

Problema. Mostrar que os polinômios de Chebyshev de primeira espécie

Tn (x) = cos n arccos x


1
são ortogonais em [−1, 1] com relação à função peso µ(x) = √1−x 2
.
Mostrar que os polinômios de Chebyshev de segunda espécie

Un (x) := Tn+1 (x)

são ortogonais em [−1, 1] relativamente à função peso µ(x) = 1 − x2 .
Os polinômios de Legendre e de Chebyshev de primeira e de segunda espécies
(α,β)
são casos especiais dos polinômios de Jacobi {Pn }, que são ortogonais em
α β
[−1, 1] com relação à função peso (1−x) (1+x) , para α, β > −1. São definidos
pela fórmula
(−1)n dn
Pn(α,β) (x) = n
(1 − x)−α (1 + x)−β n {(1 − x)n+α (1 + x)n+β }.
2 n! dx

1.15 Aproximação em espaços de Hilbert


O espaço linear H é chamado espaço de Hilbert se nele é introduzido um pro-
duto interno. Ou seja, para quaisquer dois elementos f, g de H definimos o pro-
duto interno (f, g) como sendo um número que satisfaz às seguintes condições:
1) (f, f ) ≥ 0, e (f, f ) = 0 ⇔ f = 0,
2) (f, g) = (g, f ),
3) (αf + βg, h) = α(f, h) + β(g, h).
Consideraremos somente o caso em que (f, g) é um número real.
Todo espaço de Hilbert pode ser normado introduzindo uma norma da se-
guinte maneira:
p
(1) kf k := (f, f ).

Para verificar que (1) é realmente uma norma em H, provaremos algumas pro-
priedades de produto interno.
Desigualdade de Cauchy-Schwartz: Para quaisquer dois elementos f e g do
espaço de Hilbert H, vale a desigualdade
p p
|(f, g)| ≤ (f, f ) (g, g),

onde a igualdade vale se, e somente se, f e g são linearmente dependentes.


Demonstração. Para todo número real t temos

(f + tg, f + tg) = (f, f ) + 2t(f, g) + t2 (g, g) ≥ 0.


1.15 Aproximação em espaços de Hilbert 85

Esta expressão é um polinômio do segundo grau em t. Consequentemente, seu


discriminante é não-positivo, isto é,

[(f, g)]2 ≤ (f, f ) (g, g).

A desigualdade está provada. Se f = αg, obviamente a desigualdade torna-se


igualdade. É verdade a recı́proca, isto é, se tivermos igualdade, então f e g
são linearmente dependentes. De fato, se fosse o contrário, obterı́amos, por um
lado, (f − αg, f − αg) > 0 para todo α e, por outro,
³p p ´2
(f − αg, f − αg) = (f, f ) − 2α(f, g) + α2 (g, g) = (f, f ) − α (g, g) = 0
p p
para α = (f, f )/ (g, g). A demonstração está completa.

Desigualdade triangular: Para quaisquer f e g de H temos


p p p
(2) (f + g, f + g) ≤ (f, f ) + (g, g),

com a igualdade sendo atingida se, e somente se, f e g são linearmente depen-
dentes.

Demonstração. Aplicando a desigualdade de Cauchy-Schwartz obtemos

(f + g, f + g) = (f, f ) + 2(f, g) + (g, g)


p
≤ (f, f ) + 2 (f, f )(g, g) + (g, g)
np p o2
= (f, f ) + (g, g) ,

o que implica em (2). A igualdade é atingida se, e somente se, [(f, g)]2 =
(f, f )(g, g). Mas, como já observamos, isto é verdade somente quando f e g são
linearmente dependentes.
Com a notação (1), podemos escrever (2) da forma

kf + gk ≤ kf k + kgk.

Isto mostra que a relação f → kf k, introduzida por (1), satisfaz à desigualdade


triangular. As demais propriedades da definição de norma, isto é, kf k > 0 para
f 6= 0 e kλf k = |λ|kf k), são obviamente satisfeitas. Consequentemente, (1)
define uma norma em H.
A norma (1), por outro lado, gera a distância
p
d(f, g) := kf − gk = (f − g, f − g).
86 Capı́tulo1. Aproximação de Funções

Daqui por diante, quando falarmos em espaço de Hilbert, vamos supor que ele
é normado e métrico pelo esquema descrito acima.
Sejam ϕ0 , ϕ1 , . . . , ϕn arbitrários, mas elementos fixos de H. Denotemos por
( n )
X
n+1
Ωn := ai ϕi : (a0 , . . . , an ) ∈ IR .
i=0

Consideremos o problema de aproximação de elementos f de H por elementos


de Ωn . Primeiramente, observamos que H é um espaço estritamente normado.
Isto é consequência da desigualdade triangular (2) formulada e demonstrada
acima. Consequentemente, pelo teorema geral de aproximação em espaços line-
ares normados:

Para todo f de H, existe um único elemento de Ωn que é a melhor apro-


ximação para f .

Basta considerar a importante questão de construção do elemento da melhor


aproximação. Primeiramente, forneceremos sua caracterização.
Dizeremos que f é ortogonal a g e escrevemos f ⊥ g, se (f, g) = 0.

Teorema 30 Sejam H um espaço de Hilbert e f ∈ H. O elemento p de Ωn é o


elemento de melhor aproximação para f por elementos de Ωn se, e somente se,

(3) (f − p, ϕ) = 0 para todo ϕ de Ωn .

Demonstação. Vamos supor que p é o elemento de melhor aproximação, isto


é,
kf − pk = inf { kf − ϕk : ϕ ∈ Ωn } =: εn (f ).

Então, para qualquer ϕ ∈ Ωn e ϕ 6= 0, a função

r(λ) := kf − p + λϕk2 = (f − p + λϕ, f − p + λϕ)

= ε2n (f ) + 2λ(f − p, ϕ) + λ2 (ϕ, ϕ)

tem ponto de mı́nimo para λ = 0. Isto implica em r′ (0) = 0. Mas r′ (0) =


2(f − p, ϕ). Consequentemente, (f − p, ϕ) = 0 para todo ϕ ∈ Ωn .
Reciprocamente, vamos supor que p ∈ Ωn satisfaz às condições de ortogona-
lidade (3). Seja ϕ qualquer outro elemento de Ωn . Então, δ := p − ϕ ∈ Ωn e,
portanto,

kf − ϕk2 = kf − p + p − ϕk2 = (f − p + δ, f − p + δ)
1.15 Aproximação em espaços de Hilbert 87

= kf − pk + 2(f − p, δ) + kδk2

= kf − pk2 + kδk2 (porquef − p ⊥ δ)

≥ kf − pk2 .

Aqui, se p satisfaz (3), então

kf − pk ≤ kf − ϕk para todo ϕ ∈ Ωn .

Além disso, a igualdade é atingida somente para δ = 0, isto é, para ϕ = p. O


teorema está provado.

Agora, construiremos o elemento de melhor aproximação de f usando a


caracterização (3). Procuraremos p da forma

p = a0 ϕ0 + a1 ϕ1 + . . . + an ϕn .

Desde que f − p ⊥ ϕi para i = 0, 1, . . . , n, então os coeficientes {ai } satisfazem


às condições :

a0 (ϕ0 , ϕ0 ) + a1 (ϕ1 , ϕ0 ) + . . . + an (ϕn , ϕ0 ) = (f, ϕ0 )

(4) a0 (ϕ0 , ϕ1 ) + a1 (ϕ1 , ϕ1 ) + . . . + an (ϕn , ϕ1 ) = (f, ϕ1 )

.................................................................................
a0 (ϕ0 , ϕn ) + a1 (ϕ1 , ϕn ) + . . . + an (ϕn , ϕn ) = (f, ϕn )
que é um sistema linear de n + 1 equações com n + 1 incógnitas. Denotemos
por D(ϕ0 , . . . , ϕn ) o seu determinante,

(ϕ0 , ϕ0 ) (ϕ1 , ϕ0 ) . . . (ϕn , ϕ0 )


 
 (ϕ0 , ϕ1 ) (ϕ1 , ϕ1 ) . . . (ϕn , ϕ1 ) 
D(ϕ0 , . . . , ϕn ) := det  .. .. .. .
 
..
 . . . . 
(ϕ0 , ϕn ) (ϕ1 , ϕn ) ... (ϕn , ϕn )
Este é o determinante de Gram, que é diferente de zero pois ϕ0 , . . . , ϕn são
linearmente independentes. Consequentemente, o sistema (4) tem uma única
solução a0 , . . . , an . Então, o cálculo do elemento de melhor aproximação em um
espaço de Hilbert reduz-se à solução do sistema (4).

A solução do sistema (4) pode ser facilitada se a base ϕ0 , . . . , ϕn é ortogonal.


Sabe-se, por exemplo, que em todo espaço linear existe uma base ortogonal.
88 Capı́tulo1. Aproximação de Funções

Vamos supor que ϕ0 , . . . , ϕn seja um sitema ortogonal, isto é, (ϕi , ϕj ) = 0 para
i 6= j. Então, (4) reduz-se a forma

ak (ϕk , ϕk ) = (f, ϕk ) , k = 0, . . . , n,

de onde obtemos
(f, ϕk )
(5) ak = , k = 0, . . . , n.
(ϕk , ϕk )

Assim, mostramos a seguinte afirmação.

Teorema 31 Seja ϕ0 , . . . , ϕn um sistema ortogonal. Então, o elemento p de


melhor aproximação de f ∈ H por elementos de Ωn é dado pela fórmula
n
X (f, ϕk )
p= ϕk .
(ϕk , ϕk )
k=0

Vamos obter uma expressão para o erro εn (f ) = kf − pk. Temos que

ε2n (f ) = (f − p, f − p) = (f, f ) − (p, f ) ( onde f − p ⊥ p).

Por esta igualdade, representando p da forma p = a0 ϕ0 + . . . + an ϕn , obtemos


a relação

a0 (ϕo , f ) + a1 (ϕ1 , f ) + . . . + an (ϕn , f ) = (f, f ) − ε2n (f ).

Usando esta relação junto com o sitema (4) formamos um sistema homogênio de
n + 2 equações lineares com relação a (a0 , a1 , . . . , an , 1). Desde que este sistema
tem solução não-nula, seu determinante é igual a zero, isto é,

(ϕ0 , ϕ0 ) . . . (ϕn , ϕ0 ) (f, ϕ0 )


 
.. .. .. ..
. . . .
 
det  =0.
 
 (ϕ0 , ϕn ) . . . (ϕn , ϕn ) (f, ϕn ) 
2
(ϕ0 , f ) . . . (ϕn , f ) (f, f ) − εn (f )

Por esta igualdade, determinamos ε2n (f ):

D(f, ϕ0 , . . . , ϕn )
(6) ε2n (f ) = .
D(ϕ0 , . . . , ϕn )

Então, provamos a igualdade


° n
°2
° X ° D(f, ϕ0 , . . . , ϕn )
minn °f − ak ϕk ° = .
° °
{ak }0 ° ° D(ϕ0 , . . . , ϕn )
k=0
1.15 Aproximação em espaços de Hilbert 89

Esta fórmula vale para qualquer escolha da base ϕ0 , . . . , ϕn . Se ϕ0 , . . . , ϕn é


um sistema ortonormal, isto é, se (ϕi , ϕj ) = 0 para i 6= j e (ϕi , ϕi ) = 1 para
i = 0, . . . n, obtemos diretamente

ε2n (f ) = (f − p, f − p) = (f, f ) − (p, f )


n
X
= (f, f ) − ak (ϕk , f )
k=0
n
X
= kf k2 n a2k (pois, de acordo com (5), ak = (ϕk , f )).
k=0

Desde que ε2n (f ) > 0 para f 6∈ Ωn , isto implica na desigualdade de Bessel:


à n !1/2
X
2
ak ≤ kf k .
k=0

Observação. Por (6) e sabendo que D(g1 ) = (g1 , g1 ) > 0 para todo g1 6= 0,
segue por indução, que o determinante de Gram, D(g1 , . . . , gn ), é estritamente
positivo se os elementos g1 , . . . , gn são linearmente independentes.
Casos Particulares
I. Aproximações em L2 .
Seja [a, b] um dado intervalo, finito ou infinito. Seja µ(x) uma função peso in-
tegrável em [a, b]. Denotamos por L2 [a, b] o espaço de todas as funções definidas
em [a, b], para as quais
Z b
µ(x)f 2 (x) dx < ∞.
a

É claro que L2 [a, b] é um espaço linear. Definiremos o produto interno neste


espaço da seguinte maneira:
Z b
(f, g) := µ(x)f (x)g(x) dx.
a

Não é difı́cil mostrar que o produto dado por esta definição satisfaz a todas as
exigências de produto interno. Assim, L2 [a, b] torna-se um espaço de Hilbert.
A norma
nZ b o1/2
kf k := µ(x)f 2 (x) dx
a
é chamada média quadrática. Ela gera a distância média quadrática
(Z )1/2
b
2
ρ(f, g) := µ(x) [f (x) − g(x)] dx .
a
90 Capı́tulo1. Aproximação de Funções

Sejam ϕ0 (x), . . . ϕn (x) funções arbitrárias e linearmente independentes do espaço


L2 [a, b]. Particularmente, {ϕi } podem ser polinômios algébricos 1, x, x2 , . . . , xn .
Então, em L2 [a, b] podemos considerar o problema de aproximação média quadrática
de uma dada função f ∈ L2 [a, b] por polinômios generalizados a0 ϕ0 (x)+a1 ϕ1 (x)+
. . . + an ϕn (x).
De acordo com a teoria geral de aproximação em espaços de Hilbert vale o
seguinte teorema:

Teorema 32 Para toda função f de L2 [a, b] existe um único polinômio


n
X
p(x) = a∗k ϕk (x),
k=0

para o qual
" n
#2
Z b Z b
2
X
µ(x) [f (x) − p(x)] dx = min µ(x) f (x) − ak ϕk (x) dx.
a {ak } a k=0

Além disso, se ϕ0 , . . . , ϕn é um sistema ortonormal,


n
"Z #
X b
(7) p(x) = µ(t)f (t)ϕk (t) dt ϕk (x).
k=0 a

II. Método dos mı́nimos quadrados.

Na prática, frequentemente precisamos resolver o seguinte problema.

Vamos supor que sabemos, por razões teóricas, que a função f é de uma
determinada forma que depende de n parâmetros a1 , . . . , an . Por exemplo, f
n
X n
Y Xn
pode ser da forma ak xk−1 , sen ak x ou eak x . Podemos calcular os
k=1 k=1 k=1
valores de f com uma determinada precisão em um número finito de pontos.
Além disso, o cálculo do valor de f em um ponto às vezes é um processo caro.
O objetivo é recuperar aproximadamente os parâmetros a1 , . . . , an com a maior
precisão possı́vel com base na informação

f (x1 ), f (x2 ), . . . , f (xm ) m > n.

Em geral, estes números são aproximações dos valores exatos da função f .


Por exemplo, vamos supor que a relação y = f (x) que investigamos é linear,
isto é,
f (x) = Ax + B,
1.15 Aproximação em espaços de Hilbert 91

l(x)
}
di

x1 xi xm

Figura 7

para alguns A e B. Temos, à disposição, os valores de f (x) obtidos experimen-


talmente: fi = f (xi ), i = 1, . . . , m, representados na figura abaixo.
Devido à falta de precisão no processo de medição ou à imperfeição do expe-
rimento, os pontos (xi , fi ), i = 1, . . . , n, obviamente não pertencem a uma reta.
Sabemos que a função f (x) é linear. Então, qual a reta que representa os dados
obtidos experimentalmente? Existem os candidatos para tais representantes.
Por exemplo, podemos escolher quaisquer dois pontos (xi , fi ), (xj , fj ) da tabela
e considerar a reta que passa por eles como aproximação de f . Esta seria uma
escolha aleatória.
Vamos tentar abordar o problema de forma mais teórica e sistemática. Pro-
curemos uma função da forma

l(x) = Ax + B.

Denotaremos por di a discrepância entre o valor fi no ponto xi obtido experi-


mentalmente o valor de l no mesmo ponto,

di := fi − (Axi + B) , i = 1, . . . , m.

Existem algumas abordagens de como escolher os parâmetros A e B de l.


1) Escolher A e B de modo que

max |di |
1≤i≤m

seja o mı́nimo possı́vel. Assim, tentar minimizar a maior distância entre f e


l nos pontos x1 , . . . , xm . Tal critério é aceitável mas a realização na prática é
92 Capı́tulo1. Aproximação de Funções

dificil porque o problema é não-linear p que max |di | é uma função não-linear
i
nas variáveis A e B.
2) Escolher A e B de modo que
m
X
|di |
i=1

seja o mı́nimo possı́vel. As objeções contra o critério 1) valem com a mesma força
neste caso. Estas objeções foram consideradas seriamente no passado quando
não existiam ferramentas para cálculos rápidos. Talvez, por isto, foi escolhido
um critério que leva a um sistema linear para a obtenção dos parâmetros.
3) Escolher A e B de modo que
n
X
S(A, B) := d2i .
i=1

seja o mı́nimo possı́vel. Temos


m
X
S(A, B) = [fi − (Axi + B)]2 ,
i=1

e as condições necessárias para o mı́nimo, que neste caso também são suficientes,
levam ao sistema
m
∂S X
=0 ⇒ [fi − (Ax + B)]xi = 0,
∂A i=1
m
∂S X
=0 ⇒ [fi − (Ax + B)] = 0.
∂B i=1

Esta abordagem para determinar as incógnitas da função pela tabela dos da-
dos é chamada método dos mı́nimos quadrados. Vamos representá-lo de forma
mais geral. Seja {F (x, a1 , . . . , an )} uma famı́lia de funções , descritas pelos
parâmetros ai ∈ Ii , i = 1, . . . , n. Sejam f1 , . . . , fm os valores de uma função
desta famı́lia nos pontos x1 , . . . , xm .

Definição 11 Dizemos que F (x, a1 , . . . , an ) é a aproximação dos dados f1 , . . . , fm


pelo método dos mı́nimos quadrados se a1 , . . . , an minimizam a expressão
m
X
µi [F (xi , a1 , . . . , an ) − fi ]2 ,
i=1

onde {µi }m
i são números positivos dados a priori, chamados “pesos”.
1.15 Aproximação em espaços de Hilbert 93

Consideremos uma situação particular, a saber, a aproximação de uma


função por polinômios algébricos de grau n nos pontos x1 < . . . < xm (m > n).
Então, queremos achar a aproximação

p(x) = a0 xn + a1 xn−1 + . . . + an

de f pelo método dos mı́nimos quadrados baseada nos valores fi = f (xi ), i =


1, . . . , m. Sejam {µi } alguns pesos dados. Então, de acordo com o que foi dito,
a0 , a1 , . . . , an são determinados de tal maneira que minimizem a expressão
m
" n
#2
X X
Φ(a0 , . . . , an ) := µi fi − ak xki .
i=1 k=0

Vê-se que Φ2 (a0 , . . . , an ) é de fato a distância entre f e p no espaco de Hilbert


H△ das funções definidas em x1 , . . . , xm e equipado com o produto interno
m
X
(f, g) := µi f (xi )g(xi ).
i=1

De fato, este produto interno gera a norma


m
nX o1/2
kf k := µi f 2 (xi ) ,
i=1

que, por outro lado, gera a distância


(m ) 21
X
ρ(f, g) = µi [f (xi ) − g(xi )]2 .
i=1

Nestes termos, a função Φ(a0 , . . . , an ) é igual à distância dentro de f e p. Con-


sequentemente, o método dos mı́nimos quadrados leva ao problema de melhor
aproximação por polinômios algébricos no espaço de Hilbert H△ . A teoria geral
implica que a solução a0 , . . . , an é determinada pelo sistema linear (4) que, neste
caso, toma a forma
m
X m
X m
X m
X
a0 xki + a1 xk+1
i + · · · + an xik+n = f (xi ) xki , k = 0, . . . , n.
i=1 i=1 i=1 i=1

Para evitar a solução deste sistema, podemos escolher, a priori, uma base apro-
priada no espaço de polinômios algébricos πn . Por exemplo, se procurássemos
um polinômio p da forma

p(x) = b0 P0 (x) + · · · + bn Pn (x),


94 Capı́tulo1. Aproximação de Funções

onde os polinômios {Pk (x)} formam um sistema ortogonal no conjunto dos pon-
tos x1 , . . . xm com pesos {µi }, o sistema acima reduzir-se-ia ao sistema diagonal
n
X n
X
bk µi Pk2 (xi ) = µi Pk (xi )f (xi ),
i=1 i=1

onde os coeficientes bk seriam determinados imediatamente.


Capı́tulo 2

Diferenciação e Integração
Numéricas

O cálculo aproximado da derivada ou da integral definida de uma dada


função são temas importantes no cálculo numérico. Conheceremos alguns méto-
dos clássicos baseados na idéia de que uma fórmula de aproximação é boa quando
ela é exata para polinômios algébricos de maior grau possı́vel. As fórmulas são
obtidas não da derivada ou da integral da função, mas sim da derivada e da
integral do correspondente polinômio interpolador.

2.1 Diferenciação numérica


Discutiremos a questão de diferenciação numérica, isto é, do cálculo aproxi-
mado da derivadaf ′ (x). Notemos que a diferenciação é uma operação instável
no sentido de que pequenas alterações da função f podem causar grandes al-
terações da sua derivada. Isto exige uma abordagem muito cuidadosa quando
diferenciamos numericamente e uma análise detalhada em cada caso particular.
Seja f (x) definida em [a, b] e x0 , . . . , xn pontos distintos de [a, b]. Vamos
supor que f (x) tem derivadas contı́nuas de ordem suficientemente alta. Pela
fórmula de Newton

(1) f (x) = Ln (f ; x) + f [x0 , . . . , xn , x]ω(x),

onde
ω(x) = (x − x0 ) . . . (x − xn ),
96 Capı́tulo2. Diferenciação e Integração Numéricas

e Ln (f ; x) é o polinômio interpolador de f com nós x0 , . . . , xn . Provemos que


a função g(x) = f [x0 , . . . , xn , x] é diferenciável no ponto x. De fato, de acordo
com a definição de derivada,

g(x + h) − g(x)
g ′ (x) = lim
h→0 h
f [x0 , . . . , xn , x + h] − f [x0 , . . . , xn , x]
= lim
h→0 x+h−x

= lim f [x0 , . . . , xn , x + h, x]
h→0

= f [x0 , . . . , xn , x, x],

pois, como já vimos (Teorema 6.5) a diferença dividida é uma função contı́nua
de seus argumentos se f é suficientemente suave. Então,

d
f [x0 , . . . , xn , x] = f [x0 , . . . , xn , x, x].
dx
Portanto, de (1), obtemos

f ′ (x) = L′n (f ; x) + f [x0 , . . . , xn , x, x]ω(x) + f [x0 , . . . , xn , x]ω ′ (x).

Consequentemente, o erro E(f ) da aproximação f ′ (x) ≈ L′n (f ; x) é dado pela


expressão

E(f ) = f [x0 , . . . , xn , x, x]ω(x) + f [x0 , . . . , xn , x]ω ′ (x).

Usando a relação
f (k) (ξ)
f [y0 , . . . , yk ] = ,
k!
podemos escrever E(f ) como

f (n+2) (ξ) f (n+1) (η) ′


(2) E(f ) = ω(x) + ω (x),
(n + 2)! (n + 1)!

onde ξ e η são pontos do intervalo(a, b). Geralmente conhecemos f (n+1) e f (n+2)


e, sobre ξ e η, sabemos somente que eles estão em (a, b). Por isto, na prática,
usamos a seguinte estimativa

Mn+2 Mn+1
|E(f )| ≤ |ω(x)| + |ω ′ (x)|,
(n + 2)! (n + 1)!

onde Mk é o limite superior de |f (k) (t)| em [a, b].


2.1 Diferenciação numérica 97

Em alguns casos, a expressão para o erro (2) pode ser simplificada significati-
vamente, por exemplo quando o ponto x coincide com algum dos nós x0 , . . . , xn ,
ou quando ω ′ (x) = 0. No primeiro caso para x = xk , temos ω(xk ) = 0 e
n
Y
ω ′ (xk ) = (xk − xi ).
i=0,i6=k

Então, (2) toma a forma


n
f (n+1) (η) Y
(3) E(f ) = (xk − xi ),
(n + 1)!
i=0,i6=k

para algum η ∈ (a, b).


Analogamente, se ω ′ (x) = 0, então (2) toma a forma

f (n+2) (ξ)
(4) E(f ) = ω(x).
(n + 2)!

Temos ω ′ (x) = 0 quando, por exemplo, os nós são simétricos com relação ao
ponto x, isto é, quando

n−1
x − xi = xn−i − x, i = 0, . . . , .
2
2 2
Então, (t − xi )(t − xn−i ) = (t − x) − (x − xi ) e, portanto,

(n−1)/2 h i
2 2
Y
ω(t) = (t − x) − (x − xi ) .
i=0

Desde que
d h 2

2 ¯
¯
(t − x) − (x − xi ) ¯ = 2(t − x)¯ = 0,
¯
dt t=x t=x

temos ω ′ (x) = 0. Então, se os nós {xk } satisfazem à condição de simetria, a


expressão para o erro (2) pode ser escrita como

(n−1)/2
f (n+2) (ξ) Y 2
E(f ) = [−(x − xi ) ].
(n + 2)! i=0

Consideraremos agora alguns casos particulares simples.


Seja n = 1. Escolhemos como nós os pontos x0 = a e x1 = a + h. Vamos
achar uma expressão para aproximar de f ′ (x) em x = a. Temos

f ′ (a) ≈ L′1 (f ; a),


98 Capı́tulo2. Diferenciação e Integração Numéricas

onde L1 (f ; t) = f (a) + f [a, a + h](t − a). Consequentemente,

f (a + h) − f (a)
(5) f ′ (a) ≈ f [a, a + h] = .
h
Neste caso, o ponto a é nó e, por esta razão, aplicaremos a fórmula (3) para
achar a estimativa do erro. Obtemos
f ′′ (η)
(6) E(f ) = h.
2
A fórmula (5) tem interpretação geométrica simples. A derivada f ′ (a), que
é igual ao coeficiente angular da tangente a f (x) no ponto com abscissa a, é
substituida pelo coeficiente angular da secante pelos pontos com abscissas a e
a + h (veja Figura 8).

a a+ h

Figura 8

Tomemos novamente n = 1 e os nós x0 e x1 localizados simétricamente em


relação ao ponto a, onde aproximamos a derivada. Denotemos por x0 = a − h
e x1 = a + h. Obviamente,

L1 (f ; t) = f (a − h) + f [a − h, a + h](t − a + h).

Consequentemente, f ′ (a) ≈ L′1 (f ; a) = f [a−h, a+h]. Assim, obtemos a fórmula

f (a + h) − f (a − h)
(7) f ′ (a) ≈ .
2h
A interpretação geométrica de (7) é representada na Figura 9. O coeficiente
angular da tangente a f (x) no ponto a é aproximado pelo coeficiente angular
da secante pelos pontos a − h e a + h.
2.1 Diferenciação numérica 99

a-h a a+ h

Figura 9

Determinando o erro E(f ) por (4), obtemos

f ′′′ (ξ) 2
(8) E(f ) = n h .
6
Observemos que o erro (8) é muito menor, para h pequeno, do que o erro (6),
enquanto que as correspondentes fórmulas (5) e (7) são “igualmente comple-
xas”: as duas usam dois valores da função f (x). Para caracterizar a ordem do
erro, como de outras quantidades na análise numérica, usaremos os sı́mbolos O
(”o”maiúsculo) e o (”o”minúsculo). Dizemos que ϕ(h) é O(ψ(h)) para h → 0,
ϕ(h)
se existe constante K, tal que ψ(h) ≤ K quando h → 0. Dizemos que ϕ(h) é
ϕ(h)
o(ψ(h)) para h → 0 se ψ(h) → 0 quando h → 0. Então, de acordo com essas de-
finições, a fórmula (5) tem erro de ordem O(h), enquanto o erro de (7) é O(h2 ).
Mais adiante, vamos perceber que a fórmula (7) é usada frequentemente, especi-
almente na análise de métodos numéricos para solução de equações diferenciais.
Infelizmente, ela pode ser aplicada somente para aproximação da derivada nos
pontos internos, x1 , . . . xn−1 , de uma tabela de valores, f (x0 ), . . . , f (xn ), da
função f (x). Para os pontos limites, x0 e xn , podemos usar (5). Mas, esta
última tem erro O(h). O ideal seria uma fórmula para o cálculo aproximado de
f ′ (x0 ) e f ′ (xn ) com erro da ordem O(h2 ). Agora, vamos obter tal fórmula. Para
este fim, vamos utilizar mais um nó para aumentar a precisão da aproximação.
Seja n = 2. Escolhemos os nós x0 = a, x1 = a + h e x2 = a + 2h. Aproxi-
memos a derivada de f (x) para x = a. Neste caso, temos

L2 (f ; x) = f (a) + f [a, a + h](x − a) + f [a, a + h, a + 2h](x − a)(x − a − h).


100 Capı́tulo2. Diferenciação e Integração Numéricas

Daquı́ obtemos

L′2 (f ; a) = f [a, a + h] + f [a, a + h, a + 2h](−h)


½ ¾
f (a) f (a + h) f (a) f (a + h) f (a + 2h)
= + −h + +
−h h 2h2 −h2 2h2
−3f (a) + 4f (a + h) − f (a + 2h)
= .
2h
Consequentemente,
−3f (a) + 4f (a + h) − f (a + 2h)
(9) f ′ (a) ≈ .
2h
Desde que o ponto a é nó, para achar o limite para o erro E(f ), aplicaremos a
fórmula (3). Obtemos
f ′′′ (η) 2
(10) E(f ) = h .
3
O erro tem ordem O(h2 ).
Se construirmos uma fórmula para aproximar f ′ (a) com nós x0 = a − h,
x1 = a e x2 = a + h, da maneira descrita acima, obteremos uma fórmula
idêntica a (7), isto é, o coeficiente de f (a) na aproximação será igual a zero.
Isto revela a razão para a melhor precisão de (7) em comparação com (5): a
fórmula (7) é construı́da com três e não com dois valores da função f (x) em
questão.
O polinômio interpolador de Lagrange Ln (f ; x) com nós x0 , . . . , xn é usado
também para o cálculo aproximado de derivadas de ordem mais alta. O valor
(k)
de f (k) (x) é simplesmente substituı́do pelo valor de Ln (f ; x). Para determinar
o limite do erro precisamos diferenciar a função f [x0 , . . . , xk , x]ω(x) k vezes, e
assim obter as expressões da forma (2) com k + 1 termos. Não obteremos essas
fórmulas explicitamente. Finalmente, notemos que a relação entre a derivada e
a diferença dividida nos permite obter a seguinte fórmula para a diferenciação
numérica: para x ∈ [x0 , xn ],

(11) f (n) (x) ≈ f [x0 , . . . , xn ]n! .

Podemos observar que a fórmula (5) pode ser obtida por (11) para n = 1 e
x = x0 .
Pelas fórmulas do erro para a diferenciação numérica até agora obtidas, vê-
se que o erro diminue quando o passo h diminue. Desta forma, poderı́amos
obter a derivada de f ′ (a) com qualquer precisão se pudéssemos calcular f (x)
em pontos x suficientemente perto do ponto a. Acontece que na prática isto
2.1 Diferenciação numérica 101

não é verdade. Ou seja, durante o uso prático de qualquer uma das fórmulas
obtidas, quando diminuimos h o erro também diminue no inı́cio mas, depois,
volta a crescer. A razão para este efeito é que as fórmulas para diferenciação
numérica são “instáveis”. Expliquemos detalhadamente este fenômeno.
Vamos supor que aproximamos f ′ (a) pela fórmula (7),
f (a + h) − f (a − h)
f ′ (a) ≈ ,
2h
e que o computador que usamos representa os números com precisao 10−8 .
Portanto, ao invés dos valores exatos de f (a + h) e de f (a − h) trabalhamos com
os números

f˜(a + h) = f (a + h) + ε1 ,

f˜(a − h) = f (a − h) + ε2 ,

onde

(12) |εi | ≤ 10−8 , i = 1, 2.

Então, para o valor aproximado de f ′ (a), obtemos o número

f˜(a + h) − f˜(a − h) f (a + h) − f (a − h) ε1 − ε2
= + .
2h 2h 2h
De acordo com (8),
f (a + h) − f (a − h)
= f ′ (a) + E,
2h
onde

(13) |E| ≤ M h2 ,
˜ ˜
para alguma constante M . Consequentemente, a expressão f (a+h)− 2h
f (a−h)


aproximada por f (a) com erro E + (ε1 − ε2 )/2h. Este erro tem ordem ϕ(h) =
−8
10−8
M h2 + 2.10 ′
2h , por(12) e (13). Como ϕ (h) = 2M h − h2 , ϕ(h) atinge o seu
mı́nimo para h = h0 , onde h0 é o zero de ϕ′ (h),
r r
3 1 1 3 5
h0 = = 3 .
2.108 M 10 M
Desta forma, ϕ(h) decresce quando h decresce até h0 mas volta a crescer en-
quanto o passo h continua decrescendo. Por isto, a aplicação prática exige, em
cada caso particular, a determinação do valor crı́tico h0 do passo e o uso somente
de passos h para os quais h > h0 .
102 Capı́tulo2. Diferenciação e Integração Numéricas

Agora, vamos obter uma fórmula para aproximar f ′′ (a) baseada nos valores
f (a − h), f (a) e f (a + h), supondo que f tem quarta derivada contı́nua em
[a − h, a + h].
Método 1. Denotemos por L2 (f ; x) o polinômio interpolador de Lagrange
da função f (x) com nós a − h, a, a + h. De acordo com a a fórmula de Newton

L2 (f ; x) = f (a − h) + f [a − h, a](x − a + h) + f [a − h, a, a + h](x − a + h)(x − a)

e
f (x) = L2 (f ; x) + f [a − h, a, a + h, x](x − a + h)(x − a)(x − a − h).
Assim podemos obter uma aproximação para f ′′ (a) da seguinte maneira:

f ′′ (a) ≈ L′′2 (f ; a) = 2f [a − h, a, a + h]

f (a − h) − 2f (a) + f (a + h)
= .
h2
O erro desta aproximação será E(f ),

E(f ) = f ′′ (a) − L′′2 (f ; a)

′′
= {f [a − h, a, a + h, x](x − a + h)(x − a)(x − a − h)} |x=a

= 2f [a − h, a, a + h, a, a]ω ′ (a) + f [a − h, a, a + h, a]ω ′′ (a)


f IV (ξ) 2
= − h (porque ω ′′ (a) = 0).
12
Método 2. Agora, oferecemos mais um método conhecido como “método dos
coeficientes indefinidos”. Tal método permite a construção de fórmulas para a
aproximação de funcionais lineares.
Expandindo em série de Taylor no ponto a os valores f (a−h), f (a) e f (a+h),
obtemos
f ′′ (a) 2 f ′′′ (a) 3 f IV (ξ1 ) 4
f (a − h) = f (a) − f ′ (a)h + h − h + h
2! 3! 4!

(14) f (a) = f (a)

f ′′ (a) 2 f ′′′ (a) 3 f IV (ξ2 ) 4


f (a + h) = f (a) + f ′ (a)h + h + h + h ,
2! 3! 4!
onde ξ1 e ξ2 são pontos dos intervalos (a − h, a) e (a, a + h), respectivamente.
O objetivo é achar coeficientes α, β e γ, tais que a expressão

αf (a − h) + βf (a) + γf (a + h)
2.1 Diferenciação numérica 103

seja igual a f ′′ (a) + O(hk ), onde o erro O(hk ) é o menor possı́vel, isto é, a
potência k é a maior possı́vel. Multiplicando as equações (14) por α, β e γ,
respectivamente, e somando-as, obtemos

αf (a − h) + βf (a) + γf (a + h) = (α + β + γ)f (a) + (−α + γ)f ′ (a)h

f ′′ (a) 2 f ′′′ (a) 3


+(α + γ) h + (−α + γ) h
2 6
¤ h2
+ αf IV (ξ1 ) + γf IV (ξ2 )
£
.
24
O objetivo é obter, do lado direito, o que queremos aproximar. Neste caso
particular f ′′ (a), e depois tentar, com uma escolha especial dos parâmetros α, β
e γ, anular os coeficientes das potências baixas de h, isto é, de h0 , h1 , h2 , . . ., até
onde for possı́vel. Isto significa que, neste caso particular, temos que escolher
α, β e γ satisfazendo às condições
h2
(α + γ) = 1
2
(α + β + γ) = 0

−α + γ = 0.

Tomemos um sistema de três equações lineares com três incógnitas. Resolvendo


o sistema obtemos
1 2
α = γ = 2, β = − 2.
h h
Imediatamente observamos que, para esta escolha dos parâmetros α, β e γ, o
coeficiente de h3 é zero:
f ′′′ (a)
(−α + γ) .
6
Consequentemente,
1 2 1
f ′′ (a) = f (a − h) − 2 f (a) + 2 f (a + h) + E(f ),
h2 h h
onde
f (IV ) (ξ1 ) + f (IV ) (ξ2 ) h2
E(f ) = − .
2 12
(IV ) (IV )
Desde que f (IV ) (t) é uma função contı́nua e o número f (ξ1 )+f
2
(ξ2 )
está
(IV )
entre o limite inferior e o limite superior de f (t), existe um ponto ξ ∈
(IV )
(ξ1 )+f (IV ) (ξ2 )
(a − h, a + h), tal que f 2 = f (IV )
(ξ). Consequentemente,

f (IV ) (ξ) 2
E(f ) = − h .
12
104 Capı́tulo2. Diferenciação e Integração Numéricas

2.2 Fórmulas de quadratura interpolatórias


A integral definida é uma noção fundamental na matemática. Muitas quanti-
dades das ciências naturais, engenharia, economia e outras áreas de aplicação da
matemática são representadas por integrais definidas. Por isto frequentemente
surge na prática o problema do cálculo de integrais definidas. É conhecido dos
Rb
cursos de Cálculo que o valor de uma integral definida I(f ) := a f (x) dx pode
ser calculado exatamente quando a função é suficientemente simples. Em muitos
casos o número I(f ), que é definido como limite de uma sequência de números,
é dificilmente acessı́vel para o matemático, equipado com lápis, papel e livro de
Cálculo. Existem, entretanto, muitos métodos numéricos que permitem calcular
a integral definida com uma determinada precisão. Consideremos alguns desses
métodos.
Uma regra simples para o cálculo aproximado de integrais pode se obtida
substituindo-se a função a ser integrada, f (x) pelo seu polinômio interpolador
de Lagrange. Vamos supor que são conhecidos os valores de f (x) nos pontos
x0 , . . . , xn . De acordo com a fórmula de Newton

(1) f (x) = Ln (f ; x) + f [x0 , . . . , xn , x]ω(x),

onde Ln (f ; x) é o polinômio interpolador de Lagrange,


n
X
Ln (f ; x) = f (xk )lk (x),
k=0

e ω(x) = (x−x0 ) . . . (x−xn ). Integrando (1), termo a termo, de a até b obtemos


a fórmula
n
X
(2) I(f ) ≈ ck f (xk ),
k=0

onde
b n
x − xi
Z Y
(3) ck = I(lk ) = dx, k = 0, . . . , n.
a i=0,i6=k xk − xi

O erro desta aproximação é


Z b
(4) R(f ) := I(f ) − I(Ln (f )) = f [x0 , . . . , xn , x]ω(x) dx.
a

A fórmula onde a integral definida é aproximada por uma combinação linear de


valores da função a ser integrada, ou de suas derivadas em um número finito
2.2 Fórmulas de quadratura interpolatórias 105

de pontos, é chamada fórmula de quadratura. A expressão (2) é uma fórmula


de quadratura. Os pontos x0 , . . . , xn são chamados nós e os números c0 , . . . , cn
pesos da fórmula de quadratura.

Definição 12 Uma fórmula de quadratura da forma (2) é chamada interpo-


latória, se os seus coeficientes ck são obtidos pela fórmula (3).

Em outras palavras, uma fórmula com n + 1 nós é chamada fórmula de qua-


dratura interpolatória (fórmula de tipo interpolatória) quando é obtida através
da integração do polinômio interpolador de Lagrange com os mesmos nós.
Dizemos que a fórmula de quadratura (2) é exata para uma função f se
R(f ) = 0.

Teorema 33 Se a fórmula de quadratura (2) é interpolatória, ela é exata para


para todo polinômio de πn . Reciprocamente, se uma fórmula da forma (2) é
exata para todo polinômio de πn , então ela é interpolatória.

Demonstração. Seja (2) uma fórmula de quadratura interpolatória e f ∈ πn .


Então f (x) ≡ Ln (f ; x) e, portanto, R(f ) = 0, isto é, a fórmula é exata para f .
Vamos supor que (2) é exata para todo polinômio f de πn . Então, ela é
exata para os polinômios li (x). Consequentemente,
n
X
I(li ) = ck li (xk ) = ci , i = 0, . . . n,
k=0

pois li (xk ) = δik . Obtemos (3). O teorema está demonstrado.


Como já observamos, o erro da fórmula de quadratura interpolatória é dado
por (4). Esta fórmula não é conveniente para aplicações porque o erro é re-
presentado novamente por uma integral, que é até mais complicada do que a
anterior. Entretanto, através de (4), podemos obter limites para o erro que são
usados na prática. Consideremos dois casos onde a expressão do erro pode ser
escrita de forma mais simples.
Suponha que o polinômio ω(x) não muda de sinal em (a, b). Supomos,
também, que f (x) tem derivada de ordem (n + 1) contı́nua em [a, b]. Então,
f [x0 , . . . , xn , x] é uma função contı́nua de x em [a, b] e, de acordo com o teorema
do valor médio, existe ponto t ∈ (a, b) tal que
Z b
R(f ) = f [x0 , . . . , xn , t] ω(x) dx.
a
106 Capı́tulo2. Diferenciação e Integração Numéricas

Agora, pela relação entre diferença dividida e derivada, segue que existe um
ponto ξ ∈ [a, b], para o qual
b
f (n+1) (ξ)
Z
(5) R(f ) = ω(x) dx.
(n + 1)! a
Rb
Se ω(x) muda de sinal somente uma vez em [a, b] e a ω(x) dx = 0, então a
expressão (4) também pode ser simplificada. Neste caso, usamos a relação de
recorrência
f [x0 , . . . , xn , x] − f [x0 , . . . , xn , xn+1 ]
f [x0 , . . . , xn , xn+1 , x] = ,
x − xn+1

para obter

f [x0 , . . . , xn , x] = f [x0 , . . . , xn , , xn+1 , x](x − xn+1 ) + f [x0 , . . . , xn+1 ]

para todo ponto xn+1 de [a, b]. Consequentemente,


Z b
R(f ) = f [x0 , . . . , xn , xn+1 , x](x − xn+1 )ω(x) dx +
a
Z b
+ f [x0 , . . . , xn+1 ] ω(x) dx
a
Z b
= f [x0 , . . . , xn , xn+1 , x](x − xn+1 )ω(x) dx.
a
Rb
Na última igualdade, usamos que a ω(x) dx = 0. Vamos supor, agora, que
xn+1 é o ponto onde ω(x) muda de sinal. Assim a função (x − xn+1 ) ω(x) tem
sinal cosntante em [a, b]. Supondo que f tem derivada contı́nua, concluimos,
através do teorema do valor médio, que existe um ponto ξ ∈ (a, b), tal que
b
f (n+2) (ξ)
Z
(6) R(f ) = (x − xn+1 ) ω(x) dx.
(n + 2)! a

Notemos que, neste caso, o erro é representado através da derivada de ordem


(n + 2). Consequentemente, R(f ) = 0 para todo f ∈ πn+1 , isto é, a fórmula de
quadratura é exata para todo polinômio de grau até (n + 1).
O uso do polinômio interpolador para o cálculo aproximado de integrais foi
sugerido pela primeira vez por Newton. O engenheiro inglês Cotes calculou
os coeficientes das fórmulas de quadratura interpolatórias em [0, 1] com nós
equidistantes, xk = k/n, k = 0, . . . , n, para n = 1, 2, 3, . . . , 15 e publicou as
tabelas com os coeficientes. Por isto, as fórmulas de quadratura interpolatórias
com nós equidistantes são chamadas fórmulas de quadratura de Newton-Cotes.
2.2 Fórmulas de quadratura interpolatórias 107

Agora, vamos obter, de forma explı́cita, algumas fórmulas de quadratura


elementares.
Seja n = 0. Então,
L0 (f ; x) = f (x0 )
e, portanto,
I(f ) ≈ I(L0 ) = f (x0 )(b − a).
a+b
Em particular, para x0 = 2 obtemos
b µ ¶
a+b
Z
(7) f (x) dx ≈ f (b − a).
a 2

Neste caso, a função ω(x) := x − a+b 2 muda de sinal somente no ponto x =


Rb
(a + b)/2 e a ω(x) dx = 0. Consequentemente, para x0 = x1 = (a + b)/2, o
¢2
polinômio (x − x0 )(x − x1 ) = x − a+b
¡
2 tem sinal cosntante em (a, b). Então,
de acordo com (6),
3
f ′′ (ξ) b (b − a)
Z
2
(8) E(f ) = (x − x0 ) dx = f ′′ (ξ) .
2! a 24

a a+ b b
2

Figura 10

A fórmula (7) é conhecida como fórmula regra do paralelogramo. Ela tem


interpretação geométrica simples (veja Figura 10). A integral I(f ), que é igual
à área da figura determinada pelo gráfico da função f , é aproximada pela área
108 Capı́tulo2. Diferenciação e Integração Numéricas

do paralelogramo com base [a, b] e altura f a+b


¡ ¢
2 . Daqui, vem o nome desta
fórmula.
Seja, agora, n = 1. Vamos escolher x0 = a e x1 = b. Então,

L1 (f ; x) = f (a) + f [a, b](x − a),

f (x) = L1 (f ; x) + f [a, b, x](x − a)(x − b).

Substituimos I(f ) por I(L1 ) e obtemos a fórmula de quadratura


Z b
b−a
(9) f (x) dx ≈ [f (a) + f (b)].
a 2
Para determinar o erro usaremos (5) pois, neste caso, o polinômio ω(x) = (x −
a)(x − b) mantém o sinal em (a, b). Temos

f ′′ (ξ) b
Z
R(f ) = (x − a)(x − b) dx.
2 a

Calculando a integral obtemos


f ′′ (ξ) 3
(10) R(f ) = − (b − a) .
12
A fórmula (9) é, chamada fórmula regra do trapézio. Sua interpretação geométrica
é mostrada na Figura 11.

a b

Figura 11

Agora, consideraremos uma fórmula de quadratura interpolatória com três


nós equidistantes.
2.2 Fórmulas de quadratura interpolatórias 109

Seja n = 2. Temos

f (x) = L2 (f ; x) + f [x0 , x1 , x2 , x](x − x0 )(x − x1 )(x − x2 ).

Daqui, obtemos a fórmula

(11) I(f ) ≈ I(L2 ).

Vamos escolher x0 = a, x1 = (a + b)/2 e x2 = b. Neste caso, a função ω(x) =


(x−a) x − a+b
¡ ¢
(x−b) muda de sinal em (a, b) somente no ponto x3 := (a+b)/2.
R2b
Além disso, a ω(x) dx = 0. Consequentemente, o erro, d́ado por (6), toma a
forma Z b ¶2
f IV
µ
a+b
R(f ) = (x − a) x − (x − b) dx.
4! a 2
Calculando a integral, obtemos
f IV (ξ) 5
(12) R(f ) = − (b − a) .
2880
Para se obter a forma explı́cita da fórmula de quadratura (11) podemos es-
crever L2 (f ; x) através da fórmula de Newton e calcular I(L2 ). Mostraremos,
aqui, uma maneira mais simples. Denotemos por p(x) o polinômio interpo-
lador L2 (f ; x). Pelas fórmulas do paralelogramo (7) e do trapézio (9) temos,
respectivamente,
p′′ (ξ1 )
µ ¶
a+b 2
I(p) = p (b − a) + (b − a) ,
2 24
b−a p′′ (ξ2 ) 2
I(p) = [p(a) + p(b)] − (b − a) ,
2 12

onde ξ1 e ξ2 são pontos de (a, b). Mas p ∈ π2 . Consequentemente, p′′ (t) é cons-
tante para todo t. Logo, p′′ (ξ1 ) = p′′ (ξ2 ). Portanto, multiplicando a segunda
expressão por 21 e adicionando à primeira, obtemos
µ ¶
1 a+b b−a
I(p) + I(p) = p (b − a) + [p(a) + p(b)].
2 2 4
Desde que o polinômio p(x) interpola f (x) nos pontos a, a+b
2 e b, então a última
igualdade implica em
· µ ¶ ¸
b−a a+b
(13) I(p) = f (a) + 4f + f (b) .
6 2
Obtemos, então, a fórmula
Z b · µ ¶ ¸
b−a a+b
(14) f (x) dx ≈ f (a) + 4f + f (b) .
a 6 2
110 Capı́tulo2. Diferenciação e Integração Numéricas

Esta é a famosa fórmula de quadratura de Simpson. Pela expressão do erro e


por (12) concluimos que ela é exata para todo polinômio de grau menor ou igual
a 3.
As fórmulas de quadratura obtidas aqui, isto é do paralelogramo, do trapézio
e de Simpson, são chamadas fórmulas de quadratura elementares. Nesta forma
elas são raramente usadas na prática pois o erro é muito grande, especialmente
quando o intervalo de integração [a, b] é muito grande. Isto pode ser mostrado
através das expressões dos erros (8), (10) e (12). Na prática, comumente fazemos
o seguinte: o intervalo [a, b] é dividido em subintervalos pelos pontos x0 , . . . , xn .
Depois, em cada subintervalo [xi−1 , xi ], aplicamos uma das fórmulas de quadra-
R xi
tura elementares para calcular a integral xi−1 f (x) dx e as expressões obtidas
são somadas. Como resultado, obtemos as fórmulas de quadratura compostas.
Vamos obter, explicitamente, as fórmulas de quadratura compostas que são fre-
quentemente usadas.
Fórmula do paralelogramo composta. Sejam xi = a + ih, i = 0, . . . m, h =
(b − a)/m. Pela fórmula do paralelogramo, temos
Z xi
f ′′ (ξi ) 3
µ ¶
xi−1 + xi
f (x) dx = f (xi − xi−1 ) + h ,
xi−1 2 24

onde ξ1 é um ponto do intervalo (xi−1 , xi ). Somando essas igualdades para


i = 1, . . . , m, obtemos a fórmula de quadratura
Z b m µ ¶
b−aX xi−1 + xi
f (x) dx ≈ f
a m i=1 2
com erro
3 m
(b − a) 1 X ′′
RP (f ) = f (ξi ) .
24m2 m i=1
1
O número m [f ′′ (ξ1 )+· · ·+f ′′ (ξm )] é a média aritmética de m valores de f ′′ (x) em
[a, b]. Consequentemente, este número está localizado entre os limites inferior e
superior de f ′′ (x) em [a, b]. Portanto, existe um ponto ξ ∈ [a, b] tal que
1 ′′
[f (ξ1 ) + · · · + f ′′ (ξm )] = f ′′ (ξ).
n
Logo, para o erro da fórmula dos paralelogramos composta obtemos
3
(b − a) ′′
RP (f ) = f (ξ).
24m2
Observamos que, atravez da fórmula de quadratura composta podemos calcular
a integral I(f ) com qualquer precisão desejada se escolhermos m suficientemente
grande.
2.2 Fórmulas de quadratura interpolatórias 111

a = x0 xi xi+1 b = xm

Figura 12

Fórmula do trapézio composta. Analogamente, usando a fórmula do trapézio


(9), obtemos
b
b−a
Z
f (x) dx ≈ [f0 + 2f1 + · · · + 2fm−1 + fm ],
a 2m
3
(b − a) ′′
RT (f ) = − f (ξ), ξ ∈ [a, b].
12m2
Aqui, denotamos f (xi ) por fi .
Fórmula de quadratura de Simpson composta. Neste caso, dividimos o in-
tervalo [a, b] em número par de subintervalos [xi−1 , xi ], i = 1, . . . , 2m e apli-
camos a fórmula de Simpson no intervalo [xi−1 , xi+1 ], i = 1, 3, 5, . . . , 2m − 1.
Obtemos, então
b
b − an
Z
f (x) dx ≈ f0 + f2m + 2[f2 + f4 + . . . + f2m−2 ]
a 6m
o
+ 4[f1 + f3 + . . . + f2m−1 ]

e
5
(b − a) (IV )
RS (f ) = − f (ξ), ξ ∈ [a, b].
2880m4
112 Capı́tulo2. Diferenciação e Integração Numéricas

2.3 Fórmulas de quadratura de Gauss


Consideremos a fórmula de quadratura da forma geral
Z b n
X
(1) µ(x)f (x) dx ≈ Ak f (xk ),
a k=1

onde µ(x) é uma função peso dada, definida em [a, b], a ≤ x1 < · · · < xn ≤ b,
n
e {Ak }1 são números reais. Já observamos que para qualquer escolha dos nós
n n
{xk }1 , podemos determinar coeficientes {Ak }1 tais que a fórmula de quadratura
(1) obtida é exata para todos os polinômios algébricos de grau n − 1. Para este
propósito, basta construir a fórmula de quadratura interpolatória da seguinte
forma
Z b Z b
µ(x)f (x) dx ≈ µ(x)Ln−1 (f ; x) dx
a a
 
n Z b n
X Y x − xi 
= µ(x) dx f (xk ).
 a xk − xi 
k=1 i=1,i6=k
n
Será que existem alguns nós especiais {x∗k }1 , para os quais a correspondente
fórmula de quadratura é exata para polinômios de grau maior do que n − 1?
Já encontramos alguns exemplos anteriormente: a fórmula de Simpson com três
nós é exata para todos os polinômios não somente de grau dois mas de grau
três também. Aqui, encontraremos uma nova e importante caracterı́stica das
fórmulas de quadratura.

Definição 13 Dizemos que uma fórmula de quadratura tem grau de precisão


algébrica (GPA) m se ela é exata para todos os polinômios algébricos de grau
≤ m e existe um polinômio de grau m + 1 para o qual ela não é exata.

Qual o maior GPA que uma fórmula de quadratura com n nós pode ter?
Para quais nós o maior GPA é atingido? Estas são as questões que discutiremos
aqui.
Não é difı́cil ver que o maior grau de precisão algébrica da fórmula (1) é maior
n
ou igual a n − 1. De fato, para qualquer escolha dos pontos {xk }1 podemos
construir a correspondente fórmula de quadratura interpolatória com nós em
n
{xk }1 , a qual, por definição , é exata para todos os polinômios de πn−1 , isto é,
ela tem GPA pelo menos n − 1. Agora, mostremos, através de contra-exemplo,
que não existe fórmula de quadratura da forma (1) com GPA maior do que
2n − 1. De fato, se existisse tal fórmula, ela seria exata para o polinômio
2 2
ω 2 (x) = (x − x1 ) . . . (x − xn ) ,
2.3 Fórmulas de quadratura de Gauss 113

que é de grau 2n. Mas,


Z b
µ(x)ω 2 (x) dx > 0,
a
enquanto que
n
X
Ak ω(xk ) = 0.
k=1

Consequentemente a fórmula de quadratura (1) não é exata para o polinômiof (x) =


ω 2 (x). Então, o maior GPA possı́vel para a fórmula (1) é menor ou igual a 2n−1.
O número de parâmetros livres na fórmula (1) é 2n, e eles são os nós {xk }
e os coeficientes {Ak }. Consequentemente, temos esperança de que exista uma
escolha de parâmetros {xk } e {Ak }, para a qual sejam satisfeitas as 2n equações
que representam o fato de a fórmula ser exata para as funções 1, x, x2 , . . . , x2n−1 ,
que formam uma base em π2n−1 e cujo número é 2n. Mais adiante, mostraremos
n n
que existem nós {xk }1 e coeficientes {Ak }1 , para os quais a correspondente
fórmula de quadratura (1) tem GPA igual a 2n − 1. Esta fórmula foi construı́da
pela primeira vez por Gauss e por isto é chamada fórmula de quadratura de
Gauss.

Teorema 34 Para todo número natural n existe uma única fórmula de quadra-
n
tura da forma (1) com GPA= 2n − 1. Os nós {xk }1 desta fórmula são os zeros
do polinômio de grau n, que é ortogonal em [a, b], com relação à função peso
µ(x), a todos os polinômios algébricos de grau n − 1.

Demonstração. Seja ω(x) o polinômio de grau n com coeficiente de xn igual


1, ortogonal em [a, b], com relação à função peso µ(x), a todos os polinômios de
grau n − 1.
Sabemos (veja Teorema 14.1) que esse polinômio existe, é único e tem n zeros
reais e distintos em (a, b). Denotemos esses zeros por x1 , . . . , xn . Logo, ω(x) =
(x − x1 ) . . . (x − xn ). Vamos construir a fórmula de quadratura interpolatória
n
da forma (1) cujos nós são os zeros {xk }1 de ω(x). Provemos que tal fórmula
tem GPA igual 2n − 1, que é o maior possı́vel. De fato, seja f um polinômio
arbitrário de grau 2n − 1. Dividindo f (x) por ω(x), obtemos

(2) f (x) = ω(x)q(x) + r(x),

onde q e r são polinômios de grau menor ou igual que n − 1. Então,


Z b Z b Z b
µ(x)f (x) dx = µ(x)ω(x)q(x) dx + µ(x)r(x) dx
a a a
114 Capı́tulo2. Diferenciação e Integração Numéricas

Z b
= µ(x)r(x) dx.
a

Usamos o fato de que ω(x) é ortogonal à q(x). Desde que a fórmula (1) é
interpolatória, ela é exata para r(x). Consequentemente,
Z b Xn
µ(x)r(x) dx = Ak r(xk ).
a k=1

Observando que r(xk ) = f (xk ), k = 1, . . ., por (2), e levando em consideração


que ω(xk ) = 0, temos
Z b n
X Xn
µ(x)f (x) dx = Ak r(xk ) = Ak f (xk ).
a k=1 k=1

A fórmula de quadratura é exata para qualquer polinômio f de π2n−1 . Conse-


quentemente, ela tem GPA igual a 2n − 1.
Agora provemos a recı́proca. Suponha que a fórmula de quadratura (1) tem
GPA= 2n−1. Mostremos que o polinômio ω(x) = (x−x1 ) . . . (x−xn ) é ortogonal
a qualquer polinômio de πn−1 . De fato, seja Q um polinômio arbitrário de πn−1 .
Então o polinômio f (x) = Q(x)ω(x) é de grau 2n − 1 e a fórmula de quadratura
(1) é exata para ele. Assim, temos
Z b Xn
µ(x)Q(x)ω(x) dx = Ak Q(xk )ω(xk ) = 0,
a k=1

isto é, ω é ortogonal a Q. A demonstração está completa.


A unicidade da fórmula de quadratura com o maior GPA é consequência da
unicidade do polinômio(x−x1 ) . . . (x−xn ), que é ortogonal a todos os polinômios
de πn−1 .
Os coeficientes {Ak } da fórmula de quadratura de Gauss são números po-
sitivos. Isto pode ser provado da seguinte maneira: o polinômio ωk (x) :=
ω(x)/(x − xk ) é de grau n − 1. Então, o polinômio ϕk (x) := ωk2 (x)/ωk2 (xk ),
de grau 2n − 2, é não-negativo e ϕk (xk ) = 1. Desde que a fórmula de Gauss é
exata para ϕk , temos
Z b X n
0< µ(x)ϕk (x) dx = Aj ϕk (xj ) = Ak
a j=1

e a afirmação está demonstrada.


A fórmula
b
ωk2 (x)
Z
Ak = µ(x) dx
a ωk2 (xk )
2.3 Fórmulas de quadratura de Gauss 115

pode ser usada para o cálculo dos coeficientes {Ak } da fórmula de quadratura
de Gauss. Forneceremos uma outra maneira para se calcular Ak que não usa
integração.
Seja P0 (x), P1 (x), . . . , Pn (x) uma sequência de polinômios ortogonais em
[a, b] com relação à função peso µ(x). Suponha que os polinômios são orto-
normais, ou seja,
Z b
µ(x)Pk2 (x) dx = 1 para todo k.
a

Além disso, vamos supor que o coeficiente αk do termo de maior grau de Pk (x),
k = 0, 1, . . ., é positivo. Sejam x1 , . . . , xn os zeros de Pn (x). Então,

Pn (x) = αn (x − x1 ) . . . (x − xn ) = αn xn + · · · , αn > 0

Pelo teorema demonstrado anteriormente temos que x1 , . . . , xn são os nós da


fórmula de quadratura de Gauss. Para determinar os coeficientes {Ak }, vamos
considerar a soma
n
X
D[f ] := αn−1 Ak Pn−1 (xk )f (xk ).
k=1

Quando f ∈ πn−1 o polinômio f (x)Pn−1 (x) é de grau 2n − 2 e a fórmula de


Gauss é exata para ele. Consequentemente,
Z b
D[f ] = αn−1 µ(x)f (x)Pn−1 (x) dx = 0 para f ∈ πn−2
a

e
Z b Z b
D[xn−1 ] = αn−1 µ(x)xn−1 Pn−1 (x) dx = 2
µ(x)Pn−1 (x) dx = 1.
a a

Essas duas propriedades caracterizam completamente a diferença dividida


f [x1 , . . . , xn ]. Logo,
n
X f (xk )
D[f ] = f [x1 , . . . , xn ] = αn .
Pn′ (xk )
k=1

Igualando os coeficientes de f (xk ) desta expressão com os da expressão para


D[f ], obtemos
αn 1
Ak = , k = 1, . . . , n.
αn−1 Pn′ (xk )Pn−1 (xk )
Estas são fórmulas conhecidas para o cálculo dos coeficientes da fórmula de
quadratura de Gauss.
116 Capı́tulo2. Diferenciação e Integração Numéricas

Vamos obter um limite para o erro da fórmula de quadratura de Gauss.


Suponhamos que a função f (x) tem derivada de ordem 2n contı́nua em [a, b].
Pela fórmula de Newton,

2 2
f (x) = H2n−1 (x) + f [x1 , x1 , . . . , xn , xn , x](x − x1 ) . . . (x − xn ) ,

onde H2n−1 (x) é o polinômio de grau 2n − 1, que satisfaz às condições de


interpolação


H2n−1 (xk ) = f (xk ), H2n−1 (xk ) = fk′ (xk ), k = 1, . . . , n.

Assim, levando em consideração que a fórmula de quadratura de Gauss é exata


para H2n−1 , obtemos
Z b n
X
Rn (f ) := µ(x)f (x) dx − Ak f (xk )
a k=1
Z b Xn
= µ(x)f (x) dx − Ak H2n−1 (xk )
a k=1
Z b Z b
= µ(x)f (x) dx − µ(x) H2n−1 (x) dx
a a
Z b
= µ(x)f [x1 , x1 , . . . , xn , xn , x] ω 2 (x) dx
a
b
f (2n)(ξ)
Z
= µ(x) ω 2 (x) dx,
(2n)! a

onde ξ é algum ponto de [a, b].

2.4 Fórmulas de quadratura do tipo Gauss


Consideremos fórmulas de quadratura da forma
Z b m
X n
X
(1) µ(x)f (x) dx ≈ Bi f (ti ) + Ak f (xk ),
a i=1 k=1

onde a ≤ t1 < · · · < tn ≤ b, a ≤ x1 < · · · < xn ≤ b, e nenhum dos números


{ti }m n m
1 coincide com os números {xk }1 . Para {ti }1 fixos tentaremos determinar
m n n
os parâmetros restantes {Bi }1 , {Ak }1 e {xk }1 de modo que a fórmula de qua-
dratura (1) tenha o maior grau de precisão algébrica possı́vel o qual denotaremos
por GPA(1). O número total de parâmetros livres é 2n+m. Consequentemente,
podemos esperar que eles possam ser escolhidos de tal maneira que a fórmula
2.4 Fórmulas de quadratura do tipo Gauss 117

de quadratura (1) seja exata para os polinômios 1, x, . . . , x2n+m−1 , isto é, que
(1) tenha grau de precisão algébrica 2n + m − 1.
Vamos introduzir as notações
σ(x) := (x − t1 ) . . . (x − tm ),
ω(x) := (x − x1 ) . . . (x − xn ).

Teorema 35 A fórmula de quadratura (1) é exata para todos os polinômios de


grau ≤ 2n + m − 1 se, e somente se, ela é interpolatória e o polinômio ω(x) é
ortogonal em [a, b], com relação à função peso µ(x)σ(x), a todos os polinômios
algébricos de grau n − 1.
Demonstração. Usaremos a mesma idéia da demonstração do Teorema de
Gauss. Se GPA(1)= 2n + m − 1, então (1) é obviamente interpolatória. Vamos
provar a ortogonalidade de ω(x). Seja Q(x) um polinômio arbitrário de πn−1 .
Então, o polinômio f (x)ω(x)σ(x)Q(x) é de π2n+m−1 e, portanto,
Z b m
X n
X
µ(x)f (x) dx = Bi f (ti ) + Ak f (xk ) = 0.
a i=1 k=1

Isto significa que ω(x) é ortogonal a Q, com relação à função peso µ(x)σ(x) em
[a, b]. A parte necessária do teorema está demonstrada.
Suponhamos, agora, que ω é ortogonal a todo polinômio de πn−1 com relação
à função peso µ(x)σ(x). Vamos construir a fórmula de quadratura interpolatória
(1) com nós x1 , . . . , xn que são as raı́zes de ω. Mostremos que (1) é exata
para todo f ∈ π2n+m−1 . De fato, seja f ∈ π2n+m−1 . Portanto, f pode ser
representado da forma
f (x) = ω(x)σ(x)Q(x) + r(x),
com Q ∈ πn−1 e r ∈ πn+m−1 . Usando a condição
Z b
µ(x) ω(x) σ(x) Q(x) dx = 0
a
e o fato de (1) ser exata para r, obtemos
Z b Z b Z b
µ(x)f (x) dx = µ(x) ω(x) σ(x) Q(x) dx + µ(x)r(x) dx
a a a
m
X n
X
= Bi r(ti ) + Ak r(xk )
i=1 k=1
Xm Xn
= Bi f (ti ) + Ak f (xk ),
i=1 k=1
118 Capı́tulo2. Diferenciação e Integração Numéricas

isto é, (1) é exata para f . O teorema está demonstrado.


Suponha, agora, que σ(x) ≥ 0 em [a, b]. Então, µ(x)σ(x) ≥ 0 e, portanto,
existe um único polinômio ω ∈ πn que é ortogonal em [a, b], com relação à
função peso, a todos os polinômios de πn−1 . Isto significa que existe uma única
fórmula de quadratura da forma (1) com GPA= 2n + m − 1. Além disso, não
existe fórmula de quadratura da forma (1) que tem GPA maior do que 2n+m−1.
Isto é consequência do fato de (1) não ser exata, por exemplo, para o polinômio
σ(x)ω 2 (x). Então, a seguinte afirmação vale.

Corolário 5 Se σ(x) ≥ 0 em [a, b], então existe uma única fórmula de quadra-
tura da forma (1) com grau de precisão algébrica igual a 2n + m − 1.

Daqui em diante tomaremos σ(x) ≥ 0.


Vamos obter uma representação para o erro
Z b
Rn,m (f ) := µ(x)f (x) dx − S(f ),
a

onde S(f ) é a expressão do lado direito de (1). Sejam f ∈ C 2n+m [a, b] e p o


polinômio de π2n+m−1 que interpola f nos pontos t1 , . . . , tn e x1 , x1 , . . . , xn , xn .
Pela fórmula de Newton

f (x) = p(x) + f [t1 , . . . , tn , x1 , x1 , . . . , xn , xn , x]σ(x)ω 2 (x).

Se GPA(1)= 2n + m − 1, a fórmula de quadratura (1) é exata para p. Obtemos,


então
Z b Z b Z b
µ(x)f (x) dx = µ(x)p(x) dx + µ(x)f [t1 , . . . , xn , xn , x]σ(x)ω 2 (x) dx
a a a
b
f (2n+m) (ξ)
Z
= S(p) + µ(x)σ(x)ω 2 (x) dx,
(2n + 1)! a

onde ξ é um ponto de [a, b]. Desde que S(p) = S(f ), temos


b
f (2n+m) (ξ)
Z
Rn,m (f ) = µ(x)σ(x)ω 2 (x) dx.
(2n + 1)! a

Consideremos, detalhadamente, dois casos especiais em que os nós fixos são


pontos limites do intervalo de integração:
1. m = 2, t1 = a, t2 = b,
2. m = 1, t1 = a ou t1 = b.
Para simplificar suponhamos que a = −1, b = 1 e µ(x) ≡ 1.
2.4 Fórmulas de quadratura do tipo Gauss 119

Fórmulas de quadratura de Lobatto. No caso 1. a fórmula (1) toma a


forma
Z b n
X
(2) f (x) dx ≈ B1 f (−1) + B2 f (1) + Ak f (xk ).
a k=1

Seu grau de precisão algébrica é 2n + 1. De acordo com Teorema 1, os nós


x1 , . . . , xn da fórmula de quadratura extrema são os zeros do polinômio ω(x)
que é ortogonal em [−1, 1], com relação à função peso (1 − x)(x + 1), a todo
polinômio de πn − 1. Vamos deteminar ω. Para este propósito, representemos
(x2 − 1)ω(x) como combinação linear dos polinômios de Legendre. Temos

(x2 − 1)ω(x) = c0 P0 (x) + c1 P1 (x) + · · · + cn+2 Pn+2 (x).

Multipliquemos ambos os membros por Pk (x) e integremos. Obtemos


Z 1 Z 1
2
0= (x − 1)ω(x)Pk (x) dx = ck Pk2 (x) dx para k = 0, . . . , n − 1.
−1 −1

Consequentemente, c0 = · · · = cn−1 = 0 e

(x2 − 1)ω(x) = cn Pn (x) + cn+1 Pn+1 (x) + cn+2 Pn+2 (x).

Em particular, para x = 1 e x = −1, temos

0 = cn + cn+1 + cn+2 , 0 = (−1)n [cn − cn+1 + cn+2 ].

Assim, determinamos cn+1 = 0, cn+2 = −cn . Consequentemente,

(x2 − 1)ω(x) = cn [Pn (x) − Pn+2 (x)].

Então, os nós da fórmula de quadratura de Lobatto são os zeros do polinômio


Pn+2 (x) − Pn (x). Sabendo os nós, determinemos os coeficientes usando o fato
da fórmula ser interpolatória.

Vale a pena notar que x1 , . . . , xn são os zeros do polinômio Pn+1 . De fato,
integrando por partes, obtemos
Z 1 Z 1
¤′
(1 − x2 )Pn+1

Pn+1 (x) (1 − x2 )f (x) dx.
£
(x)f (x) dx = −
−1 −1

Esta integral é igual a zero para todo f ∈ πn−1 pois Pn+1 é ortogonal a todos

os polinômios de πn . Consequentemente, Pn+1 é ortogonal a todo os polinômio
2
de πn com relação à função peso (1 − x ). Portanto,

Pn+1 (x) = c(x − x1 ) . . . (x − xn )
120 Capı́tulo2. Diferenciação e Integração Numéricas

para alguma constante c.


Não é difı́cil determinar os coeficientes B1 e B2 da fórmula de quadratura de

Lobatto. Desde que a fórmula é exata para o polinômio (1 + x)Pn+1 (x), temos
Z 1
′ ′
(1 + x)Pn+1 (x) dx = 2Pn+1 (1)B2 .
−1

Por outro lado, integrando por partes, obtemos


Z 1

(1 + x)Pn+1 (x) dx = (1 + x)Pn+1 (x)|1−1 = 2Pn+1 (1) = 2.
−1

Consequentemente, B2 = 1/Pn+1 (1). Analogamente, obtemos B1 = (−1)n /Pn+1

(−1).

É fácil verificar que Pn+1 (1) = (n + 1)(n + 2), de onde concluimos que
1
B1 = B2 = .
(n + 1)(n + 2)
Fórmula de quadratura de Radau. Para m = 1 e t1 = −1 a fórmula de
quadratura (1) toma a forma
Z b n
X
(3) f (x) dx ≈ Bf (−1) + Ak f (xk ).
a k=1

A fórmula com grau de precisão algébrica igual a 2n da forma (3) é conhecida


como fórmula de quadratura de Radau. Determinemos seus nós. De acordo com
Teorema 1, x1 , . . . , xn são os zeros do polinômio ω(x) que é ortogonal em [−1, 1],
com relação à função peso 1 + x, a todos os polinômios de πn−1 . Representando
(1 + x)ω(x) como combinação linear dos polinômios de Legendre, temos

(1 + x)ω(x) = c0 P0 (x) + c1 P1 (x) + · · · + cn+1 Pn+1 (x).

Como no caso anterior, podemos mostrar que c0 = · · · = cn−1 = 0. Então,

(1 + x)ω(x) = cn Pn (x) + cn+1 Pn+1 (x).

Para x = −1 obtemos

cn (−1)n + cn+1 (−1)n+1 = (−1)n (cn − cn+1 ),

isto é, cn = cn+1 . Então,

(1 + x)ω(x) = cn (Pn (x) + Pn+1 (x)).

Portanto, os nós −1, x1 , . . . , xn da fórmula de quadratura de Radau coincidem


com as raı́zes do polinômio Pn (x) + Pn+1 (x).
Problema. Mostrar que os coeficientes das fórmulas de quadratura de Lo-
batto e de Radau são números positivos. Provar que B = 2/(n + 1)2 .
Capı́tulo 3

Solução Numérica de
Equações

Os pontos x para os quais f (x) = 0 são chamados zeros de f ou raı́zes da


equação f (t) = 0. Muitos problemas na prática exigem o calculo das raı́zes de
algumas equações. Mais freqüente são as equações algébricas, isto é, equações
da forma p(t) = 0 onde p é um polinômio algébrico. Se for possı́vel aproxi-
mar a função f por um polinômio algébrico p, as raı́zes da equação p(t) = 0
serão boas aproximações para as raı́zes da equação f (t) = 0. Portanto, é bom
ter à disposição alguns métodos numéricos para solução de equações algébricas.
Consideraremos alguns métodos. Antes de estudá-los, forneceremos alguns re-
sultados clássicos para estimar o número de raı́zes de uma equação algébrica.

3.1 Limites para as raı́zes


Começaremos com a regra de Cauchy para determinar um cı́rculo que contém
todas as raı́zes de um polinômio com coeficientes complexos. Sabe-se que se p(z)
é um polinômio de grau n, ele tem exatamente n raı́zes no plano complexo. É
muito importante achar uma região, por exemplo, um cı́rculo que contém todas
as raı́zes de p. Depois, podemos localizar, com outros métodos, as raı́zes de p
nesta região finita.

Teorema 36 (Cauchy) Seja p(z) = z n + a1 z n−1 + . . . + an um polinômio


algébrico com coeficientes complexos e an 6= 0. Então, qualquer raiz x de p
122 Capı́tulo3. Solução Numérica de Equações

satisfaz à desigualdade
|x| ≤ R,
onde R é a única raiz positiva da equação

(1) tn − |a1 |tn−1 − . . . − |an−1 |t − |an | = 0.

Em outras palavras, todas as raı́zes z da equação p(z) = 0 pertencem ao cı́rculo


com centro na origem e raio R.

Demonstração. Provaremos, primeiramente, que a equação (1) tem uma


única raiz positiva. Isto é consequência do teorema de Descartes, que provaremos
no final desta seção. Agora, daremos uma demonstração direta deste fato.
É claro que, para t > 0, (1) é equivalente à equação

tn = |a1 |tn−1 + . . . + |an−1 |t + |an |.

Dividindo ambos os membros por tn , chegamos à equação


1 1 1
1 = |a1 | + . . . + |an−1 | n−1 + |an | n .
t t t
A função do lado direito é estritamente decrescente em (0, ∞), tem valores
arbitrariamente grandes quando t está perto de zero e converge para 0 quando
t → ∞. Consequentemente, o gráfico desta função cruza o gráfico da função
y = 1 uma única vez em um ponto R de (0, ∞) (veja fig. 13).

y
f

y=1

R x

Figura 13

Denotemos por ϕ a função

ϕ(t) := tn − |a1 |tn−1 − . . . − |an−1 |t − |an | .


3.1 Limites para as raı́zes 123

Pela observação acima, ϕ tem uma única raiz positiva que é o ponto R. A figura
14 mostra o gráfico de ϕ.

R x

Figura 14

Então, se ϕ ≤ 0 para algum x > 0, temos x ≤ R.


Vamos supor, agora, que p(z) = 0 para algum z. Então,

z n = −a1 z n−1 − . . . − an−1 z − an

e, consequentemente,

|z|n = |a1 z n−1 + . . . + an−1 z + an |

≤ |a1 | |z|n−1 + . . . + |an−1 | |z| + |an |.

A última desigualdade mostra que ϕ(|z|) ≤ 0 e, de acordo com a afirmação já


provada, isto implica em |z| ≤ R. O teorema está provado.
Daremos, agora, uma regra proposta por Lagrange para determinar um li-
mite superior para as raı́zes positivas de uma equação algébrica com coeficientes
reais. Esta regra pode ser utilizada para determinar, por exemplo, um limite su-
perior para a raiz R do teorema anterior. O cálculo para uma boa aproximação
de R exige outros métodos numéricos.

Teorema 37 (Regra de Lagrange) Seja f (x) = a0 xn + . . . + an−1 x + an um


polinômio algébrico qualquer com coeficientes reais e a0 6= 0. Suponha que a0 >
124 Capı́tulo3. Solução Numérica de Equações

0. Sejam k o ı́ndice do primeiro coeficiente negativo e A, o valor absoluto do


coeficiente negativo de maior valor absoluto da sequência a0 , a1 , . . . , an . Então,
qualquer raiz positiva x de f (t) = 0 satisfaz à desigualdade
r
k A
x<1+ .
a0
q
A
Demonstração. Vamos supor que x ≥ 1 + k
a0 := ρ. Então,

f (x) = a0 xn + . . . + ak xn−k + . . . + an

≥ a0 xn + ak xn−k + . . . + an (ai ≥ 0 para i = 0, . . . , k − 1)

≥ a0 xn − A(xn−k + . . . + x + 1) ( pela escolha de A)

xn−k+1 − 1
= a0 xn − A
x−1
n−k+1
x 1
> a0 xn − A ( > 0)
x−1 x−1
n−k
x
= (a0 xk−1 (x − 1) − A)
x−1
xn−k
> (a0 (x − 1)k − A) (x > x − 1).
x−1

Como, de acordo com a hipótese,


r
k A
x≥1+ ,
a0

então (x − 1)k ≥ A/a0 e, consequentemente, a0 (x − 1)k − A ≥ 0. Assim,


mostramos que para x ≥ ρ temos f (x) > 0, isto é, f (x) é diferente de zero para
x ≥ ρ. Consequentemente, todas as raı́zes positivas da equação f (t) = 0 são
menores do que ρ. A afirmação está provada.
Existem outras regras simples para se determinar limites superiores para as
raı́zes positivas de uma equação algébrica que não serão abordadas aqui.
Notemos que, tendo à disposição um método para se determinar um limite
superiorpara as raı́zes positivas, podemos achar um limite inferior para as raı́zes
negativas, isto é, localizar em um intervalo [m, M ] todas as raı́zes reais de uma
equação algébrica. Isto pode ser feito, reduzindo-se o segundo problema (sobre
as raı́zes negativas), através da mudança de variáveis x = −t, ao primeiro (sobre
3.1 Limites para as raı́zes 125

as raı́zes positivas). De fato, sejam −x1 < . . . < −xj < 0 as raı́zes negativas de
f (x) = 0. Introduzimos o polinômio

g(t) := f (−t).

É claro que 0 < xj < . . . < x1 serão as raı́zes positivas da equação g(t) = 0.
Por um dos métodos conhecidos podemos achar um limite superior ρ para suas
raı́zes positivas,
xj < . . . < x1 < ρ.

Portanto, −ρ < −x1 < . . . < −xj < 0 e, consequentemente, −ρ será um limite
inferior para as raı́zes negativas de f . Analogamente, pelas mudanças
1 1
x= e x=− ,
t t
obtemos um limite inferior para as raı́zes positivas e um limite superior para as
raı́zes negativas para as correspondentes equações algébricas f (x) = 0.
Agora, tratemos de um problema mais difı́cil: determinar o número de raı́zes
reais de uma equação algébrica que pertencem ao intervalo [a, b]. O seguinte
lema, que vale não somente para polinômios mas para funções suficientemente
suaves, tem papel importante no cálculo de limites para este número.

Lema 10 Seja f uma função que tem derivadas contı́nuas até ordem k em uma
vizinhança U do ponto c. Sejam

f (c) = f ′ (c) = . . . = f (k−1) (c) = 0 e f (k) (c) 6= 0.

Então, para todo ε > 0 suficientemente pequeno, temos

f (c + ε)f ′ (c + ε) > 0,

f (c − ε)f ′ (c − ε) < 0.

Demonstração. A afirmação do lema diz que antes de qualquer raiz c da


equação f (t) = 0, a função f e sua derivada têm sinais opostos antes da raiz e
o mesmo sinal depois da raiz. A demonstração é baseada na fórmula de Taylor.
Para todo h suficientemente pequeno, precisamente tal que c + h, c − h ∈ U,
temos

f ′ (c) f ′′ 2 f (k−1) (c) k−1 f (k) (c + θh) k


f (c + h) = f (c) + h+ h + ... + h + h ,
1! 2! (k − 1)! k!

onde θ é algum número do intervalo (0, 1).


126 Capı́tulo3. Solução Numérica de Equações

Analogamente,

f ′′ (c) f (k−1) (c) k−2 f (k) (c + θ1 h) k−1


f ′ (c + h) = f ′ (c) + h + ... + h + h ,
1! (k − 2)! (k − 1)!

onde θ1 ∈ (0, 1). Como f (j) (c) = 0 para j = 0, . . . , k − 1, então

f (c + h) f (k) (c + θh) h
= .
f ′ (c + h) f (k) (c + θ1 h) k

Mas, f (k) (t) 6= 0. Desde que f (k) (t) é uma função contı́nua, existe uma vizi-
nhança U1 de c tal que f (k) (t) 6= 0 para todo t ∈ U1 . Além disso, sign f (k) (t) =
sign f (k) (c) para todo t ∈ U1 . Em particular, para h suficientemente pequeno,
temos
sinal f (k) (c + θh) = sinal f (k) (c + θ1 h).
Consequentemente,
f (c + h)
sinal = sinal h.
f ′ (c + h)
Assim, para h = ε e h = −ε obtemos a afirmação do lema.
O teorema a seguir é devido a Sturm e fornece o número exato de raı́zes
de uma equação algébrica em um intervalo [a, b]. Antes de formulá-lo intro-
duziremos algumas notações. Seja α0 , α1 , . . . , αn uma sequência de números
reais. Por S − (α0 , . . . , αn ) denotaremos o número das mudanças fortes de sinal
na sequência α0 , α1 , . . . , αn . Em outras palavras, este é o número de pares da
forma (+, −) ou (−, +) na sequência obtida por α0 , α1 , . . . , αn substituindo-se
todo número positivo αi por ” + ”, todo número negativo por −” e descartando-
se os zeros da sequência. Por exemplo,

S − (−5, 6, 4, 0, −1, 2) = 3.

Por S + (α0 , . . . , αn ) denotaremos o número das mudanças fracas de sinal na


sequência α0 , α1 , . . . , αn . Este é o numero máximo de mudanças, obtidas substituindo-
se os zeros da sequência α0 , α1 , . . . , αn por +1 ou −1. Por exemplo,

S + (−2, 0, −1, 4) = 3.

Seja f (x) um polinômio algébrico arbitrário de grau exatamente n, isto é, f (x) =
a0 xn + . . . + an e a0 6= 0. Aplicando o algorı́tmo de Euclides para achar o maior
fator comum entre f (x) e f ′ (x), obtemos

f (x) = f ′ (x)Q0 (x) − R1 (x)


3.1 Limites para as raı́zes 127

f ′ (x) = R1 (x)Q1 (x) − R2 (x)

R1 (x) = R2 (x)Q2 (x) − R3 (x)

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

Ri−1 (x) = Ri (x)Qi (x) − Ri+1 (x)

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

Rk−2 (x) = Rk−1 (x)Qk−1 (x) − Rk (x).

Neste processo, tomamos os restos da divisão com sinal “ − ”. Podemos


observar que os graus dos polinômios Ri (x), i = 1, 2, . . . , k, decrescem estrita-
mente. A divisão é repetida até obtermos o resto Rk (x) de grau zero, isto é,
uma constante. Se esta constante é 0, então Rk−1 é o fator comum entre f e f ′ .
Se Rk = const 6= 0, então f e f ′ não têm fator comum diferente de constante.
Por exemplo, se f (x) não tem zeros múltiplos, então f (x) e f ′ (x) não têm fa-
tor comum diferente de constante e, consequentemente, o algoritmo de Euclides
produz a sequência f (x), f ′ (x), R1 (x), . . . , Rk (x) com Rk (x) = const 6= 0.
Seja [a, b] um intervalo dado. Vamos supor que Rk (x) é o fator comum entre
f e f ′ e que Rk (x) 6= 0 em [a, b]. Obviamente Rk (x) 6= 0 em [a, b] se, e somente
se, f não tem zeros múltiplos em [a, b]. De fato, se f tivesse um zero ξ com
multiplicidade p em [a, b], então ξ seria um zero com multiplicidade (p − 1) de f ′
e, consequentemente, f e f ′ teriam um fator comum (x − ξ)p−1 , onde ξ ∈ [a, b].
Reciprocamente, se f não tem raı́zes múltiplas em [a, b], então o fator comum
entre f e f ′ não tem raı́zes em [a, b].
Vamos recordar algumas propriedades de f (x), f ′ (x), R1 (x), . . . , Rk (x), quando
f (x) não tem raı́zes múltiplas em [a, b].
1) Se f (c) = 0, então f (c − ε) e f ′ (c − ε) têm sinais opostos e f (c + ε) e
f ′ (c + ε) têm o mesmo sinal para todo ε > 0 suficientemente pequeno.
Esta propriedade é consequência do Lema 1.
2) Se Ri (c) = 0 para algum i, i = 0, 1, . . . , k−1, então Ri−1 (c) 6= 0, Ri+1 (c) 6=
0 e Ri−1 (c) e Ri+1 (c) têm sinais opostos, onde R−1 (x) := f (x) e R0 (x) := f ′ (x).
A afirmação é consequência imediata da relação Ri−1 (x) = Ri (x)Qi (x) −
Ri+1 (x) para x = c. Então, obtemos Ri−1 (c) = −Ri+1 (c). Se supuzemos que
um destes dois números é zero, então, pela relação de recorrência, obtemos
128 Capı́tulo3. Solução Numérica de Equações

Ri−1 (c) = Ri−2 (c) = . . . = R1 (c) = f ′ (c) = f (c) = 0. Assim, c seria raiz
múltipla de f , o que leva a uma contradição.
3) Rk (x) 6= 0 em [a, b].
Isto é consequência de f (x) não ter raı́zes múltiplas em [a, b].
A sequência f (x), f ′ (x), R1 (x), . . . , Rk (x) é chamada sequência de Sturm.
Vamos denotar por S − (x) o número das mudanças fortes de sinal na sequência
de Sturm, isto é, S − (x) := S − (f (x), f ′ (x), R1 (x), . . . , Rk (x)).

Teorema 38 (Sturm). Seja f (x) um polinômio algébrico arbitrário de grau


n, que não tem raı́zes múltiplas em [a, b]. Então, o número de zeros de f em
[a, b] é igual a S − (a) − S − (b).

Demonstração. Vamos acompanhar a variação do número S − (x) de mu-


danças de sinal na sequência de Sturm quando x se move de a até b. Desde
que todas as funções desta sequência são polinômios algébricos e, portanto,
são funções contı́nuas, então a mudança do número S − (x) pode ocorrer so-
mente quando x passa por uma raiz de uma das funções f (x), f ′ (x), R1 (x), . . .,
Rk−1 (x). Vamos supor que c ∈ [a, b] e f (c) = 0. Então, para ε > 0 suficiente-
mente pequeno, f (c − ε) e f ′ (c − ε) têm sinais opostos, e f (c + ε) e f ′ (c + ε)
têm o mesmo sinal. Consequentemente, entre f (x) e f ′ (x) existe uma mudança
de sinal antes de c e está mudança desaparece depois de c. Em outras palavras,
o número S − (x) diminui de um quando x passa pela raiz de f .
Vamos observar o que acontece quando x passa por uma raiz de Ri (x) para
algum i = 0, . . . , k − 1. Seja, então, Ri (c) = 0. Neste caso, pela propriedade 2)
da sequência de Sturm, Ri−1 (c) 6= 0, Ri+1 (c) 6= 0 e Ri−1 (c)Ri+1 (c) < 0. Isto sig-
nifica que Ri−1 (x)Ri+1 (x) < 0 para todo x em uma vizinhança suficientemente
pequena de c e, portanto,

S − (Ri−1 (x), Ri (x), Ri+1 (x)) = 1

para todo x desta vizinhança. Isto mostra que quando x passa por um zero de
uma função intermediária da sequência de Sturm o número de mudanças S − (x)
não muda. Assim, mostramos que S − (x) diminui de um somente quando x
passa por um zero de f (x). Consequentemente, o número de mudanças de sinal
que se perde quando x percorre o intervalo [a, b] é exatamente igual ao número
de raı́zes de f em [a, b]. A demonstração está completa.
Vale a pena observar que a demonstração do Teorema de Sturm é baseada
somente nas propriedades 1), 2) e 3) da sequência

f (x), R0 (x), R1 (x), . . . , Rk (x).


3.1 Limites para as raı́zes 129

Portanto, obteremos o mesmo resultado sobre o número de zeros de f se consi-


derarmos uma outra sequência

(2) f (x), P0 (x), P1 (x), . . . , Pk (x) ,

que satisfaz às exigências 1), 2) e 3). Tal sequência é chamada sequência de
Sturm. Então, se (2) é uma sequência de Sturm e f (x) não tem zeros múltiplos
em [a, b], o número de zeros de f em [a, b] é exatamente igual a S − (a) − S − (b).
Aplicando esta observação mostraremos que, para qualquer polinômio f (x)
independente de ter ou não zeros múltiplos em [a, b], o número S − (a) − S − (b) é
exatamente igual ao número de pontos distintos de [a, b] onde f (x) se anula. De
fato, se f (x) não tem zeros múltiplos, esta é a afirmação do Teorema de Sturm.
Seja f com zeros múltiplos em [a, b]. Então, f e f ′ tem um fator comum Rk (x),
que não é constante e também é fator de R1 (x), . . . , Rk (x). Por isto, as funções
f (x) f ′ (x) Rk−1 (x) Rk (x)
(3) , , ... , ,
Rk (x) Rk (x) Rk (x) Rk (x)
são definidas em [a, b] e satisfazem as exigências 1), 2) e 3). Então, (3) é uma
sequência de Sturm para f (x) := Rfk(x)
(x) e, pelo teorema de Sturm,
µ ¶ µ ¶
− f (a) − f (b)
S := S ,...,1 − S ,...,1
Rk (a) Rk (b)

é o número de raı́zes simples de Rfk(x)


(x) em [a, b], isto é, o número de raı́zes de
f (x) em [a, b]. Desde que o número de mudanças de sinal na sequência (3)
é igual ao número de mudanças de sinal na sequência f (x), f ′ (x), R1 (x), . . .,
Rk (x), S = S − (a) − S − (b). Consequentemente, o teorema de Sturm, aplicado a
qualquer polinômio f fornece o número de raı́zes de f em [a, b] sem contar suas
multiplicidades.
Uma das desvantagem do teorema de Sturm é a construção da sequência pois
exige divisão de polinômios algébricos. Demonstraremos um outro resultado
que utiliza sequências mais fáceis de se construir. Infelizmente, ele não fornece
o número exato de raı́zes, mas somente um limite superior para este número.
Denotemos por Z(f ; (a, b)) o número de zeros de f em (a, b), contando as
multiplicidades.

Teorema 39 (Budan-Fourier) Seja f (x) um polinômio algébrico de grau exa-


tamente n. Então,
³ ´
Z(f ; (a, b)) = S − f (a), f ′ (a), f ′′ (a), . . . , f (n) (a)
130 Capı́tulo3. Solução Numérica de Equações

³ ´
−S + f (b), f ′ (b), f ′′ (b), . . . , f (n) (b)
−k,

onde k é zero ou um número par.

Demonstração. Vamos acompanhar o que acontece como o número de mu-


danças de sinal na sequência S − (f (x), f ′ (x), . . . f (n) (x)) =: V (x) quando x se
move de a até b. É claro que uma mudança em V (x) pode ocorrer somente
quando x passa por uma raiz de uma das funções f (x), f ′ (x), . . . , f (n−1) (x),
onde f (n) (x) é uma constante. Seja c uma raiz com multiplicidade k de f (x),
ou seja,
f (c) = f ′ (c) = . . . = f (k−1) (c) = 0, f (k) (c) 6= 0.
Vamos supor que f (k) (c) > 0. Desde que f (k) (t) é função contı́nua, f (k) (t) > 0
para todo t em uma vizinhança U de c. Pelo Lema 1, para ε > 0 suficientemente
pequeno, temos

f (k−1) (c − ε) < 0 e f (k−1) (c + ε) > 0.

Analogamente,

f (k−2) (c − ε) > 0, f (k−2) (c + ε) > 0, ....

Desta forma, ³ ´
S − f (c − ε), f ′ (c − ε), . . . , f (k) (c − ε) = k
e ³ ´
S − f (c + ε), f ′ (c + ε), . . . , f (k) (c + ε) = 0.
Então, se x passar por um zero de f , o número V (x) diminuirá exatamente da
multiplicidade deste zero.
Vamos supor, agora, que c é um zero de multiplicidade k da derivada de
alguma ordem, mas não é um zero de f . Sejam

f (i−1) (c) 6= 0, f (i) (c) = f (i+1) (c) = . . . = f (i+k−1) (c) = 0, f (i+k) (c) 6= 0

para algum 1 < i ≤ n − k. Pelo Lema 1, para ε > 0 suficientemente pequeno,


³ ´
R1 := S − f (i−1) (c − ε), f (i) (c − ε), . . . , f (i+k) (c − ε)
³ ´
= k + S − f (i−1) (c − ε), f (i) (c − ε)

e
³ ´
R2 := S − f (i−1) (c + ε), f (i) (c + ε), . . . , f (i+k) (c + ε)
³ ´
= S − f (i−1) (c + ε), f (i+k) (c + ε) .
3.1 Limites para as raı́zes 131

Desde que f (i−1) e f (i+k) são funções contı́nuas, f (i−1) (t) e f (i+k) (t) não se
anulam em uma vizinhança U de c. Logo,
³ ´
S − f (i−1) (t), f (i+k) (t) = δ = const

para todo t de U, sendo δ = 1 ou δ = 0, isto é, entre essas derivadas pode houver
ou não mudanças de sinal. Investigaremos quatro casos dependendo do valor de
δ e da paridade de k.
Sejam δ = 1 e k um número par. Então,

R1 = k + 1, R2 = 1. Logo, V (c − ε) − V (c + ε) = k (par).

Analogamente, quando δ = 1 e k é ı́mpar, temos:

R1 = k, R2 = 1, V (c − ε) − V (c + ε) = k − 1 (par).

Quando δ = 0 e k é par:

R1 = k, R2 = 0, V (c − ε) − V (c + ε) = k (par).

Quando δ = 0 e k é ı́mpar:

R1 = k + 1, R2 = 0, V (c − ε) − V (c + ε) = k + 1 (par).

Portanto, quando x passa por um zero de f (i) , V (x) sempre diminui de um


número par.
Então, para todo ε > 0 suficientemente pequeno,

Z(f ; (a + ε, b − ε)) = V (a + ε) − V (b − ε)

ou menor que esse valor por um número par. Mas,


³ ´
lim V (a + ε) = S − f (a), f ′ (a), . . . , f (n) (a)
ε→0

e ³ ´
lim V (b − ε) = S + f (b), f ′ (b), . . . , f (n) (b) .
ε→0
O teorema está demonstrado.
Desde que
³ ´ ³ ´
S − f (x), f ′ (x), . . . , f (n) (x) ≤ S + f (x), f ′ (x), . . . , f (n) (x) ,

temos
³ ´ ³ ´
Z(f ; (a, b)) ≤ S − f (a), f ′ (a), . . . , f (n) (a) − S − f (b), f ′ (b), . . . , f (n) (b) ,
132 Capı́tulo3. Solução Numérica de Equações

que é a forma mais comum do teorema de Budan-Fourier que aparece na litera-


tura, apesar de mais fraca do que a aqui apresentada.
Há mais de 350 anos o famoso matemático e filósofo francês Renet Des-
cartes forneceu uma regra para avaliar o número de raı́zes positivas de um
polinômio algébrico através do número de mudanças de sinal da sequência de
seus coeficientes. Demonstraremos esta regra como consequência do Teorema
de Budan-Fourier.

Teorema 40 (Regra de Descartes) Seja

f (x) = a0 xn + a1 xn−1 + . . . + an , a0 6= 0, an 6= 0.

Então,
Z(f ; (0, ∞)) = S − (a0 , a1 , . . . , an ) − k,
onde k é zero ou um número par. Em outras palavras, o número de raı́zes
positivas da equação f (x) = 0 é igual ao número de mudanças fortes de sinal da
sequência de seus coeficientes ou menor que este número por um número par.

Demonstração. Desde que f (x) é um polinômio algébrico de grau n, então


f, f ′ , . . . , f (n−1) têm um número finito de raı́zes positivas. Por isto, podemos
escolher um número M > 0, tal que nenhum dos polinômios f, f ′ , . . . , f (n−1) se
anula para x ≥ M . Portanto,

(4) Z(f ; (0, ∞)) = Z(f ; (0, M )).

Então, pelo teorema de Budan-Fourier,


(5) ³ ´
Z(f ; (0, M )) ≤ S − (f (0), f ′ (0), . . . , f n (0)) − S − f (M ), f ′ (M ), . . . , f (n) (M ) .

Desde que f (x) 6= 0 para M ≤ x < ∞,


³ ´
sinal f (M ) = sinal lim f (x) = sinal a0 .
x→∞

A última igualdade é consequência do fato de o sinal de f (x), para x muito


grande, ser o mesmo como o sinal de a0 xn . Analogamente, temos
³ ´
sign f (k) (M ) = sign lim f (k) (x)
x→∞

= sign n(n − 1) . . . (n − k + 1)a0 xn−k = sign a0

para todo k = 1, 2, . . . , n − 1. Para k = n, sign f (n) (x) = sign n!a0 = sign a0 .


Logo, todos os números da sequência

f (M ), f ′ (M ), . . . , f (n) (M )
3.2 Método da contração 133

têm o mesmo sinal que é igual ao do coeficiente a0 . Então,


³ ´
(6) S − f (M ), f ′ (M ), . . . , f (n) (M ) = 0.

Considerando que f (k) (0) = an−k k! para k = 0, . . . , n, obtemos


³ ´
(7) S − f (0), f ′ (0), . . . , f (n) (0) = S − (an , an−1 , . . . , a0 ) = S − (a0 , . . . , an ).

Então, (4), (5), (6) e (7) implicam na desigualdade

Z(f ; (0, ∞)) ≤ S − (a0 , a1 , . . . , an ),

que é o que querı́amos demonstrar. Pelo teorema de Budan-Fourier, a diferença


entre os dois lados de (5), e por isso S − (a0 , a1 , . . . , an ) − Z(f ; (0, ∞)), é um
número par. A regra de Descartes está demonstrada.

3.2 Método da contração


A maioria dos métodos para o cálculo aproximado das raı́zes de equações são
iterativos. A idéia desses métodos é começar com uma aproximação inicial x0 e,
executando um determinado procedimento numérico chamado iteração, achar a
próxima aproximação x1 . Depois, x2 é determinado a partir dos valores de x0 e
x1 , e assim por diante. Constrói-se, então, uma sequência x0 , x1 , x2 , . . . , xn que
converge para a raiz ξ da equação f (x) = 0. Para um n suficientemente grande,
xn é uma aproximação da raiz ξ com uma determinada precisão ε. Considere-
mos uma classe de métodos iterativos baseados no método da contração. Seja
f (x) uma função definida em [a, b]. Investiguemos a equação f (x) = 0. Será
conveniente escrever esta equação da forma

x = ϕ(x).

Isto pode ser feito, por exemplo, somando-se x em ambos os membros de


f (x) = 0 ou fazendo outra transformação equivalente. Se ξ é uma raiz da
equação f (x) = 0, obviamente ξ = ϕ(ξ). Vamos escolher um ponto x0 e cons-
truir a sequência
x0 , x1 , x2 , . . . , xn , . . .
pela regra

(1) xn = ϕ(xn−1 ), n = 1, 2, . . .

Nosso objetivo é construir uma sequência {xn } que converge para a raiz ξ da
equação x = ϕ(x). É claro que a regra (1) não gera tal sequência para qualquer
134 Capı́tulo3. Solução Numérica de Equações

função ϕ. Entretanto, existe uma classe de equações, isto é, de funções ϕ, para a
qual a simples regra de iteração (1) de fato gera a sequência {xn } que converge
para a raiz ξ. Vamos discutir, agora, quais exigências sobre a função ϕ garantem
a convergência. Primeiramente, temos que ter certeza de que a sequência estar
bem definida. Isto significa que cada ponto da sequência tem que pertencer ao
domı́nio [a, b] da função ϕ. Esta exigência vai ser obviamente satisfeita se

Condição 1 ϕ(x) ∈ [a, b] para todo x ∈ [a, b].

De fato, se ϕ satisfaz à Condição 1 e se escolhermos uma aproximação inicial


qualquer x0 de [a, b], então x1 = ϕ(x0 ) também pertencerá ao intervalo [a, b].
Por isso, x2 = ϕ(x1 ) ∈ [a, b], e assim por diante. A Condição 1 mostra também
que ϕ é uma transformação do intervalo [a, b] em [a, b].

Lema 11 Se ϕ é uma tranformação de [a, b] em [a, b], então, para qualquer


aproximação inicial x0 de [a, b], todos os outros pontos da sequência {xn } também
pertencem ao intervalo [a, b].

Procuremos a raiz da equação x = ϕ(x), isto é, um ponto ξ de [a, b] para


o qual ξ = ϕ(ξ). O ponto ξ é, então, um ponto fixo da transformação ϕ. A
seguinte condição simples sobre ϕ garante a existência de pelo menos um ponto
fixo.

Condição 2 ϕ é uma transformação contı́nua do intervalo [a, b] em [a, b].

De fato, seja ϕ uma função contı́nua que satisfaz à Condição 2, isto é, ϕ é
contı́nua de [a, b] em [a, b]. Se a = ϕ(a), a é um ponto fixo. Analogamente, se
b = ϕ(b), então b é um ponto fixo. Vamos supor que a 6= ϕ(a) e b 6= ϕ(b). Desde
que ϕ é uma transformação de [a, b] em [a, b], então ϕ(a) ∈ [a, b], ϕ(b) ∈ [a, b] e,
portanto,
a < ϕ(a), ϕ(b) < b.
Definimos a função r(x) := x − ϕ(x). Ela é contı́nua em [a, b] e r(a) :=
a − ϕ(a) < 0, r(b) := b − ϕ(b) > 0. Consequentemente existe um ponto ξ
de [a, b] tal que r(ξ) = 0, isto é, ξ = ϕ(ξ). Vamos formular este resultado
explicitamente.

Lema 12 Se ϕ é uma transformação contı́nua do intervalo [a, b] em [a, b], então


ϕ tem um ponto fixo em [a, b].

Este é um caso bem particular de um conhecido teorema da topologia, de


acordo com o qual, toda transformação contı́nua de um conjunto convexo Ω de
IRn em IRn tem ponto fixo.
3.2 Método da contração 135

Resta observar quais condições sobre ϕ garantirão a convergência da sequência


{xn } para o ponto fixo ξ.
Dizemos que a função g satisfaz à condição de Lipschitz com constante q em
[a, b] se
|g(x) − g(y)| ≤ q|x − y| para todo x, y ∈ [a, b]

Teorema 41 Seja ϕ uma transformação contı́nua de [a, b] em [a, b] que satisfaz


à condição de Lipschitz com constante q < 1. Então,
a) a equação x = ϕ(x) tem uma única raiz ξ em [a, b].
b) a sequência {xn } converge para ξ quando n → ∞.
Além disso,

|xn − ξ| ≤ (b − a)q n para todo n. (3.2.1)

Demonstração: Pelo Lema 2 ϕ tem pelo menos um ponto fixo. Suponha que
tem mais de um. Sejam ξ1 = ϕ(ξ1 ) e ξ2 = ϕ(ξ2 ), ξ1 , ξ2 ∈ [a, b]. Então, para
ξ1 6= ξ2

|ξ1 − ξ2 | = |ϕ(ξ1 ) − ϕ(ξ2 )|


≤ q|ξ1 − ξ2 | (condição de Lipschitz)
< |ξ1 − ξ2 | q < 1).
Chegamos a um absurdo. Portanto, ξ1 = ξ2 . A unicidade está demonstrada.
Agora mostraremos a desigualdade (3) que obviamente implicará em b). Temos

|xn − ξ| = |ϕ(xn−1 ) − ϕ(ξ)| ≤ q|xn−1 − ξ|


= q|ϕ(xn−2 ) − ϕ(ξ)| ≤ q 2 |xn−2 − ξ|
· ···
≤ q n |x0 − ξ|.

Desde que x0 ∈ [a, b] e ξ ∈ [a, b], então |x0 − ξ| < b − a. A desigualdade (3)
está demonstrada e, com isso, o teorema.
Toda transformação ϕ que satisfaz à condição de Lipschitz com constante
menor do que 1 é chamada contração. Neste caso, a distância entre ϕ(x) e ϕ(y)
é estritamente menor do que a distância entre x e y, isto é, ϕ “contrai” as
distâncias. Pelo Teorema do valor médio, se ϕ é uma função diferenciável em
[a, b] e |ϕ′ (x)| ≤ q < 1 para todo x ∈ [a, b], então ϕ é uma contração. De fato,
pelo Teorema do valor médio

ϕ(x) − ϕ(y) = ϕ′ (η)(x − y)


136 Capı́tulo3. Solução Numérica de Equações

para algum ponto η entre x e y. Portanto

|ϕ(x) − ϕ(y)| = |ϕ′ (η)| , |x − y| ≤ q|x − y|, q < 1,

isto é, ϕ é uma contração.


Suponha que a equação x = ϕ(x) tem uma raiz ξ em [a, b]. Dizemos que
o processo de iteração gerado pela função ϕ é convergente em [a, b] se, para
toda aproximação inicial x0 de [a, b], a sequência {xn } construı́da pela fórmula
xn = ϕ(xn−1 ), n = 1, 2, . . ., é convergente para a raiz ξ. O Teorema 3 apresenta
o método da contração para a construção de processos de iteração convergentes.
Agora, daremos uma forma teoricamente mais fraca mas que é frequentemente
usada.

Corolário 6 Seja ξ uma raiz da equação x = ϕ(x). Suponha que ϕ tem de-
rivada contı́nua na vizinhança U de ξ e |ϕ′ (ξ)| < 1. Então, para qualquer
aproximação inicial x0 suficientemente boa, o processo iterativo gerado por ϕ é
convergente. Além disso, existem constantes c > 0 e 0 < q < 1, tais que

|xn − ξ| ≤ cq n para todo n.

Demonstração: Desde que ϕ′ (t) é uma função contı́nua em U e |ϕ′ (ξ)| < 1,
exitem q < 1 e ε > 0, tais que

|ϕ′ (t)| ≤ q para todo t ∈ [ξ − ε, ξ + ε].

Além disso, para t ∈ [ξ − ε, ξ + ε], temos

|ϕ(t) − ξ| ≤ q|t − ξ| ≤ qε < ε,

isto é, ϕ(t) ∈ [ξ − ε, ξ + ε]. Consequentemente, ϕ é uma contração do intervalo


[ξ − ε, ξ + ε] em [ξ − ε, ξ + ε]. Portanto, todas as afirmações do corolário são
consequências do Teorema 3.
Na Figura 15 é dada a ilustração geométrica do método do ponto fixo da
contração.
A velocidade de convergência em (3) é determinada pelo termo q n de uma
progressão geométrica. Dizemos, então, que o correspondente processo iterativo
é convergente com velocidade de progressão geométrica. Esta convergência é
bastante rápida. Por exemplo, para q = 12 e n = 10 obtemos precisão da ordem
de 10−3 . Entretanto, existem processos que convergem muito mais rapidamente.
Para caracterizar a velocidade da convergência vamos introduzir a noção de
ordem de convergência.
3.2 Método da contração 137

y x = y

ρ(x)
ρ(ξ)
ρ( x )
1

ρ( x )
0

x0 x1 x2 ξ x

Figura 15

Definição 14 Dizemos que o processo iterativo que gera a sequência x0 , x1 , . . .


tem ordem de convergência p se existem constantes positivas c e q < 1 tais que
n
|xn − ξ| ≤ cq p para todo n.

O seguinte teorema fornece um critério para determinar a ordem de con-


vergência do processo iterativo gerado pela função ϕ.

Teorema 42 Suponha que ϕ tem derivadas contı́nuas de ordem até p inclusive


em uma vizinhança do ponto ξ. Sejam

ϕ(ξ) = ξ, ϕ′ (ξ) = · · · = ϕ(p−1) (ξ) = 0, ϕ(p) (ξ) 6= 0.

Então, para toda aproximação x0 suficientemente boa, o processo iterativo ge-


rado por ϕ tem ordem de convergência p.

Demonstração: Pela fórmula de Taylor

ϕ′ (ξ) ϕ(p−1) (ξ)


ϕ(x) = ϕ(ξ) + (x − ξ) + . . . + (x − ξ)p−1
1! (p − 1)!
ϕ(p) (ξ + θ(x − ξ))
+ (x − ξ)p ,
p!

onde |θ| < 1. Desde que ϕj (ξ) = 0 para j = 1, . . . , p − 1, então

ϕ(p) (ξ + θ(x − ξ))


ϕ(x) − ϕ(ξ) = (x − ξ)p .
p!
138 Capı́tulo3. Solução Numérica de Equações

Consequentemente, para todo x de uma vizinhança suficientemente pequena U


de ξ,
|ϕ(x) − ϕ(ξ)| ≤ M |x − ξ|p ,

onde M := maxt∈U |ϕ(p) (t)|/p!. Em particular, para x = xn , temos

|xn+1 − ξ| = |ϕ(xn ) − ϕ(ξ)| ≤ M |xn − ξ|p


= M |ϕ(xn−1 ) − ϕ(ξ)|p ≤ M (M |xn−1 − ξ|p )p
2 2 3
= M p+1 |xn−1 − ξ|p ≤ M 1+p+p |xn−2 − ξ|p ≤ . . .
pn+1 −1 n+1 1 1 n+1
≤ M p−1 |x0 − ξ|p = M 1−p {M p−1 |x0 − ξ|}p .

Quando x0 está suficientemente perto de ξ, temos M 1/(p−1) |x0 − ξ| < q < 1 e,


portanto,
n+1
|xn+1 − ξ| ≤ cq p para todo n,

onde c = M 1/(p−1) . A demonstração está completa.

I. Método das cordas.

Sejam [a, b] um dado intervalo finito e f (x) uma função duas vezes diferen-
ciavel nesse intervalo satisfazendo às condições :
a) f (a) f (b) < 0,
b) f ′ (x) f ′′ (x) 6= 0 para todo x de [a, b].
Não é difı́cil observar que essas condições garantem a existência e a unicidade
da raiz ξ da equação f (x) = 0 em [a, b].
De fato, a primeira condição garante a existência de um ponto ξ ∈ (a, b) tal
que f (ξ) = 0. A segunda condição implica que f ′ (x) e f ′′ (x) não têm zeros
em [a, b]. Consequentemente, f ′ (x) e f ′′ (x) não trocam de sinal em [a, b]. Isto
mostra que f (x) é uma função estritamente monótona e convexa se f ′′ (x) > 0
ou côncava se f ′′ (x) < 0. Mas, toda função monótona pode cruzar a reta real x
em no máximo um ponto. A unicidade de ξ está deonstrada.
O método das cordas é um processo iterativo para a construção de uma
sequência de aproximações consecutivas x0 , x1 , . . . da raiz ξ da equação f (x) = 0
da seguinte maneira:
Construimos uma reta l0 que passa pelos pontos (a, f (a)) e (b, f (b)), isto
é, a corda da curva do gráfico da função f em [a, b] (veja Figura 16). A reta
cruza o eixo x em algum ponto x0 . Esta é a aproximação inicial. É claro que
x0 está à esquerda de ξ se f é convexa e à direita de ξ se f é côncava. No
exemplo da figura x0 < ξ. Depois, achamos a próxima aproximação x1 como
o ponto de cruzamento do eixo x com a corda l1 que liga (x0 , f (x0 )) e (b, f (b))
(ou (x0 , f (x0 )) e (a, f (a)) se f ′′ (x) < 0). Analogamente, o processo continua.
3.2 Método da contração 139

l0

l1 f
a x0 x1 b
ξ

Figura 16

O ponto xn+1 é obtido como o ponto de cruzamento do eixo x com a corda ln+1
que liga os pontos (xn , f (xn )) e (b, f (b)) (ou (a, f (a))). O método é ilustrado
geometricamente na Figura 16.
Vamos achar uma expressão analı́tica para xn+1 em termos da aproximação
anterior xn . Consideremos o caso em que f ′′ (x) > 0, ilustrado na Figura 16. A
equação da reta ln+1 é

x−b x − xn
ln+1 = f (xn ) + f (b) = f (xn ) + f [xn , b](x − xn ).
xn − b b − xn

A aproximação xn+1 é a raiz da equação ln+1 (x) = 0. Consequentemente,

f (xn )
xn+1 = xn − ,
f [xn , b]

e, portanto,

f (xn )
(4) xn+1 = xn − (b − xn ).
f (b) − f (xn )

Esta é a fórmula conhecida para as aproximações sucessivas da raiz ξ pelo


método das cordas.
Mostraremos que xn de fato converge para ξ quando n → ∞. Usando a
convexidade de f , podemos observar que x0 , x1 , . . . é uma sequência monótona
140 Capı́tulo3. Solução Numérica de Equações

e limitada e, portanto, convergente. Seja α o seu limite. Então, fazendo n


convergir para infinito em (4), obtemos

f (α)
α=α− (b − α), isto é, f (α) = 0.
f (b) − f (α)
Consequentemente, α = ξ e a convergência de xn para ξ está demonstrada.
Entretanto, vamos usar o Corolário 4 da teoria geral do método da contração
pois ele nós dá uma estimativa para a velocidade da convergência. Então, (4)
implica que o método das cordas é um processo iterativo gerado pela função
f (x)
ϕ(x) = x − (b − x).
f (b) − f (x)

É óbvio que a equação x = ϕ(x) é equivalente a f (x) = 0. Como aplicaremos o


Corolário 4 para ϕ, precisamos achar ϕ′ (ξ). Temos
· ¸ ½ ¾′ ¯¯
′ ′ b−ξ b−x
ϕ (ξ) = 1 − f (ξ) − f (ξ) .
¯
f (b) − f (ξ) f (b) − f (x) ¯
¯
x=ξ

Desde que f (ξ) = 0, obtemos

b−ξ f (b) − f ′ (ξ)(b − ξ)


ϕ′ (ξ) = 1 − f ′ (ξ) = .
f (b) f (b)

Substituindo f (b) (pela fórmula de Taylor) por

f ′′ (η1 )
f (b) = f (ξ) + f ′ (ξ)(b − ξ) + (b − ξ)2 no numerador
2
e por
f (b) = f (ξ) + f ′ (η2 )(b − ξ) no denominador,

onde η1 e η2 são pontos de (a, b), obtemos

f ′′ (η1 )(b − ξ)
ϕ′ (ξ) = .
2f ′ (η2 )
Sejam
M := max |f ′′ (t)| e m := min |f ′ (t)|.
t∈[a,b] t∈[a,b]

Como, por hipótese, |f (t)| > 0 em [a, b], temos m > 0. Logo,
M
|ϕ′ (ξ)| ≤ |b − ξ|
2m
e, portanto, |ϕ′ (ξ)| pode ser menor do que qualquer q < 1 escolhido a priori,
desde que b − ξ seja suficientemente pequeno, isto é, se o intervalo [a, b] for
3.2 Método da contração 141

suficientemente estreito. Então, se localizamos a raiz ξ em um intervalo [a, b]


suficientemente estreito,
|ϕ′ (ξ)| < q < 1.
Assim, pelo Corolário 4, o processo iterativo gerado por ϕ, isto é, o método das
cordas, é convergente com a velocidade da progressão geométrica,

|xn − ξ| ≤ const. q n .

II. Método das secantes.


Vamos supor que f satisfaz às condições a), b) do exemplo anterior. No
método das secantes, cada nova aproximação xn+1 da raiz ξ da equação f (x) = 0
é obtida a partir das anteriores xn e xn−1 . Escolhemos x0 = a ou x0 = b de modo
que f (x0 )f ′′ (x0 ) > 0. Na figura 17, por exemplo, x0 = b. Depois, escolhemos
o ponto x1 de modo que ξ < x1 < x0 . Mas, como podemos escolher o ponto
x1 de modo que ele satisfaça à mesma condição que x0 ? Esta escolha pode ser
feita comparando-se os sinais de f (x0 ) e de f (x1 ). Se f (x1 ) = 0, então x1 = ξ
é a raiz e o problema estaria resolvido. Se f (x1 )f (x0 ) > 0, os pontos x0 e x1
ficam do mesmo lado de ξ e a exigência está satisfeita. Se f (x1 )f (x0 ) < 0, os
pontos x0 e x1 ficam de lados diferentes de ξ e, então, x1 não satisfaz à condição
exigida. Neste caso o cálculo de f (x1 ) serviu para localizarmos a raiz ξ dentro
do intervalo [x1 , x0 ] que é menor do que o intervalo inicial [a, b]. De agora em
diante podemos usar este intervalo ao invés de [a, b]. Depois da escolha de x0
e x1 construimos a próxima aproximação x2 como o ponto de cruzamento da
secante l1 , que passa pelos pontos (x0 , f (x0 )) e (x1 , f (x1 )), com o eixo x, isto
é, o zero de l1 (x). O próximo ponto x3 é o zero da secante l2 pelos pontos
(x1 , f (x1 )), (x2 , f (x2 )). Continuando assim, determinamos xn+1 como o zero
da secante ln que passa pelos pontos (xn , f (xn )), (xn−1 , f (xn−1 )). O algoritmo
para a construção de {xn } é mostrado graficamente na Figura 17.
Determinemos uma expressão analı́tica para xn+1 em termos de xn e xn−1 .
Pela fórmula de Newton

ln (x) = f (xn ) + f [xn−1 , xn ](x − xn )

e, consequentemente, xn+1 é determinado pela equação

f (xn ) + f [xn−1 , xn ](xn+1 − xn ) = 0.

Assim, obtemos
f (xn ) f (xn )
xn+1 = xn − = xn − (xn−1 − xn ).
f [xn−1 , xn ] f (xn−1 ) − f (xn )
142 Capı́tulo3. Solução Numérica de Equações

ξ
a x 3 x 2
x 1
b= x 0

f l2 l1

Figura 17

Mostremos a convergência de xn para ξ quando n → ∞ e achemos a ordem de


convergência.
Como no exemplo anterior, usaremos as notações

M := max |f ′′ (t)|, m := min |f ′ (t)|.


t∈[a,b] t∈[a,b]

Teorema 43 Seja {xn }∞n=0 a sequência das iterações pelo método das secantes.
Suponha que as aproximações iniciais x0 e x1 satisfaçam à condição
0 1
|x0 − ξ| ≤ Cq r e |x1 − ξ| ≤ Cq r ,

onde 0 < q < 1 e C é uma constante tal que M C < 2m e r = (1 + 5)/2.
Então,
n
(5) |xn − ξ| ≤ Cq r para todo n.

Demonstração. Aplicaremos indução em n. Para n = 0 e n = 1 a estimativa


(5) é verdadeira pelas hipóteses do teorema. Vamos supor que (5) vale para todo
número natural ≤ n. Provemos (5) para n + 1. Para este fim, representemos
f (x) pela fórmula de Lagrange
f ′′ (η)
f (x) = ln (x) + (x − xn−1 )(x − xn ) (η ∈ [a, b])
2!
e pela fórmula de Taylor

f (x) = f (ξ) + f ′ (η1 )(x − ξ) (η1 ∈ [a, b]).


3.2 Método da contração 143

Igualando essas duas expressões para x = xn+1 e levando em consideração que


f (ξ) = 0 e ln (xn+1 ) = 0, obtemos

f ′′ (η)
|f ′ (η1 )| |xn+1 − ξ| = | | |xn+1 − xn−1 | |xn+1 − xn |.
2
Assim, chegamos em
M
|xn+1 − ξ| ≤ |xn+1 − xn−1 | |xn+1 − xn |
2m

M
≤ |xn−1 − ξ| |xn − ξ| (ξ < xn+1 < xn < xn−1 ).
2m
Mas, de acordo com a hipótese de indução,
n−1
|xn−1 − ξ| ≤ Cq r ,
n
|xn − ξ| ≤ Cq r .

Consequentemente,
M n−1 n MC n−1 n
|xn+1 − ξ| ≤ Cq r Cq r = Cq r +r
2m 2m
n−1 MC
< Cq r (1+r)
( < 1 por hipótese).
2m
Mas, r é a raiz positiva da equação r2 − r − 1 = 0. Logo, r + 1 = r2 e,
portanto, rn−1 (1 + r) = rn+1 . A desigualdade acima toma a forma
n+1
|xn+1 − ξ| ≤ Cq r ,

o que é que tinhamos que demonstrar. Com isto, a demonstração está completa.

Notemos que r = (1 + 5)/2 ≈ 1, 618. Consequentemente, o método das
secantes converge muito mais rapidamente do que o método das cordas. Além
disso, a fórmula para o cálculo de xn+1 não é mais complexa do que a corres-
pondente fórmula para o método das cordas. Os dois métodos exigem o cálculo
de apenas um valor de f em cada passo.
Conheceremos um outro método que converge mais rapidamente do que o
método da secantes.

III. Método de Newton (método das tangentes).

Aqui, também exigiremos que as condições a), b) sejam satisfeitas. Escolhe-


mos a aproximação inicial x0 = a ou x0 = b de tal modo que f (x0 ) f ′′ (x0 ) > 0.
A próxima aproximação x1 é determinada como o ponto do cruzamento do eixo
144 Capı́tulo3. Solução Numérica de Equações

ξ
a x x
2 1
x 0= b

Figura 18

x com a tangente à curva y = f (x) no ponto x0 , d0 (veja Figura 18). Depois,


achamos x2 como zero da tangente, d1 , da f em x1 e, continuando assim, xn+1
é o zero da tangente da f no ponto xn , dn .
Vamos achar a fórmula para xn+1 . Temos

ln (x) = f (xn ) + f ′ (xn )(x − xn ).

Consequentemente, xn+1 é solução da equação linear

f (xn ) + f ′ (xn )(x − xn ) = 0.

Assim, obtemos
f (xn )
xn+1 = xn − .
f ′ (xn )
Esta é a conhecida fórmula de Newton para o cálculo aproximado da raiz da
equação f (x) = 0.
Para mostrar a convergência do método usaremos o Teorema 5. É claro que
xn+1 é obtido pela fórmula xn+1 = ϕ(xn ) , onde
f (x)
ϕ(x) = x − .
f ′ (x)
Para ϕ′ (ξ) obtemos
2
f ′ (ξ) − f (ξ)f ′′ (ξ)
ϕ′ (ξ) = 1 − = 0 (f (ξ) = 0).
f ′2 (ξ)
3.2 Método da contração 145

Podemos verificar que, no caso geral, ϕ′′ (ξ) 6= 0. Consequentemente, pelo Te-
orema 5, o processso iterativo gerado por ϕ, isto é, o método de Newton, é
convergente e tem ordem de convergência 2 para toda aproximação inicial x0
suficientemente boa. Em outras palavras, existem constantes C e q ∈ (0, 1) tais
que
n
|xn − ξ| ≤ Cq 2 para todo n.
Então, a convergência do método de Newton é muito boa. Para melhor ilustrar
esta convergência, vamos supor que |ϕ′′ (t)| ≤ 2 em uma vizinhança U da raiz ξ.
Seja ek := |xk − ξ|. Então, para todo x0 de U, a próxima iteração x1 , construida
pelo método de Newton, satisfaz

e1 = |x1 − ξ| = |ϕ(x0 ) − ϕ(ξ)|

ϕ′′ (η)
= |ϕ′ (ξ)(x0 − ξ) + (x0 − ξ)2 | ( expandindo ϕ(x0 ) por Taylor)
2

|ϕ′′ (η)| 2
= e0 (ϕ′ (ξ) = 0),
2
e, consequentemente, e1 ≤ e20 . Analogamente, e2 ≤ e21 , . . .. Se, por exemplo,
x0 aproxima ξ com precisão 0.01, então x1 aproxima ξ com precisão e1 = e20 =
0.0001, x2 é aproximação de ξ com precisão 0.00000001, . . .. Observamos que, a
cada iteração, o número de dı́gitos exatos é duas vezes maior que o da anterior.
A alta velocidade de convergência do método de Newton é uma vantagem
essencial que o faz o mais usado. É claro que ele tem desvantagens também.
Por exemplo, o método exige uma aproximação inicial suficientemente boa. Isto
significa que é preciso muito trabalho para localizar bem a raiz ξ antes de aplicar
o método de Newton. Outro ponto fraco é a necessidade de se calcular a primeira
derivada de f em cada passo. Se f é dada experimentalmente, isto é, se os valores
de f podem ser calculados a cada passo, mas através de um experimento, então
o cálculo da derivada de f pode causar dificuldades.
O método de Newton é extremamente conveniente para a solução aproxi-
mada de equações algébricas. Neste caso, os cálculos de f (xn ) e f ′ (xn ), ne-
cessários para aplicar a fórmula para xn+1 , podem ser organizados efetivamente
da seguinte maneira. Seja

f (x) = a0 xm + a1 xm−1 + . . . + am .

O valor de f em um ponto dado z é calculado pela regra de Horner

f (z) = (. . . ((a0 z + a1 )z + a2 )z + . . . + am−1 )z + am


146 Capı́tulo3. Solução Numérica de Equações

através do algoritmo:
b0 := a0
para k = 1, . . . , m daça:
bk = bk−1 z + ak
e, obviamente, f (z) = bm . Observemos, agora, que, para qualquer z dado, existe
um polinômio g(x) de grau m − 1, tal que

(6) f (x) − f (z) = g(x)(x − z).

Esta relação implica que f ′ (z) = g(z). Acontece que os coeficientes de

g(x) = b0 xm−1 + b1 xm−2 + . . . + bm−1

são exatamente as quantidades {bk } obtidas através do algoritmo de Horner


para o polinômio f . De fato, comparando os coeficientes de xm−k nos dois
lados de (6), obtemos
ak = bk − zbk−1 ,
ou, equivalentemente, bk = bk−1 z + ak . Esta é exatamente a relação através da
qual são calculadas {bk } no algoritmo de Horner. Consequentemente, o cálculo
de f (z) e f ′ (z) = g(z) pode ser organizado no seguinte algoritmo:
b0 := a0 , c0 := a0
para k = 1, . . . , m − 1 faça:
bk = bk−1 z + ak
ck = ck−1 z + bk
bm = bm−1 z + am .
Depois desses cálculos, bm = f (z) e cm−1 = g(z) = f ′ (z). Logo, para z = xn
podemos calcular a próxima aproximação xn+1 pela fórmula
bm
xn+1 = xn − .
cm−1
Escrever e testar um programa computacional para solução de equações algébricas
por este método simples é um trabalho agradável.

IV. Método combinado.

Este é uma modificação do método de Newton onde o cálculo da iteração


xn é feito junto com o cálculo de uma outra aproximação tn , pelo método das
cordas, e que fica do outro lado da raiz ξ. Para a construção das sequências
{tn } e {xn } aplicamos as seguintes fórmulas, sujeito a f ′′ (x) > 0 em [a, b],

f (xn )
1) xn+1 = xn − , n = 0, 1, . . . ,
f ′ (xn )
3.2 Método da contração 147

f (tn )
2) tn+1 = tn − (xn − tn ).
f (xn ) − f (tn )

t0 t1 t2

x x2 x1 x0

Figura 19

Em 1) usamos o método de Newton, enquanto que em 2) aplicamos o método


das cordas para o intervalo [tn , xn ]. Pela construção, tn < ξ < xn (veja Figura
19). Geralmente, para a n−ésima aproximação da raiz ξ, é escolhido o ponto
médio do intervalo [tn , xn ]. Assim, em cada passo temos disponı́vel a estimativa
do erro
tn + xn |xn − tn |
|ξ − |≤ .
2 2
Esta é uma das vantagens deste método e ainda pode ser provado que sua ordem
de convergência é 2.
148 Capı́tulo3. Solução Numérica de Equações
Capı́tulo 4

Solução de Sistemas de
Equações

Consideremos o problema de resolver sistemas de n equações

fi (x1 , . . . , xn ) = 0, i = 1, . . . , n,

com n incógnitas x1 , . . . , xn . Comecemos com o caso mais simples, isto é, quando
fi (x1 , . . . , xn ) são funções lineares com relação a x1 , . . . , xn . Neste caso, escreve-
se o sistema acima da forma

a11 x1 + . . . + a1n xn = b1

a21 x1 + . . . + a2n xn = b2

(1) .......................................

an1 x1 + . . . + ann xn = bn ,
onde {aij } e {bi } são números dados. Vamos supor que são números reais. Se de-
notarmos por A a matriz {aij }ni,j=1 dos coeficientes e por b̄ o vetor (b1 , . . . , bn )T ,
o sistema (1) pode ser escrito na forma matricial como

(2) Ax̄ = b̄.

Denotemos por det A o determinante de A. É conhecido pela álgebra linear que


o sistema linear (2) tem uma única solução se, e somente se, det A 6= 0. Além
disso, a solução de (2) pela regra de Cramer, é dada explicitamente por
det Ak
xk = , k = 1, . . . , n,
det A
150 Capı́tulo4. Solução de Sistemas de Equações

onde Ak é a matriz obtida de A substituindo-se a k-ésima coluna pelo vetor


dos termos independentes b̄. À primeira vista, resolver estes sistemas lineares
não parece ser problema. Porém, não é bem assim. Observemos que a regra de
Cramer é extremamente inconveniente para se resolver numericamente sistemas
pois exigem um número enorme de operações para se calcular os determinantes.
Existem outros métodos numéricos para solução de sistemas lineares que são
muito melhores. Vejamos alguns deles.

4.1 Método de Gauss

Chamamos assim, o conhecido método do escalonamento. Nele, o sistema


inicial

Ax̄ = b̄,

reduz-se ao sistema da forma

Rx̄ = c̄,

que tem a mesma solução x̄ e onde R é uma matriz triangular superior, isto é,

r11 r12 ... r1n


 
 0 r22 ... r2n 
R =  .. .. ..  .
 
..
 . . . . 
0 0 ... rnn

A transformação dos coeficientes (A, b̄) para (R, c̄) é feita passo a passo, subtraindo-
se alguma linha da matriz multiplicada por algum número, de outra linha. O
algoritmo é o seguinte:
Se a11 6= 0, então, da i-ésima linha da matriz

a11 a12 ... a1n b1


 
 .. .. .. .. 
 . . . . 
 
(A, b̄) = 
 ai1 ai2 ... ain bi 
 .. .. .. .. 

 . . . . 
an1 an2 ... ann bn

subtraı́mos a primeira multiplicada por ai1 /a11 . Fazemos isso para i = 2, 3, . . . , n.


4.1 Método de Gauss 151

Assim, obtemos a matriz

a11 a12 a13 ... a1n b1


 
 
 
(1) (1) (1) (1) 
0 a22 a23 ... a2n b2 


 
 
 
(1) (1) (1) (1) (1) (1) 
(A , b̄ ) = 
 0 a32 a33 ... a3n b3  .
 
 
 .. .. .. .. .. 
. . . . . 
 

 
 
(1) (1) (1) (1)
0 an2 an3 ... ann bn

Esta operação é equivalente à eliminação de x1 da segunda, terceira, . . ., n-ésima


equações do sistema Ax̄ = b̄.
(1)
Se a22 6= 0, da i-ésima linha de (A(1) , b̄(1) ) subtraı́mos a segunda multipli-
(1) (1)
cada por ai2 /a22 , para i = 3, 4, . . . , n. Obtemos uma nova tabela (A(2) , b̄(2) ),
etc., até chegarmos à tabela

a11 a12 a13 . . . a1n b1


 
 
 
(1) (1) (1) (1) 
 0 a22 a23 . . . a2n b2 

 
 
 
(n−1) (n−1)  0 (2) (2) (2) 
(A , b̄ )= 0 a33 . . . a3n b3  .
 
 
 . .. .. .. .. 
 .
 . . . . . 

 
 
(n−1) (n−1)
0 0 0 ... ann bn

Vamos escrever as fórmulas pelas quais obtemos os elementos de (A(k) , b̄(k) )


a partir daqueles de (A(k−1) , b̄(k−1) ).
Temos
(k) (k) (k) (k−1) (k−1) (k−1)
(aik , . . . , ain , bi ) = (aik , . . . , ain , bi )

(k−1)
aik (k−1) (k−1) (k−1)
− (k−1)
(akk , . . . , akn , bk ).
akk

Consequentemente,
(k−1)
(k) (k−1) aik (k−1)
(1) aij = aij − a
(k−1) kj
, j = k, k + 1, . . . , n.
akk
152 Capı́tulo4. Solução de Sistemas de Equações

As fórmulas (1) são aplicadas sucessivamente para k = 1, 2, . . . , n − 1.


Este é o passo direto do algoritmo. Depois de executá-lo, obtemos o sistema

(2) A(n−1) x̄ = b̄(n−1) ,

que é equivalente ao sistema inicial Ax̄ = b̄, isto é, eles têm a mesma solução.
A matriz A(n−1) do novo sistema é triangular superior. Vamos denotar por R
a matriz A(n−1) e por c̄ o vetor b̄(n−1) . Deste modo, escrevendo (2) de forma
mais detalhada, temos

r11 x1 + r12 x2 + . . . + r1n xn = c1


r22 x2 + . . . + r2n xn = c2
.................. ... ...
rnn xn = cn

e, portanto, ele pode ser resolvido facilmente, determinando-se as incógnitas a


partir última até a primeira, isto é, xn , xn−1 , . . ., x1 , pelas fórmulas
n
X
ck − rkj xj
j=k+1
xk = , k = n, n − 1, . . . , 2, 1.
rkk

Este é o passo inverso do algoritmo.


(1) (n−1)
O método de Gauss pode ser aplicado se os elementos a11 , a22 , . . ., ann
são não-nulos. Eles são chamados pivôs. Se os pivôs são diferentes de zero, mas
alguns têm valor absoluto muito pequeno, isto pode causar erros enormes de ar-
redondamento nos cálculos computacionais, desde que, em cada passo, fazemos
uma divisão pelo correspondente pivô. Para evitar este problema usamos uma
modificação do método de Gauss chamada método de Gauss com escolha de
pivô ou método de Gauss com pivoteamento. Neste caso, no inı́cio de cada passo
escolhemos o maior elemento em valor absoluto da correspondente submatriz
como elemento pivô. Por exemplo, no primeiro passo achamos o elemento as1 ,
para o qual

(3) |asl | = max |aij |.


1≤i,j≤n

Este elemento asl faz o papel de pivô, isto é, da s-ésima equação determinamos
xl e eliminamos esta incógnita de todas as outras equações. Na prática, depois
de achar s e l, trocamos a s-ésima e a primeira linhas e a l-ésima e a primeira
colunas da matriz (A, b̄) e continuamos como no método comum: determinamos
4.1 Método de Gauss 153

(A(1) , b̄(1) ) pelas fórmulas acima. No segundo passo achamos o maior elemento
(1)
de {|aij |}ni,j=2 , etc.
(k−1)
É claro que se algum dos pivôs akk escolhidos desta maneira for igual
a zero, então det A = 0. Consequentemente, o método de Gauss com pivotea-
mento pode ser aplicado à toda matriz regular A, isto é, matriz com determi-
nante não-nulo.
Algumas vezes, aplicamos pivoteamento parcial. Neste caso, para o pivô é
escolhido o elemento com o maior módulo da primeira coluna da correspondente
submatriz: n o
(k−1) (k−1) (k−1)
|asl | := max |akk |, |ak+1,k |, . . . , |ank | .
(k−1)
É claro que se, neste caso, |asl | = 0, então det A = 0.

Método de Guass-Jordan. Uma outra modificação do método de Gauss


é conhecida como método de Guass-Jordan ou método de Jordan. Neste caso, no
k-ésimo passo eliminamos xk não somente da (k +1)-ésima, . . ., n-ésima equação
mas também da primeira, segunda, até a equação (k − 1). Deste modo a matriz
inicial A transforma-se em uma matriz diagonal D e o sistema transformado
toma a forma
dkk xk = ck , k = 1, . . . , n,

que pode ser resolvido imediatamente:


dkk
xk = , k = 1, . . . , n .
ck
O método de Gauss-Jordan é aplicado quando trabalhamos com máquinas com
pouca memória operacional para resolvermos grandes sistemas, pois este método
precisa armazenar menos dados.

Solução do problema triplo pelo método de Gauss. A solução de


um sistema linear Ax̄ = b̄ está relacionado a outros dois problemas, a saber,
determinar a matriz inversa de A e o determinante de A. A esses três proble-
mas considerados em conjunto, chamamos problema triplo. Com pouco esforço
podemos resolver os dois problemas adicionais, isto é, determinar A−1 e det A
se já temos resolvido, pelo método de Gauss, o sistema linear Ax̄ = b̄.
O método de Gauss transforma a matriz A consecutivamente em A(1) , A(2) ,
. . ., A(n−1) = R, subtraindo-se de uma linha outra multiplicada por um número.
Esta operação não muda o determinante. Consequentemente, det A = det R.
(1) (n−1)
Desde que R é uma matriz triangular com elementos a11 , a22 , . . . , ann na
diagonal, então
(1)
det A = det R = a11 a22 . . . a(n−1)
nn .
154 Capı́tulo4. Solução de Sistemas de Equações

Deste modo, resolvendo o sistema Ax̄ = b̄ pelo método de Gauss, obtemos como
resultado adicional o determinante de A.
Agora, achemos os elementos de A−1 . Seja

A−1 = {yij }ni,j=1


ȳm = (y1m , y2m , . . . , ynm )T (m − ésima coluna de A−1 )
ēm = (0, . . . , 1, . . . , 0)T (1 em m-ésima posição ).

Desde que A A−1 = E, então

(4) Aȳm = ēm .

Consequentemente, para determinar os elementos da m-ésima coluna de A−1 ,


temos que resolver o sistema (4). Se já resolvemos o sistema Ax̄ = b̄ pelo
método de Gauss, temos a matriz R, a transformada de A. Logo, para resolver
(4) pelo método de Gauss, não precisamos executar o primeiro processo, isto
é, o escolanomento. Basta achar somente as transformações de ēm e executar
o segundo processo que exige muito menos trabalho. Fazendo isto para m =
1, 2, . . . , n, obtemos todos os elementos de A−1 .

4.2 Decomposição triangular. Método de Cho-


lesky
Se a matriz W é triangular o correspondente sistema

W x̄ = c̄

pode ser facilmente resolvido determinando-se consecutivamente as incógnitas


x1 , . . . , xn pelas equações do sistema. Isto nos permite decompor a matriz A de
um sistema linear dado em produto de duas matrizes triangulares da forma

(1) A = LR,

onde L é triangular inferior, isto é, lij = 0 para todo i < j e R é triangular
superior, isto é, rij = 0 para todo j < i. De fato, se A pode ser representada
desta maneira, a solução do sistema

Ax̄ = LRx̄ = b̄ ,

reduz-se à solução de dois sistemas mais simples

Lȳ = b̄ e Rx̄ = ȳ.


4.2 Decomposição triangular. Método de Cholesky 155

Naturalmente, isto pode ser feito se os elementos diagonais de R e de L


são diferentes de zero. Mas, isto é equivalente ao det A 6= 0, pois det A =
det R. det L = r11 . . . rnn l11 . . . lnn .
Todo sistema linear com determinante não-nulo pode ser reduzido a um
sistema equivalente com matriz da forma LR. Além disso, isto pode ser feito
usando-se o método de Gauss com pivoteamento parcial. Apresentemos aqui
somente a demonstração para um caso particular. Antes disso, recordemos
algumas noções de álgebra linear.
As seguintes operações de matrizes são chamadas elementares:
1. Permuta entre duas linhas ou duas colunas.
2. Multiplicação de todos os elementos de uma linha (coluna) por algum
número não-nulo.
3. Soma dos elementos de uma linha (coluna) com os correspondentes ele-
mentos de outra linha (coluna) multiplicada por algum número.
Duas matrizes são chamadas equivalentes se são obtidas uma da outra atra-
vez de um número finito de operações elementares.
É fácil observar que toda operação elementar é equivalente à multiplicação
da matriz dada por uma matriz não-singular. Além disso, se a operação ocorre
nas linhas (colunas) da matriz A, então o fator deve ficar à esquerda (direita)
de A. De outra forma, este fator (matriz) é obtido pela matriz identidade I
executando-se a mesma operação.

Exemplo: Ã = ẼA,

a11 a12 a13 a11 a12 a13 1 0 0


     

A = a21
 a22 a23 , Ã = a31
  a32  ˜
a33 , I = 0
 0 1.
a31 a32 a33 a21 a22 a23 0 1 0

Seja Ax̄ = b̄ um sistema arbitrário com determinante não-nulo. Suponha-


(1) (n−1)
mos, primeiramente, que todos os elementos principais a11 , a22 , . . . , ann , ob-
tidos pelo método de Gauss sem pivoteamento são não-nulos. Então, este esca-
lonamento transforma a matriz (A, b̄) em (U, c̄), onde U = A(n−1) é triangular
(1) (n−1)
superior com elementos a11 , a22 , . . . , ann na diagonal principal e c̄ = b̄(n−1) .
Como já observamos, esta transformação é feita em n − 1 passos

(A, b̄) → (A(1) , b̄(1) ) → (A(2) , b̄(2) ) → . . . → (A(n−1) , b̄(n−1) ) = (R, c̄),

onde a matriz A(k) é obtida de A(k−1) pelas operações: para i = k + 1, . . . , n,


à i-ésima linha de A(k−1) somamos a k-ésima linha de A(k−1) multiplicada pelo
(k−1) (k−1)
número −sik := −aik /akk . Essas são transformações elementares e elas
156 Capı́tulo4. Solução de Sistemas de Equações

podem ser representadas na forma matricial da seguinte maneira:

A(k) = Sn,k Sn−1,k . . . Sk+1,k A(k−1) ,

onde Si,k é a matriz obtida da matriz identidade I através da mesma trans-


formação, isto é,
k i

↓ ↓

1 ... 0 ... 0 ... 0


 
 .. ..
.
.. .. .. 
. . . .
 
0 ... 1 ... 0 ... 0 ← k
. .. .. .. .. 
Sik :=  .. . . . . .
 
 
0 ... −sik ... 1 ... 0  ← i
 .. .. .. .. .. 

. . . . .
0 ... 0 ... 0 ... 1

Tomando Sk := Sn,k Sn−1,k . . . Sk+1,k , então A(k) = Sk A(k−1) . Notemos que Sk


tem a forma
1 ... 0 ... 0
 
. . .
.. .
.. 
. 
 
0 ... 1 . . . 0 
 
 0 . . . −s ... 0
Sk =  k+1,k .
 0 . . . −sk+2,k . . . 0 
 
 .. .. .. 
 
. . .
0 ... −sn,k ... 1

Finalmente, obtemos

U = A(n−1) = Sn−1 A(n−2) = . . . = Sn−1 Sn−2 . . . S1 A.

Denotemos por L−1 a matriz Sn−1 Sn−2 . . . S1 . Temos


 1 0 ... 0
 −s21 1 ... 0
 
L−1 =  −s31 −s32 ... 0 .

 . .. .. 
 .. . .
−sn1 −sn2 ... 1
4.2 Decomposição triangular. Método de Cholesky 157

É fácil verificar que a matriz inversa de L−1 é


 1 0 ... 0
 s21 1 ... 0
 
s s ... 0
L =  31 32 .
 . . .. 
 .. .. .
sn1 sn2 ... 1
Consequentemente, R = L−1 A e, assim,

LR = A .
(1) (n−1)
Usamos aqui que os elementos principais a11 , a22 , . . . , ann são não-nulos.
A demonstração no caso geral é mais complicada e nós a omitiremos.
Consideremos, agora, uma classe de matrizes para as quais o método de
Gauss sem pivoteamento pode ser executado, isto é, para as quais os elemen-
(1) (n−1)
tos principais a11 , a22 , . . . , ann são não-nulos. Pela demonstração fornecida
segue que tais matrizes podem ser decompostas em produto de duas matrizes
triangulares.

Definição 15 Dizemos que a matriz real A é positiva definida se


a) ela é simétrica, isto é, aij = aji para todo i, j;
b) (Ax̄, x̄) ≥ 0 para todo x̄ e (Ax̄, x̄) = 0 se, e somente se, x̄ = 0̄.

Se A é positiva definida, então det A 6= 0. De fato, suponhamos o contrário.


Então, existe um vetor não-nulo x̄ tal que Ax̄ = ō pois todo sistema homogênio
com determinante não-nulo possui uma solução não-nula. Segue que (Ax̄, x̄) =
(ō, x̄) = 0. Contradição com o fato de A ser positiva definida.
Se A é positiva definida, então det A 6= 0 e, consequentemente, A−1 existe.
Além disso, A−1 é positiva definida também. Vamos demonstrar isto.
Seja ȳ 6= ō. Portanto, x̄ := A−1 ȳ 6= ō. Temos

(A−1 ȳ, ȳ) = (x̄, ȳ) = (x̄, Ax̄) = (Ax̄, x̄) > 0,

o que demonstra que A−1 é positiva definida.


Recordemos também, que se uma matriz A é positiva definida, então todos os
seus menores principais são positivos. Isto é consequência do conhecido critério
de Sylvester. Daremos um esboço da demonstração deste fato. Primeiramente ,
demonstraremos que toda submatriz ”central”, isto é, toda submatriz da forma
ai1 i1 . . . ai1 ik
 
 . .. 
Ak :=  .. . 
aik i1 ... aik ik
158 Capı́tulo4. Solução de Sistemas de Equações

é positiva definida. Seja ȳ = (yi1 , . . . , yik ) um vetor qualquer não-nulo de IRk .


Seja x̄ = (x1 , . . . , xn ) o vetor do IRn , construido a partir de ȳ, completado-se as
demais coordenadas com zeros, isto é, xij = yij para j = 1, . . . , k e xi = 0 para
i 6= i1 , . . . , ik . Obviamente

(Ak ȳ, ȳ) = (Ax̄, x̄) .

Consequentemente, (Ak ȳ, ȳ) > 0, se ȳ 6= ō e A é positiva definida. Isto mostra


que Ak é também positiva definida. Basta mostra que, para toda matriz A
positiva definida, temos det A > 0. Isto implicaria que det Ak > 0 para todo
menor principal Ak . Usaremos indução com relação a n. Para matrizes 1 × 1
a afirmação é óbvia. Suponhamos que toda matriz positiva definida de ordem
n − 1 tem determinante positivo. Como já mostramos, A−1 é também positiva
definida. Sejam αij os elementos de A−1 . Sabemos pela álgebra linear que

Aij
αij = ,
det A
onde Aij é o elemento da matriz adjunta correspondente ao elemento aij . Em
particular

∆11
(2) α11 = .
det A
Mas, ∆11 é o menor principal
 
a22 ... a2n
 .. .. 
det  . .  ,
an2 ... ann

que é positivo de acordo com a hipótese da indução. Além disso, a hipótese de


indução implica em α11 > 0. Assim, (2) mostra que det A > 0 e a afirmação
está demonstrada.

Teorema 44 Se A é uma matriz positiva definida, ela pode ser decomposta de


maneira única em
A = LLT ,

onde L é uma matriz triangular inferior.

A demonstração é construtiva. Ela mostra o método de decomposição. O


método foi oferecido por Cholesky e é chamado método de Cholesky. Em alguns
livros é chamado método da raiz quadrada.
4.2 Decomposição triangular. Método de Cholesky 159

Denotemos por {αij } os elementos de L que são determinados pela igualdade

α11 0 ... 0 α11 α21 . . . αn1 a11 . . . a1n


     
 α21 α22 . . . 0    0 α22 . . . αn2 
   a21 . . . a2n 
 .. .. ..  .  .. .. ..  =  .. ..  .
  
.. ..
 . . . .   . . . .   . . 
αn1 αn2 . . . αnn 0 0 . . . αnn an1 . . . ann
2
Temos α11 = a11 . Desde que a11 > 0, então

α11 = a11

e α11 é um número real positivo. Depois

a1j = α11 αj1 , j = 2, . . . , n,

e, daqui, determinamos todos os elementos restantes {αj1 } da primeira coluna


de L:
a1j
αj1 = , j = 2, . . . , n.
α11
Analogamente, determinamos os elementos da segunda, terceira, . . ., n-ésima
coluna de L, sucessivamente. Vamos escrever as fórmulas gerais. Temos
2 2 2
akk = αk1 + αk2 + . . . + αkk .

Daqui,
¡ 2 2
¢1/2
(3) αkk = akk − αk1 − . . . − αkk−1 .

Pelas relações

akj = αk1 αj1 + αk2 αj2 + . . . + αkk αjk , j = k + 1, . . . , n,

obtemos
k−1
X
akj − αki αji
i=1
(4) αjk = , j = k + 1, . . . , n.
αkk

É claro que este método só pode ser aplicado quando as expressões das quais
calculamos a raiz quadrada em (3), são não-negativas. Mostremos que, sob essas
condições para A, são positivas. Vamos denotar por Ak a submatriz cetral
 
a11 . . . a1k
 . .. 
Ak =  .. . .
ak1 ... akk
160 Capı́tulo4. Solução de Sistemas de Equações

Desde que    
α11 ... 0 α11 ... αk1
 .. ..   .. .. 
Ak =  . .   . . ,
αk1 ... αkk 0 ... αkk
então
2 2
(5) det Ak = α11 . . . αkk .

Desde que det Ak > 0, pois todos os menores principais de A são positivos,
2 2 2
então α11 . . . αkk > 0 para todo k = 1, 2, . . . , n. Mas, α11 = a11 > 0. Então,
2 2 2
α11 α22 >0 ⇒ α22 > 0,

2 2 2 2
α11 α22 α33 >0 ⇒ α33 > 0,

.. .. ..
. . .

2 2 2 2
α11 α22 . . . αnn >0 ⇒ αnn > 0.
2
Notemos que aqui αkk é exatamente a quantidade que está sob o radical em (3).
Consequentemente, αkk é um número real positivo.

4.3 Normas de matrizes. Convergência de série


matricial
Consideremos o conjunto An de todas as matrizes reais
n
A = {aij }i,j=1

de dimensão n×n. Vamos introduzir em An as operações de adição de matrizes


e de multiplicação de matriz por um número c da seguinte maneira:
Se A = {aij } e B = {bij }, então

A+B := {aij + bij },


cA := {caij }.

Denotemos por O a matriz nula cujos elementos são 0 e, por I, a matriz identi-
dade. Com essas operações An torna-se um espaço linear. Notemos que em An
pode ser introduzida a operação multiplicação de matriz por matriz:

AB := {(āi , b̄j )}, āi = (ai1 , . . . , ain ), b̄j = (b1j , . . . , bnj )T .


4.3 Normas de matrizes. Convergência de série matricial 161

O produto AB é também um elemento de An . Agora, introduziremos a noção


de ”norma”em An .
As matrizes de An são tabelas de n2 números, que podem ser consideradas
como vetores de dimensão n2 . As operações de adição e de multiplicação por
um número são definidas exatamente como para vetores. Por isto, todas as
condições da definição de norma de vetor têm que participar da definição de
norma de matriz. Além disso, vamos adicionar mais uma condição que diz
respeito à operação de matriz por matriz.

Definição 16 Dizemos que em An está definida uma norma, k · k, se a toda


A ∈ An corresponde um determinado número kAk, isto é, a norma de A que
satisfaz às seguintes condições :

1) kAk ≥ 0; kAk = 0 ⇐⇒ A = O.
2) kλAk = |λ| kAk para todo número λ.
3) kA + Bk ≤ kAk + kBk.
4) kABk ≤ kAk kBk.

Será que existem correspondências A → kAk que satisfazem às condições


acima? Acontece que toda norma vetorial determina uma correspondente norma
matricial. Assim, vale a seguinte afirmação:

Teorema 45 Seja k · k uma norma vetorial em IRn . Então, a relação

(1) kAk := sup kAx̄k


kx̄k=1

determina uma norma em An .

Demonstração. Verifiquemos que a relação A → kAk, definida por (1),


satisfaz todas as condições da definição de norma.
1) Evidentemente kAk ≥ 0 é supremo dos números não-negativos kAx̄k.
Além disso, kOk = 0. Basta verificar que a igualdade kAk = 0 implica em
A = O. De fato, vamos supor que existe uma matriz A ∈ An para a qual
kAk = 0, com A 6= O. Portanto, a igualdade AI = A implica que pelo menos
um dos vetores Aē1 , Aē2 , . . ., Aēn , que são as colunas de A, é diferente de 0̄.
Aqui, ēk denota o k-ésimo vetor básico, isto é,

ēk := (0, . . . , 1, . . . , 0), com 1 na k − ésima posição.


162 Capı́tulo4. Solução de Sistemas de Equações

Seja, por exemplo, Aēk 6= 0̄. Então, Aξ¯ 6= 0̄ para ξ¯ := ēk /kēk k. Mas, kξk
¯ = 1 e,
portanto,
kAk ≥ kAξk ¯ > 0,

o que contradiz à hipótese de que kAk = 0.


2) Usando a correspondente propriedade de norma vetorial, obtemos

kλAk = sup kλAx̄k = sup {|λ| kAx̄k} = |λ| kAk.


kx̄k=1 kx̄k=1

3) Desde que a norma vetorial satisfaz à desigualdade triangular, então

kA + Bk = sup k(A + B)x̄k = sup kAx̄ + B x̄k


kx̄k=1 kx̄k=1

≤ sup {kAx̄k + kB x̄k} ≤ sup kAx̄k + sup kB x̄k


kx̄k=1 kx̄k=1 kx̄k=1

= kAk + kBk.

4) Na demonstração da propriedade 4) usaremos a seguinte desigualdade

(2) kAx̄k ≤ kAk kx̄k,

que diz respeito à quantidade (1). Para kx̄k = 1, temos

kAk = sup kAȳk ≥ kAx̄k


kȳk=1

e, portanto, (2) é verdadeira. A desigualdade obviamente vale para x̄ = 0̄


também. Agora, seja kx̄k =
6 0̄. Então o vetor x̄/kx̄k tem norma 1 e, de acordo
com o que acabamos de demonstrar,
° °
° x̄ °
°A
° kx̄k ° ≤ kAk,
°

de onde segue kAx̄k ≤ kAkkx̄k, isto é, (2).


Agora, estamos prontos para demonstrar a propriedade 4). Temos

kABk = sup kAB x̄k = sup kA.(B x̄)k


kx̄k=1 kx̄k=1

≤ sup {kAkkB x̄k} (de acordo com (2))


kx̄k=1

= kAk. sup kB x̄k = kAkkBk.


kx̄k=1
4.3 Normas de matrizes. Convergência de série matricial 163

A demonstração do teorema está completa.


A desigualdade (2) representa a chamada condição de compatibilidade entre
as normas vetorial e matricial.

Definição 17 Dizemos que a norma vetorial kx̄k e a norma matricial ν(A) são
compatı́veis, se
kAx̄k ≤ ν(A)kx̄k para todo x̄ ∈ IRn e para toda A ∈ An .
Podem existir muitas normas matriciais que são compatı́veis com uma dada
norma vetorial. A menor de todas essas normas é chamada subordinada à norma
vetorial, isto é, ν(A) é subordinadaa k · k se
ν(A) ≤ µ(A)
para toda A ∈ An e para qualquer outra norma µ(A) que é compatı́vel com k · k.
É verdadeira a seguinte
Proposição 1 Seja k·k uma norma arbitrária dada. Então, a norma matricial
definida em An pela igualdade
kAk := sup kAx̄k
kx̄k=1

é subordinada à norma vetorial.

Demonstração. Seja ν(·) uma outra norma arbitrária que é compatı́vel com
a norma vetorial k · k. Então,
kAk = sup kAx̄k = kAx̄0 k (para algum x̄0 com norma 1)
kx̄k=1

≤ ν(A)kx̄0 k ( pela compatibilidade de ν(·))

= ν(A) ( pois kx̄0 k = 1).


Já tivemos a oportunidade de mencionar que as normas mais frequentemente
usadas são:
kx̄k∞ := max |xi | (norma unfinita),
1≤i≤n

n
X
kx̄k1 := |xi | (norma um),
i=1
( n ) 12
X
kx̄k2 := x2i (norma Euclidiana).
i=1
164 Capı́tulo4. Solução de Sistemas de Equações

Usando a proposição demonstrada acima, podemos determinar as corresponden-


tes normas matriciais subordinadas, as quais denotaremos pelos mesmos ı́ndices
∞, 1 e 2.
¯ ¯
¯ n
¯X ¯
¯
kAk∞ := sup kAx̄k∞ = sup max ¯ ¯ aij xj ¯¯
kx̄k∞ =1 kx̄k∞ =1 1≤i≤n ¯ j=1 ¯
n
X
= max |aij |,
1≤i≤n
j=1
¯ ¯
n ¯X
¯ n
¯
X ¯
kAk1 := sup kAx̄k1 = sup ¯
¯ a x
ij j ¯
¯
kx̄k1 =1 kx̄k1 =1 i=1 ¯ j=1 ¯
n n n
( )
X X X
= sup |aij | |xj | = max |aij |,
kx̄k1 =1 j=1 1≤j≤n
i=1 i=1
p
kAk2 := sup kAx̄k2 = sup (Ax̄, Ax̄)
kx̄k2 =1 kx̄k2 =1
q
= sup (AT Ax̄, x̄).
kx̄k2 =1

Desde que a matriz AT A é simétrica, todos os seus autovalores, λ1 , . . . , λn são


positivos. Seja λ o maior deles e seja ē o correspondente autovetor normalizado
pela condição kēk2 = 1. Então, (AT Aē, ē) = (λē, ē) = λ kēk22 = λ e, pela
igualdade obtida acima, segue
q
1
kAk2 ≥ (AT Aē, ē) = λ 2 .

Por outro lado, se ē1 , . . . , ēn é um sistema ortonormal de autovetores de AT A


correspondentes a λ1 , . . . , λn , então, cada vetor x̄ de IRn pode ser unicamente
representado por
x̄ = c1 ē1 + . . . + cn ēn .
Além disso, kx̄k2 = c21 + . . . + c2n . Consequentemente, se kx̄k2 = 1, então
n n
à !
X X
T T
(A Ax̄, x̄) = A A ci ēi , ci ēi
i=1 i=1
à n n
! n
X X X
= ci λi ēi , ci ēi = λi c2i ≤ λ kx̄k22 = λ.
i=1 i=1 i=1

1
Esta desigualdade e a obtida ateriormente mostram que kAk2 = λ 2 .
4.3 Normas de matrizes. Convergência de série matricial 165

Cada norma introduzida em An gera distância em An e, portanto, podemos


discutir a questão de convergência de sequências de matrizes com relação a esta
distância. Dizemos que a sequência de matrizes A1 , A2 , . . . é convergente para
a matriz A se kAk − Ak → 0 quando k → ∞, para qualquer norma k · k em An .
Desde que as matrizes podem ser consideradas como vetores de dimensão n2 e a
norma matricial satisfaz todas as 3 condições exigidas pela norma vetorial, então
2
a equivalência das normas vetoriais em IRn implica que duas normas matriciais
em An são equivalentes. Consequentemente, se uma sequência de matrizes é
convergente com relação a uma norma em An , ela é convergente com relação a
qualquer outra norma e, especialmente, com relação a norma unfinita. Portanto,
a convergência de sequências de matrizes pode ser definida da seguinte maneira
equivalente:
n o
(k)
Definição 18 Dizemos que a sequência de matrizes Ak = aij , k = 0, 1, . . .
é convergente para A = {aij } se
(k)
aij → aij para k → ∞.

Em outras palavras, Ak → A se tivermos convergência por elementos (coorde-


nadas).

Sabendo o que é convergência de uma sequência de matrizes, por analogia


com as séries numéricas podemos definir convergência de séries matriciais.

Definição 19 Dizemos que a série matricial

(3) a0 I + a1 A + a2 A2 + a3 A3 + . . .

é convergente, se for convergente a sequência de suas somas parciais

Sm (A) := a0 I + a1 A + . . . + am Am , m = 0, 1, . . . .

O limite S(A) de Sm (A) quando m → ∞ é chamado soma da série matricial


(3). Aqui a0 , a1 , . . . são números reais e Ak := AA . . . A (k vezes).

A convergência da série matricial está fortemente relacionada com a con-


vergência da série numérica

(4) a0 + a1 t + a2 t2 + . . . .

Por Sm (t) e S(t), denotaremos, respectivamente, as somas parciais e a soma


desta série numérica, quando ela é convergente.
166 Capı́tulo4. Solução de Sistemas de Equações

Teorema 46 Seja R o raio de convergência da série numérica (4). Se |λ| < R


para todo autovalor λ de A, então a série matricial (3) para A é convergente.
Se a série numérica (4) é divergente para algum autovalor λ de A, então a série
matricial (3) para A é divergente.

Demonstração. Se C ∈ An e det C 6= 0, então a trasformação

A → C −1 AC

é chamada transformação de semelhança. Sabe se que a transformação de se-


melhança preserva os autovalores de A. Isto segue do fato dos polinômios ca-
racterı́sticos de A e de C −1 AC serem os mesmos:

det(C −1 AC − λI) = det(C −1 AC − λC −1 IC)


= det C −1 (A − λI)C
= det C −1 det(A − λI) det C
= det(A − λI).

Além disso, podemos observar que se a série matricial (3) para A é convergente,
ela também é convergente para C −1 AC e vice versa. De fato,

Sm (A) → S(A) ⇐⇒ Sm (C −1 AC) → C −1 S(A)C.

Desta forma, o teorema estará demonstrado se provarmos a afirmação para


alguma transformação de semelhança especial de A. Para este propósito, vamos
supor, daqui por diante, que a matriz A é dada na forma normal de Jordan. Da
álgebra linear, sabemos que toda matriz A ∈ An pode ser transformada, por uma
transformação de semelhança, à forma normal de Jordan. Então, seja a matriz
A com autovalores λ1 , . . . , λk com multiplicidades ν1 , . . . , νk , respectivamente.
Assim, A é representada na forma normal de Jordan do seguinte modo:
 
B1
 
B2 O
 
 
 
 
 
A=
 .. ,

 . 
O
 
 
 
 
 
Bk
4.3 Normas de matrizes. Convergência de série matricial 167

onde Bi são os blocos de Jordan com dimensões νi × νi correspondentes aos


autovalores λi , isto é,
λ 1 0 ... 0 0
 
0 λ 1 ... 0 0
. .. .. .... 
B =  .. . . . . .
 
 
0 0 0 ... λ 1
0 0 0 ... 0 λ
Aqui, como mais adiante, vamos omitir o ı́ndice i para facilitar as considerações.
É claro que se p(t) é um polinômio algébrico, então
′ (ν−1)
p′′ (λ)
p(λ) p 1! (λ)
. . . p (ν−1)!
(λ) 

2!
 
 
p′ (λ) p(ν−2) (λ) 
 0 p(λ) . . .

 1! (ν−2)!  
p(B) =   .
 .. .. .. .. 
 . . . .


 
 
0 0 0 ... p(λ)
Este fato pode ser deomnstrado por indução. Suponha que a afirmação é verda-
deira para todo pN ∈ πN . Todo polinômio pN +1 de πN +1 pode ser representado
da forma pN +1 (t) = pN (t)t + c, onde c é uma constante. Então,
(j) (j) (j−1)
pN +1 (λ) = pN (λ) λ + j pN (λ)

e, portanto,
(j) (j−1)
1 (j) p (λ) p (λ)
p (λ) = N λ+ N 1.
j! N +1 j! (j − 1)!
Esta é exatamente a fórmula para o cálculo do elemento pN +1 (B) baseada na
relação
pN +1 (B) = pN (B) B + c I
e na hipótese da indução .
Em particular, para p(t) = Sm (t), temos:
′ (ν−1)
Sm (λ) Sm (λ)
Sm (λ) ...
 
1! (ν−1)!
 
(ν−2)
 
Sm (λ)
 0 Sm (λ) . . .
 
 (ν−2)! 

Sm (B) =   .
 .. .. .. .. 
 . . . .


 
 
0 0 ... Sm (λ)
168 Capı́tulo4. Solução de Sistemas de Equações

Então, Sm (A) consiste dos blocos Sm (Bi ) localizados na diagonal e os demais


elementos de Sm (A) são nulos. É claro que se |λ| < R, então as sequências
′ (j)
númericas Sm (λ), Sm (λ), . . ., Sm (λ) são convergentes. Logo, se |λi | < R para
todo autovalor λi de A, então os elementos de Sm (Bi ) e, daı́, de Sm (A), são
convergentes. Isto significa que a série matricial (3) é convergente. Vice versa,
se a série númerica (4), para pelo menos um autovalor λ, é divergente, então
a sequência Sm (λ) é divergente e, portanto, a série matricial (3) é divergente
também. O teorema está demonstrado.
Uma importante e imediata consequência deste teorema é o seguinte co-
rolário:

Corolário 7 A progressão geométrica matricial

(5) I + A + A2 + . . .

é convergente se, e somente se, os módulos de todos os autovalores de A são


menores do que 1.

A afirmação segue pelo conhecido fato de o raio de convergência da pro-


gressão geométrica numérica

(6) 1 + t + t2 + . . .

ser igual a 1. Mais precisamente, a série (6) é convergente somente para |t| < 1.
Forneceremos mais uma consequência do Teorema 2.

Lema 13 A progressão geométrica matrical (5) é convergente se, e somente se,


Am → O para m → ∞.

Demonstração. Aqui também podemos supor que A está na forma normal


de Jordan. Então, Am consiste de blocos da forma
 m ¡m¢ m−1
λ 1 λ ... ...

 0
 . λm ... ... 
. 
B m =  .. .. ··· ··· .
 
 
 0 0 ... ... 
0 0 . . . λm

Seja a progressão geométrica matrical (5) convergente. Pelo Corolário 3, |λi | < 1
para todo autovalor λi de A. Mas se |λ| < 1, então λm → 0. Portanto, B m → O
4.3 Normas de matrizes. Convergência de série matricial 169

e consequentemente Am → O. Vice versa, se Am 6→ O, então pelo menos um


elemento m
¡ ¢ m−j
j λ de B m não converge para 0. Isto pode acontecer somente
quando |λ| ≥ 1. Deste fato, e pelo Corolário 3, a progressão geométrica matrical
é divergente.
Os autovalores de uma matriz de An são raı́zes de polinômios algébricos de
grau n. O cálculo destas raı́zes exige a solução de uma equação algébrica, o
que, como já sabemos, não é trabalho fácil. Por isto é conveniente saber alguns
métodos simples para o cálculo dos limites superiores de |λi |. Isto garantiria
algumas condições simples para convergência de uma série matricical. Fornece-
remos uma estimativa para |λi | através da norma de A.

Lema 14 Toda norma de A é maior ou igual ao módulo de qualquer autovalor


de A. Em outras palavras,

|λi | ≤ kAk para toda norma.

Demonstração. Seja k · k uma norma arbitrária em An . Se k · k é com-


patı́velcom alguma norma vetorial, denotada por k · k, a afirmação segue ime-
diatamente. Seja x̄ um autovetor, correspondente a λi . Então Ax̄ = λi x̄ e
assim
|λi | kx̄k = kλi x̄k = kAx̄k ≤ kAk.kx̄k ⇒ |λi | ≤ kAk.
Forneceremos uma demonstração do lema para qualquer norma matricial k · k.
A
Para este propósito vamos considerar a matriz B := kAk+ε , onde ε é um número
positivo suficientemente pequeno. Obviamente kBk < 1. Pela propriedade 4 de
norma de matrizes,

kB m k ≤ kBkm → 0 para m → ∞.

Assim B m → O e pelo Lema 4, a progressão geométrica matricial

I + B + B2 + . . .

é convergente. Então, pelo Teorema 2 (ou pelo Corolário 3), |µ| < 1 para todo
autovalor µ de B. Mas os autovalores {µi } de B estão relacionados a {λi } pela
igualdade
λi
µi = , i = 1, . . . , m.
kAk + ε
Consequentemente,
¯ ¯
¯ λi ¯
¯ kAk + ε ¯ < 1 ⇒ |λi | < kAk + ε ⇒ |λi | ≤ kAk .
¯ ¯

A afirmação esta demonstrada.


170 Capı́tulo4. Solução de Sistemas de Equações

Corolário 8 Se kAk < 1 para alguma norma matricial, então a progressão


geométrica matricial I + A + A2 + . . . é convergente.

De fato, kAk < 1 implica |λ| < 1 para todo autovalor de A. Basta aplicar o
Corolário 3.

Corolário 9 Se kAk < 1, então Am → O quando m → ∞.

Lema 15 Se os módulos de todos os autovalores {λi } de A são menores do


que 1, então I − A tem inversa e

(I − A)−1 = I + A + A2 + . . . .

Demonstração. Pela igualdade

(I − A)(I + A + . . . + Am ) = I − Am+1 ,

fazendo m convergir para infinito e usando o Teorema 2, obtemos

(I − A) S(A) = I,

onde
S(A) = I + A + A2 + . . . .

Portanto, I − A tem inversa e (I − A)−1 = S(A).

4.4 Métodos iterativos para solução de sistemas


lineares
Os métodos para a solução aproximada de sistemas lineares são, princi-
palmente, os iterativos. Nesses métodos, escolhemos uma aproximação inicial
(0) (0)
apropriada x̄0 = (x1 , . . . , xn ) da solução x̄ = (x1 , . . ., xn ) e, por uma fórmula
do tipo
x̄k+1 = Bk x̄k + d¯k , k = 0, 1, 2, 3, . . .

construı́mos a sequência {x̄k } de pontos do IRn , que converge para a solução x̄.
Consideremos alguns métodos iterativos básicos para a solução de sistemas
lineares.
4.4 Métodos iterativos para solução de sistemas lineares 171

Método da iteração simples. Seja Ax̄ = b̄ um dado sistema. Transfor-


memos este sistema em outro equivalente

x̄ = x̄ − C{Ax̄ − b̄}

através de uma matriz regular C. Construı́mos o processo iterativo

x̄k+1 = x̄k − C{Ax̄k − b̄}, k = 0, 1, . . .

para alguma aproximação inicial x̄0 . A fórmula acima pode ser escrita da forma

¯
x̄k+1 = (E − CA)x̄k + C b̄ =: B x̄k + d.

Teorema 47 Para qualquer escolha da aproximação inicial x̄0 , o processo ite-


rativo
x̄k+1 = B x̄k + d¯
é convergente se, e somente se, os módulos de todos os autovalores da matriz B
são menores do que 1.

Demonstração. Temos

x̄k+1 = B x̄k + d¯ = BB x̄k−1 + B d¯ + d¯ = · · ·

¯
= B k+1 x̄0 + (B k + B k−1 + . . . + I)d.

Sujeito às restrições para a matriz B, a série entre parênteses é convergente,


B k+1 → O, de acordo com o Lema 4 da aula anterior. Consequentemente, a
−1 ¯
sequência x̄k tem limite quando k → ∞ e este limite é (I − B) d. Podemos
¯
verificar que este limite é solução da equação x̄ = B x̄ + d, isto é, solução do
nosso sistema. Notemos que se a série I + B + · · · não é convergente, a sequência
{x̄k } também pode ser divergente, por exemplo quando x̄0 = ō. O teorema está
demonstrado.

Corolário 10 Se kBk < 1 para alguma norma k.k, então, para qualquer apro-
ximação inicial x̄0 , o processo iterativo é convergente.

A afirmação segue imediatamente do teorema, levando em consideração que


toda norma de uma matriz é maior do que o módulo de qualquer um de seus
autovalores. Neste caso, é possivel até obter uma estimativa do erro. De fato,
temos
kx̄k − x̄k = kB x̄k−1 − B x̄k ≤ kBkkx̄k−1 − x̄k,
172 Capı́tulo4. Solução de Sistemas de Equações

de onde segue
kx̄k − x̄k ≤ kBkk kx̄0 − x̄k.

Consequentemente, para kBk < 1 a velocidade de convergência é a da progressão


geométrica.
Para fórmulas iterativas da forma

(1) x̄k+1 = (E − CA)x̄k + C b̄


n
podemos impôr os critérios de convergência diretamente na matriz A = (aij )i,j=1 .
Vamos considerar o caso especial de (1) quando C é a matriz diagonal com ele-
mentos diagonais 1/aii ,
½ ¾
1 1
C = diag ,...,
a11 ann
−1
= diag {a11 , . . . , ann } .

Neste caso, o sistema Ax̄ = b̄ pode ser colocado da seguinte forma: pela i-ésima
equação detereminamos xi :

ai1 ai,i−1 ai,i+1 ain bi


xi = − x1 − · · · − xi−1 − xi+1 − · · · − xn + , i = 1, . . . , n,
aii aii aii aii aii
(k+1) (k+1)
e as fórmulas (1) para os cálculos de x1 , . . ., xn tomam a forma
n
(k+1)
X aij (k) bi
(2) xi = − x + , i = 1, . . . , n.
aii j aii
j=1,j6=i

Este método é conhecido como método da iteração simples ou de Jacobi-Ri-


chardson.
Vamos discutir algumas condições suficientes para a convergência do método
da iteração simples que surgem do corolário acima, utilizando a norma
n
X
kBk∞ := max |bij |.
1≤i≤n
j=1

Neste caso B = I − CA. Sejam {bij }, {cij } e {δij } os elementos de B, C e I,


respectivamente. Então,

bij = δij − ci1 a1j − · · · − cin anj

1
= δij − aij
aii
4.4 Métodos iterativos para solução de sistemas lineares 173

e, consequentemente,
n
X
kBk∞ = max |bij |
1≤i≤n
j=1
n
X aij
= max |δij − |
1≤i≤n
j=1
aii
n
1 X
= max |aij |.
1≤i≤n |aii |
j=1,j6=i

Isto mostra que a condição kBk∞ < 1 pode ser escrita como
n
X
|aij | < |aii |, i = 1, . . . , n .
j=1,j6=i

De fato, esta é a condição para que A seja uma matriz diagonalmente dominante.
Análogamente, a condição
n
X
kBk1 := max |bij | < 1
1≤j≤n
i=1

reduz-se a
n ¯ ¯
X ¯ aij ¯
¯ ¯ < 1, j = 1, . . . , n.
¯ aii ¯
i6=j

Método de Gauss-Seidel. Na prática é usada uma modificação natural


do método da iteração simples chamada método de Gauss-Seidel. Neste caso,
(k+1)
na i-ésima equação de (2) para o cálculo de xi , usamos as (k + 1)-ésimas
aproximações de x1 , . . . , xi−1 já calculadas. Deste modo, obtemos as fórmulas

i−1 n
(k+1)
X aij (k+1)
X aij (k) bi
xi =− xj − xj + , i = 1, . . . , n.
j=1
aii a
j=i+1 ii
aii

Teorema 48 O método de Gauss-Seidel é convergente para qualquer aproximação


inicial x̄0 se, e somente se, os módulos de todas as raı́zes da equação

¯ λa11 a12 ... a1n


¯ ¯
¯
¯ ¯
¯ λa21 λa22 ... a2n ¯
det ¯ .. .. .. ¯=0
¯ ¯
..
¯ .
¯ . . . ¯
¯
¯ λa λan2 ... λann ¯
n1

são menores do que 1.


174 Capı́tulo4. Solução de Sistemas de Equações

Demonstração. Vamos representar A da forma A = U + V , onde U é a


matriz triangular inferior que contém em sua diagonal principal, os elementos
diagonais de A, e V é triangular superior com elementos 0 na diagonal principal.
Então, o sistema Ax̄ = b̄ pode ser escrito na forma

U x̄ = −V x̄ + b̄

e o método de Gauss-Seidel é representado através do processo iterativo

U x̄k+1 = −V x̄k + b̄.

Resolvemos com relação a x̄k+1 e obtemos

(3) x̄k+1 = −U −1 V x̄k + U −1 b̄.

Mas, este processo iterativo é do mesmo tipo do método da iteração simples


que foi considerado no Teorema 1. De acordo com este teorema o método (3) é
convergente se e somente se os módulos dos autovalores da matriz −U −1 V são
menores do que 1, isto é, quando os módulos das raı́zes da equação

det[−U −1 V − λI] = det[λI + U −1 V ] = 0,

ou, equivalentemente, multiplicando os dois lados por det U , da equação

det[λU + V ] = 0,

são menores do que 1. O teorema está demonstrado.

Comparação do método de Gauss-Seidel com o método da iteração


simples. As regiões de convergência do método da iteração simples e do método
de Gauss-Seidel se interseptam. Não é dificil mostrar que o método de Gauss-
Seidel também é convergente para o sistema Ax̄ = b̄, quando a matriz A é
diagonalmente dominante. Abaixo mostraremos que, neste caso, o método de
Gauss-Seidel converge mais rapidamente do que o método da iteração simples.

Teorema 49 Se a matriz A é diagonalmente dominante o método de Gauss-


Seidel converge mais rapidamente do que o método da iteração simples.

Demonstração. Usaremos a norma vetorial kx̄k∞ := max |xi | e a corres-


1≤i≤n
pondente norma matricial k · k∞ .
Seja A = {aij } uma matriz arbitrária diagonalmente dominante, isto é,
n
X
|aij | < |aii |, i = 1, . . . , n.
j=1,j6=i
4.4 Métodos iterativos para solução de sistemas lineares 175

Denotemos por
aij
cij = − ,
aii
bi
di = ,
aii Pn n
j6=i |aij | X
µ = max = max |cij |.
1≤i≤n |aii | 1≤i≤n
j=1,j6=i

Notemos que, de acordo com as hipóteses sobre a matriz A, µ < 1. A iteração


simples corresponde ao esquema
n
(k+1) (k)
X
xi = cij xj + di ,
j=1,j6=i

e o método de Gauss-Seidel ao esquema


i−1 n
(k+1) (k+1) (k)
X X
xi = cij xj + cij xj + di .
j=1 j=i+1

Seja x̄ a solução do sistema. Temos


n
X
xi = cij xj + di .
j=1,j6=i

Para o erro do método da iteração simples obtemos


n ¯ ¯
X ¯ (k)
kx̄ − x̄k+1 k∞ ≤ max |cij | ¯xj − xj ¯
¯
1≤i≤n
j=1,j6=i

≤ µkx̄k − x̄k∞ ≤ · · · ≤

≤ µ(k+1) kx̄0 − x̄k∞ .

Vamos introduzir as notações :


i−1
X
βi = |cij |,
j=1
Xn
γi = |cij |,
j=i+1
γi
ν = max .
i 1 − βi
Para o método de Gauss-Seidel, temos
¯ ¯
(k+1) ¯
kx̄ − x̄k+1 k∞ ≤ max ¯xi − xi
¯
¯
1≤i≤n
176 Capı́tulo4. Solução de Sistemas de Equações

 
Xi−1 ¯ ¯ n ¯ ¯
¯ (k+1) X ¯ (k)
≤ max |cij | ¯xj − xj ¯ + |cij | ¯xj − xj ¯
¯ ¯
i  
j=1 j=i+1

≤ max{βi kx̄k+1 − x̄k∞ + γi kx̄k − x̄k∞ }.


i

A última igualdade é atingida para algum i0 . Consequentemente,

kx̄ − x̄k+1 k∞ ≤ βi0 kx̄k+1 − x̄k∞ + γi0 kx̄k − x̄k∞ .

Portanto,
γi0
kx̄ − x̄k+1 k∞ ≤ kx̄ − x̄k k∞
1 − βi0

≤ νkx̄ − x̄k k∞ ≤ · · · ≤

≤ ν k+1 kx̄0 − x̄k∞ .

Mas, βi + γi ≤ µ < 1. Então,


γi βi (1 − βi ) − γi βi + γi − γi
βi + γi − =
1 − βi 1 − βi
βi (1 − βi − γi )
= ≥ 0.
1 − βi
Consequentemente,
γi
µ = max(βi + γi ) ≥ max = ν.
i i 1 − βi
Portanto, o erro do método de Gauss-Seidel é limitado por uma expressão que
converge para zero mais rapidamente do que o limite do erro da iteração simples.

4.5 Métodos dos gradientes para a solução de


sistemas de equações
Seja

(1) Ax̄ = b̄.

um dado sistema linear. Vamos supor que A é uma matriz simétrica e positiva
definida. Vamos introduzir o funcional

(2) f (x̄) := (Ax̄, x̄) − 2(b̄, x̄),


4.5 Métodos dos gradientes para a solução de sistemas de equações 177

que é definido para todo x̄ ∈ IRn . Podemos verificar que


n
X n
X
f (x̄) = aij xj xi − 2 bi xi .
i,j=1 i=1

Consequentemente, f (x̄) é um polinômio de grau dois com relação a xi , i =


1, . . . , n.
Mostremos que a solução de (1) minimiza (2) e vice versa, o mı́nimo do
funcional (2) é atingido para a solução de (1). De fato, seja ξ¯ a solução de (1),
isto é, Aξ¯ = b̄. Seja x̄ um elemento qualquer de IRn . Usando a simetria e o fato
de A ser positiva definida, obtemos:
¯ =
f (x̄) − f (ξ) ¯ ξ)
(Ax̄, x̄) − 2(b̄, x̄) − (Aξ, ¯ + 2(b̄, ξ)
¯

= ¯ x̄) − (Aξ,
(Ax̄, x̄) − 2(Aξ, ¯ ξ)
¯ + 2(Aξ,
¯ ξ)
¯

= ¯ ξ)
(Aξ, ¯ − (Aξ,
¯ x̄) + (Ax̄, x̄) − (Aξ,
¯ x̄)

= ¯ ξ¯ − x̄) + (Ax̄ − Aξ,


(Aξ, ¯ x̄)

= ¯ ξ¯ − x̄) − (A(ξ¯ − x̄), x̄)


(Aξ,

= ¯ ξ¯ − x̄) − (ξ¯ − x̄, Ax̄)


(Aξ,

= (A(ξ¯ − x̄), ξ¯ − x̄) ≥ 0.


¯ Consequentemente, f (x̄) atinge o
A igualdade é atingida somente para x̄ = ξ.
seu valor mı́nimo somente quando x̄ = ξ.¯
¯ para todo x̄ ∈ IRn . Então,
Vamos supor, agora, que f (x̄) ≥ f (ξ)
n
∂f ¯¯ X
= 2 aij ξj − 2bj = 0, i = 1, . . . , n,
∂xi x̄=ξ̄
¯
j=1

o que significa que ξ¯ é solução do sistema linear Ax̄ = b̄. A afirmação está
demonstrada.
A relação aqui descrita é usada para resolvermos aproximadamente o sistema
(1), minimizando (2). Um dos métodos para minimização de (2) é o método da
máxima descida. Neste método, a partir de uma aproximação x̄k , obtemos a
próxima, x̄k+1 , de modo que f (x̄) diminui o máximo possı́vel. Cada aproximação
é obtida da anterior através da fórmula

x̄k+1 = x̄k + αk c̄k ,


178 Capı́tulo4. Solução de Sistemas de Equações

onde c̄k tem a direção da maior diminuição de f (x̄) no ponto x̄k , e αk é escolhido
de modo a obtermos essa diminuição. Em outras palavras, c̄k é escolhido pela
condição ¯ ¯
¯ d ¯ ¯
¯ [f (x̄k + αc̄)]¯¯ ¯ → max,
¯ dα α=0
¯
e, para c̄ = c̄k , procuramos αk como solução da equação
d
f (x̄k + αc̄) = 0.

Temos

f (x̄k + αc̄) = (x̄k + αc̄, A(x̄k + αc̄)) − 2(b̄, x̄k + αc̄)

= (x̄k , Ax̄k ) + 2α(x̄k , Ac̄) + α2 (c̄, Ac̄) − 2(b, x̄k ) − 2α(b̄, c̄)

= α2 (Ac̄, c̄) + f (x̄k ) + 2α(Ax̄k − b̄, c̄).

Usando a notação r̄k := Ax̄k − b̄, obtemos


d
[f (x̄k + αc̄]|α=0 = 2(Ax̄k − b̄, c̄) = 2(r̄k , c̄).

De acordo com a desigualdade de Cauchy-Schwarz,

|(r̄k , c̄)| ≤ kr̄k k · kc̄k,

a igualdade sendo atingida quando c̄ e r̄k são co-lineares, isto é, quando c̄ =
const. r̄k . Consequentemente, a direção da máxima descida do funcional f é
dada pela direção do vetor ck := r̄k = Ax̄k − b̄. Vamos determinar o valor αk
de α, para o qual f tem valor mı́nimo na direção c̄k . Temos

f (x̄k + αc̄k ) = f (x̄k + αr̄k ) = α2 (Ar̄k , r̄k ) + f (x̄k ).

Portanto,
d
f (x̄k + αc̄k ) = 2α(Ar̄k , r̄k ) + 2(r̄k , r̄k ) = 0.

Achando a solução αk da equação acima, obtemos
kr̄k k23 (r̄k , r̄k )
αk = − =− .
(Ar̄k , r̄k ) (Ar̄k , r̄k )
Consequentemente, a fórmula para o cálculo da próxima aproximação toma a
forma final:
(r̄k , r̄k )
x̄k+1 = x̄k − r̄k .
(Ar̄k , r̄k )
Desde que a função f (x̄) tem um único ponto de mı́nimo local, então, para
qualquer aproximação inicial, o método é convergente.
4.6 Solução de sistemas de equações não-lineares 179

4.6 Solução de sistemas de equações não-lineares


Método da iteração simples. Temos que resolver o sistema

fi (x1 , . . . , xn ) = 0, i = 1, . . . , n,

onde fi são funções não lineares. Escrevemos este sistema da forma

xi = ϕi (x1 , . . . , xn ), i = 1, . . . , n,

ou, mais sucintamente,


x̄ = ϕ̄(x̄),
onde
x̄ = (x1 , . . . , xn )
e
ϕ̄(x̄) = (ϕ1 (x̄), . . . , ϕn (x̄)).
Como no caso de uma equação, construimos o processo iterativo

x̄k+1 = ϕ̄(x̄k ), k = 0, 1, . . . ,

para alguma aproximação inicial x̄0 = (x01 , . . . , x0n ). De forma mais de talhada
as fórmulas são :
(k+1) (k)
(1) xi = ϕi (x1 , . . . , x(k)
n ), i = 1, . . . , n.

Este método é conhecido como o método da iteração simples. O análogo ao


método de Gauss-Seidel para sistemas não lineares é o método iterativo
(k+1) (k)
x1 = ϕ1 (x1 , . . . , x(k)
n )
(k+1) (k+1) (k)
x2 = ϕ2 (x1 , x2 , . . . , x(k)
n )

... . .....................
(k+1) (k+1)
x(k+1)
n = ϕn (x1 , . . . , xn−1 , x(k)
n ).

Vamos investigar a velocidade de convergência do método da iteração simples


(1).
Introduzimos, em IRn , a norma kx̄k∞ = max |xi |. Seja Sr := {x̄ ∈ IRn :
1≤i≤n
¯
kx̄ − ξk ¯
∞ ≤ r} onde ξ é a solução do sistema x̄ = ϕ(x̄). Vamos supor que
¯ ¯
¯ ∂ϕi (x̄) ¯
¯ ∂xj ¯ ≤ Mij para x̄ ∈ Sr para i, j = 1, . . . , n.
¯ ¯
180 Capı́tulo4. Solução de Sistemas de Equações

Teorema 50 Se
n
X
max Mij < 1,
1≤i≤n
j=1

então x̄k converge para ξ¯ para todo x̄0 ∈ Sr , com a velocidade da progressão
geométrica.

Demonstração. Seja x̄ = (x1 , . . . , xn ) ∈ Sr . Então,

¯
kϕ̄i (x̄) − ξk ¯
= kϕ̄i (x̄) − ϕ̄i (ξ)k
∞ ∞ = max |ϕi (x1 , . . . , xn ) − ϕi (ξ1 , . . . , ξn )|
1≤i≤n
¯ ¯
¯ n ¯
¯X ∂ϕi (ηj ) ¯
= max ¯¯ (xj − ξj )¯¯ (pela fórmula de Taylor)
1≤i≤n ¯
j=1
∂xj ¯
n ¯ ¯
¯ ∂ϕi (ηj ) ¯
¯
X
≤ kx̄ − ξk∞ max ¯ ∂xj ¯ ,
¯ ¯
1≤i≤n
j=1

¯ Assim,
onde η̄ = (η1 , . . . , ηn ) é um ponto do segmento de reta que liga x̄ a ξ.
η̄ ∈ Sr , pois ξ¯ e x̄ pertencem a Sr . Consequentemente,
n
¯ ¯ ¯ ,
X
kϕ̄i (x̄) − ξk ∞ ≤ kx̄ − ξk∞ max Mij = qkx̄ − ξk ∞
1≤i≤n
j=1

onde q < 1. Por esta desigualdade, para x̄ = x̄k , obtemos

¯
kx̄k+1 − ξk ¯ k+1 ¯ .
∞ ≤ kx̄k − ξk∞ ≤ q kx̄0 − ξk∞

Método de Newton. Vamos recordar, primeiramente, o métodode Newton


para a solução da equação f (x) = 0. Seja f ∈ C 2 [a, b]. Suponha que f (x) = 0
tem raiz ξ em [a, b]. Pela fórmula de Taylor
2
(x − xk )
f (x) = f (xk ) + f ′ (xk )(x − xk ) + f ′′ (ξ) .
2!
Ao invéz de resolver a equação f (x) = 0, procuremos a raiz da equação linear

f (xk ) + f ′ (xk )(x − xk ) = 0.

Denotemos esta raiz por xk+1 . Temos que

f (xk )
xk+1 = xk − .
f ′ (xk )
Esta é a fórmula de Newton.
4.6 Solução de sistemas de equações não-lineares 181

Tentemos abordar, analogamente, o problema de resolver o sistema de equações


da forma

(1) F (x̄) = 0,

onde F (x̄) = (f1 (x̄), . . . , fn (x̄)), isto é, consideremos o sistema

f1 (x1 , . . . , xn ) = 0

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

fn (x1 , . . . , xn ) = 0.
∂ 2 fi
Seja ξ¯ = (ξ1 , . . . , ξn ) a solução de (1) e sejam ∂xj ∂xm contı́nuas em uma vizi-
¯ Pela fórmula de Taylor, temos
nhança de ξ.
n
(k)
X ∂fi (x̄k ) (k)
fi (x1 , . . . , xn ) ≈ fi (x1 , . . . , x(k)
n )+ (xj − xj ).
j=1
∂xj

Aqui, ao invéz de resolver F (x̄) = 0, resolveremos o sistema linear


n
X ∂fi (x̄k ) (k)
fi (x̄k ) + (xj − xj ) = 0.
j=1
∂xj

Denotemos por x̄k+1 a última solução. Temos


n
X ∂fi (x̄k ) (k+1) (k)
(2) (xj − xj ) = −fi (x̄k ).
j=1
∂xj
D(f1 ,...,fn )
Seja J(x̄k ) a matriz do sistema linear acima, isto é, J(x̄k ) é o Jacobiano D(x1 ,...,xn )
no ponto x̄k . O sistema (2) pode ser escrito, na forma matricial, da seguinte
maneira
J(x̄k )(x̄k+1 − x̄k ) = −F (x̄k ).
Multiplicamos ambos os lados por J −1 (x̄k ) e obtemos

x̄k+1 = x̄k − J −1 (x̄k ) F (x̄k )

Este é o o método de Newton para sistemas de equações.


Vamos discutir, agora, a velocidade de convergência deste método.
Seja kAk a norma matricial subordinada à norma vetorial kx̄k = max |xi |.
1≤i≤n
Sabemos que
n
X
kAk = max |aij |,
1≤i≤n
j=1

kAx̄k ≤ kAk kx̄k.


182 Capı́tulo4. Solução de Sistemas de Equações

Teorema 51 Suponha que existam números r, c1 , c2 tais que

(a) kJ −1 (x̄)k ≤ c1 , para todo x̄ ∈ Sr ,

2
(b) kF (x̄) − F (ȳ) − J(ȳ)(x̄ − ȳ)k ≤ c2 kx̄ − ȳk , x̄, ȳ ∈ Sr .

Então, para x0 ∈ Sr̂ , r̂ = min(r, 1c ), c = c1 c2 , o método de Newton é convergente


com velocidade
¯ ≤ 1 (ckx̄0 − ξk)
kx̄k − ξk ¯ 2k .
c
Demonstração. Primeiramente, provaremos, por indução, que x̄0 ∈ Sr̂ im-
plica na x̄k ∈ Sr̂ . De fato, seja x̄i ∈ Sr̂ , i = 0, . . . , k. Temos

¯
F (ξ) − F (x̄k ) − J(x̄k )(ξ¯ − x̄k )

= −F (x̄k ) − J(x̄k )(ξ¯ − x̄k+1 + x̄k+1 − x̄k )

= −F (x̄k ) − J(x̄k )(ξ¯ − x̄k+1 ) − J(x̄k )(x̄k+1 − x̄k ).

Mas, F (x̄k ) + J(x̄k )(x̄k+1 − x̄k ) = 0, de acordo com a definição de x̄k+1 . Con-
sequentemente,

¯ − F (x̄k ) − J(x̄k )(ξ¯ − x̄k ) = J(x̄k )(ξ¯ − x̄k+1 ).


F (ξ)

Por outro lado, (b) implica em

¯ 2.
¯ − F (x̄k ) − J(x̄k )(ξ¯ − x̄k )k ≤ c2 kx̄k − ξk
kF (ξ)

Então,
¯ 2.
¯ ≤ c2 kx̄k − ξk
kJ(x̄k )(x̄k+1 − ξ)k
Multiplicando ambos os lados por kJ −1 (x̄k )k, obtemos

¯ 2.
¯ ≤ c2 kJ −1 (x̄k )k kx̄k − ξk
kJ −1 (x̄k )k kJ(x̄k )(x̄k+1 − ξ)k

Mas, a norma matricial é compatı́vel com a vetorial. Portanto,

¯
k(x̄k+1 − ξ)k ¯2
¯ ≤ c2 c1 kx̄k − ξk
≤ kJ −1 (x̄k )k · kJ(x̄k )(x̄k+1 − ξ)k

≤ cr̂2 ≤ cr̂r̂ ≤ r̂.

Então, x̄k+1 ∈ Sr̂ .


Já demonstramos a desigualdade

¯2.
¯ ≤ c kx̄k−1 − ξk
kx̄k − ξk
4.7 Número de condição 183

Desta forma,
¯
ckx̄k − ξk ¯2
≤ c2 kx̄k−1 − ξk
¯ 2
= [ckx̄k−1 − ξk]
k
¯ 4 ≤ . . . ≤ [ckx̄0 − ξk]
≤ [ckx̄k−2 − ξk] ¯ 2 .

Portanto,
¯ ≤ 1 k
¯ 2 ,
kx̄k − ξk [ckx̄0 − ξk]
c
k
isto é, o método de Newton é convergente com velocidade q 2 , onde q < 1 para
toda boa aproximação inicial. O teorema está demonstrado.

4.7 Número de condição


Consideremos uma questão relacionada a alguns problemas que podem surgir
quando resolvemos sistemas lineares na prática.
Seja o sistema dado da forma

(1) Ax̄ = b̄.

Os dados são os elementos {aij } de A e os elementos {bi } do vetor b̄ do lado


direito. Geralmente esses dados são os resultados de alguns experimentos ou são
obtidos através de cálculos com certa precisão. Às vezes, a matriz A é obtida por
investigações teóricas e apenas as coordenadas de b̄ são fornecidos de problemas
práticos. Levando em consideração o fato de que, nos computadores, os números
são arredondados com uma determinada precisão, concluı́mos que, na prática, ao
invéz de resolver o sistema(1) resolvemos um outro sistema, com dados mudados.
A prática mostra que, para alguns sistemas, pequenas variações nos dados não
influenciam muito o resultado, isto é, a solução obtida, enquanto que para outros
sistemas os dados mudam o resultado radicalmente. Até métodos que em geral
funcionam muito bem, comportam-se de maneira estranha quando aplicados
a alguns sistemas, fornecendo resultados longe do esperado. Qual é a razão
disto? Antes de responder a esta questão, vamos primeiramente mostrar uma
estimativa teórica para a variância da solução x̄ quando mudamos os dados A
e b̄.

Seja x̄ a solução de (1) e x̄ + ε̄ a solução do sistema cuja matriz é A + ∆ e


o vetor do lado direito é b̄ + δ̄, isto é,

(2) (A + ∆)(x̄ + ε̄) = b̄ + δ̄.


184 Capı́tulo4. Solução de Sistemas de Equações

Aqui, ∆ é uma matriz e ε̄ e δ̄ são vetores. Considerando que Ax̄ = b̄, por (2),
obtemos
Aε̄ + ∆x̄ + ∆ε̄ = δ̄
e, assim,
ε̄ = A−1 (δ̄ − ∆x̄ − ∆ε̄).
Portanto,

kε̄k ≤ kA−1 k kδ̄k + kA−1 k k∆k kx̄k + kA−1 k k∆k kε̄k.

Supondo que kA−1 k k∆k < 1, isto é, que os erros dos elementos de A são
suficientemente pequenos, obtemos
kA−1 k kδ̄k + kA−1 k k∆k kx̄k
kε̄k ≤ .
1 − kA−1 k k∆k
Quando A é dada precisamente ou, equivalentemente, quando ∆ = 0, temos

(3) kε̄k ≤ kA−1 k kδ̄k.

Então, o incremento ε̄ da solução é limitado pelas pertubações ∆ e δ̄ dos dados


e depende essencialmente da norma da matriz inversa.
Aqui, δ̄, ∆ e ε̄ são os valores absolutos dos erros. Mas, eles não dão uma
noção clara da situação. Por exemplo, se k∆k = 1, esta pertubação é grande ou
não? Depende da norma kAk. Se kAk = 106 , a pertubação é desprezı́vel, mas
se kAk = 10−3 , a pertubação é catastrófica. Por isto, quando investigamos o
erro consideramos os incrementos relativos
kε̄k k∆k kδ̄k
, , .
kx̄k kAk kb̄k
Vamos obter limites para estes incrementos relativos. Para este propósito, pre-
cisaremos da seguinte desigualdade.

Teorema 52 Seja a norma matricial k·k compatı́vel com a norma vetorial k·k.
Então, a desigualdade
kx̄k
≤ kAx̄k ≤ kAk kx̄k
kA−1 k
vale para toda matriz regular A e todo vetor x̄.

Demonstração. A segunda desigualdade mostra que a norma matricial e a


norma vetorial são compatı́veis. A desigualdade à esquerda é consequência de

kx̄k = kA−1 Ax̄k ≤ kA−1 k · kAx̄k.


4.7 Número de condição 185

Vamos investigar agora a influência das pertubações dos dados sobre a solução,
em duas situações tı́picas.
Seja a solução ξ¯ do sistema Ax̄ = b̄ obtida por um método numérico de
aproximação. Substituimos x̄ por ξ¯ no lado esquerdo do sistema. Obtemos Aξ. ¯
¯ ¯
Seja Aξ próximo a b̄. A pergunta é se ξ está próximo a x̄. Parece natural que
se δ̄ := Aξ¯ − b̄ é pequeno, ε̄ := ξ¯ − x̄ será pequeno também. Vamos ver agora se
temos razão para uma tal afirmação.
Temos
δ̄ = Aξ¯ − b̄ = Aξ¯ − Ax̄ = A(ξ¯ − x̄) = Aε̄.

Logo, ε̄ = A−1 δ̄. Desde que (A−1 )−1 = A, então Lema 1 implica na desigualdade

kδ̄k
(4) ≤ kA−1 δ̄k = kε̄k ≤ kA−1 k kδ̄k.
kAk

Analogamente,

kb̄k
(5) ≤ kx̄k = kA−1 b̄k ≤ kA−1 k kb̄k.
kAk

Como consequência de (4) e (5), obtemos o seguinte limite para o erro relativo:

1 kδ̄k kε̄k kδ̄k


(6) ≤ ≤ kA−1 k kAk .
kA−1 k kAk kb̄k kx̄k kb̄k

O número kA−1 k kAk é chamado número de condição da matriz A e é denotado


por cond (A) ou por ν(A). A desigualdade (6) implica que cond (A) ≥ 1 pois,
caso o contário, chegarı́amos em uma contradição com (6) para kδ̄k =
6 0. Isto
−1
pode ser demonstrado também. De fato, pela igualdade I = A A obtemos

kIk ≤ kA−1 k kAk = cond (A).

Desde que todos os autovalores da matriz identidade I são iguais a 1, pois o


polinômio caracterı́stico de I é (1 − t)n , e toda norma de uma matriz é maior do
que o valor absoluto de qualquer autovalor (veja (24.5)), então cond (A) ≥ 1.
A desigualdade (6) mostra que se o número de condição de A está perto
de 1, o erro relativo da solução está perto do erro relativo do vetor do lado
direito. Então, podemos afirmar que se Aξ¯ está próximo a b̄, então ξ¯ é uma boa
aproximação da solução x̄ e até podemos fornecer um limite para o erro.
As matrizes cujos número de condição estão próximos a 1 são chamadas bem
condicionadas. Aquelas com números de condição , cond (A), muito grandes
são chamadas mal condicionadas. As matrizes mal condicionadas podem causar
problemas quando resolvemos o sistema numericamente.
186 Capı́tulo4. Solução de Sistemas de Equações

Vamos fornecer um limite inferior melhor para cond (A) através dos auto-
valores de A. Para este propósito, vamos denotar por λ1 , . . . , λn os autovalores
de A, arranjados em ordem crescente de seus módulos,

|λ1 | ≤ . . . ≤ |λn |.
1 1
Assim, |λn | ≤ ... ≤ |λ1 | são os módulos dos autovalores de A−1 e, portanto,

|λn |
(7) cond (A) = kA−1 k kAk ≥ .
|λ1 |
Em particular quando A é uma matriz simétrica, isto é, quando A = AT , temos
kAk2 = |λn | e kA−1 k2 = |λ11 | . Então,

|λn |
(8) cond (A) = .
|λ1 |
Portanto, o condicionamento das matrizes simétricas depende da largura de seu
spectrum, isto é, do quociente do maior e do menor autovalores.
Vamos considerar mais um caso particular onde aparece o número de condição
da matriz A. Ao invéz de resolver o sistema Ax̄ = b̄, resolvemos Âξ¯ = b̄ onde
 = A + ∆. Determinemos um limite para a diferença entrex̄ e ξ.¯ Temos

x̄ = A−1 b̄ ¯ = A−1 (A + ÂnA)ξ¯


= A−1 (Âξ)

= ξ¯ + A−1 (Â − A)ξ¯ = ξ¯ + A−1 ∆ξ.


¯

Assim, obtemos
x̄ − ξ¯ = A−1 ∆ξ¯
e, desta forma,

¯ ≤ kA−1 k k∆k kξk


¯ = kA−1 k kAk k∆k ¯
kx̄ − ξk kξk.
kAk
Finalmente, chegamos em
¯
kx̄ − ξk k∆k
¯ ≤ cond (A) .
kξk kAk
Esta desigualdade mostra que, para matrizes bem condicionadas, pequenas per-
tubações relativas nos elementos da matriz levam a pequenos incrementos na
solução .
Esses exemplos mostram que o número de condição é uma caracterı́stica
importante de A. Para determinar este número temos que saber os valores de
kAk e de kA−1 k. Em geral, o cálculo das últimas normas não é problema fácil.
Algumas vezes, cond (A) pode ser estimado através do seguinte teorema.
4.7 Número de condição 187

Teorema 53 A igualdade
½ ¾
1 kA − Bk
= min : B é singular
cond (A) kAk
vale para qualquer norma e para toda matriz regular A.

O teorema mostra que o número de condição caracteriza a distância de A


até o espaço das matrizes singulares B, isto é, para as quais det B = 0. Não
vamos provar este teorema. Somente mostraremos que
1 kA − Bk
≤ para toda matriz B com det B = 0.
cond (A) kAk
De fato, esta desigualdade é equivalente a
1
(8) ≤ kA − Bk.
kA−1 k
Desde que det B = 0, então existe um vetor não nulo x̄ tal que B x̄ = ō. Portanto,

kA − Bk kx̄k ≥ kAx̄ − B x̄k = kAx̄k

kx̄k
≥ ( pelo Lema 1).
kA−1 k
Agora, (8) é consequência da última desigualdade e de kx̄k > 0.
A idéia da maioria dos métodos numéricos para solução de sistemas lineares
é a seguinte: transformar a matriz A em uma matriz C com estrutura especı́fica
(triangular, banda, simétrica) e depois resolver o sistema que corresponde a C.
Algumas vezes, essas transformações podem levar em um aumento do número
de condição de A. Assim, a matriz A de bem condicionada pode se tornar mal
condicionada.
Vamos ver o que acontece, por exemplo, quando transfomamos uma matriz
em matriz simétrica. Multipliquemos os dois lados da equação

Ax̄ = b̄

pela transposta de A. Obtemos AT Ax̄ = AT b̄. Este é um novo sistema que


é equivalente ao sistema inicial e que tem matriz simétrica C = AT A. Sejam
λ1 , . . . , λn , com |λ1 | ≤ . . . ≤ |λn |, os autovalores de A. Vamos supor que A é
positiva definida, isto é, que (Ax̄, x̄) > 0 para todo x̄ 6= 0̄. Assim, AT A = A2 e
λ21 , . . ., λ2n são os autovalores de A2 . Consequentemente,
µ ¶2
|λn | 2
cond (C) = = [cond (A)] .
|λ1 |
188 Capı́tulo4. Solução de Sistemas de Equações

Mas, uma matriz tem número de condição 1 se, e somente se, ela é múltipla
da matriz identidade. Portanto, em geral, quando A 6= I, cond (A) > 1 e (9)
implica que quando transfomamos a matriz em simétrica, o número de condição
de A cresce. Isto mostra que a simetrização pode estragar o condicionamento
de A.
Capı́tulo 5

Cálculo de Autovalores de
Matrizes

Autovalores de uma matriz A são aqueles números λ, para os quais a equação

Ax̄ = λx̄

tem solução não-nula x̄. Essas soluções não-nulas são chamadas autovetores de
A. É claro que toda matriz A de dimensão n × n tem exatamente n autovalores,
que são as raı́zes da equação algébrica

D(λ) := det (A − λI) = 0.

A equação D(λ) = 0 é chamada equação caracterı́stica da matriz A. Podemos


demonstrar que

D(λ) = (−1)n [λn − σ1 λn−1 + σ2 λn−2 − · · · + (−1)n σn ],

onde
n
X
σ1 = akk ,
k=1

¯ ¯
X ¯ aii aik ¯¯
σ2 = ¯
¯a ,
i<k ki akk ¯
190 Capı́tulo5. Cálculo de Autovalores de Matrizes

X ¯¯ aii aij aik ¯


¯ ¯
¯
σ3 = ¯ aji
¯ ajj ajk ¯¯ ,
i<j<k ¯ a akj akk ¯
ki

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

σn = det A.

Para se determinar os coeficientes de D(λ) é necessário calcular 2n − 1 (=


¡n¢ ¡n¢
1 +· · ·+ n ) determinantes. Para n grande, é uma tarefa muito difı́cil. Existem
outros métodos mais simples para a construção do polinômio caracterı́stico de
uma matriz A. Depois de achar o polinômio, os seus zeros, que são os autovalores
de A, são calculados por algum dos métodos numéricos já conhecidos.
Agora vamos conhecer um antigo método universal para a construção do
polinômio caracterı́stico de uma dada matriz.

5.1 Método de Danilevski


n
Seja A = {aij }i,j=1 uma matriz dada. Seja
¯ ¯
¯ p1 p2 . . . pn−1 pn ¯¯
¯
¯ 1 0 ... 0 0 ¯¯
P = ¯ .. .. .. .. ¯
¯
¯ . . ··· . . ¯¯
¯
¯ 0 0 ... 1 0 ¯
a correspondente matriz similar de Frobenius, isto é,

P = C −1 AC,

onde C é uma matriz regular. Desde que as matrizes similhantes têm as mesmas
equações caracterı́sticas, então

det (A − λI) = det (P − λI) = D(λ).

A idéia do método de Danilevski é transformar a equação caracterı́stica det (A−


λI) = 0 para a forma normal de Frobenius, isto é, da forma
¯ p1 − λ p2 p3 . . . pn ¯
¯ ¯
¯ ¯
¯ 1 −λ 0 . . . 0 ¯¯
¯
D(λ) = ¯ 0 1 −λ . . . 0 ¯¯ .
¯
¯ . .. .. .. .. ¯¯
¯ .. . . . . ¯
¯
0 0 0 . . . −λ
¯ ¯
5.1 Método de Danilevski 191

Se a equação caracterı́stica é escrita desta forma, expandindo o determinante


com relação à primeira coluna, obtemos

D(λ) = (p1 − λ)(−λ)n−1 − p2 (−λ)n−2 + p3 (−λ)n−3 + · · · + (−1)n−1 pn

= (−1)n [λn − p1 λn−1 − p2 λn−2 − · · · − pn ].

No método de Danilevski a matriz A é transformada em uma matriz P , que é


similhante a A, através de n − 1 transformações de semelhança que mudam as
linhas de A, sucessivamente, começando da última.
Vamos supor que depois de n − k transformações de semelhança obtemos a
seguinte matriz, que denotaremos por A também,

a11 a12 ... a1k−1 a1k ... a1n−1 a1n


 
 .. .. .. .. .. .. 
 . . ··· . . ··· . . 
 
 ak1 ak2 ... akk−1 akk ... akn−1 akn 
A=
 0
,
0 ... 0 1 ... 0 0 
 .. .. .. .. .. .. 
 
 . . ··· . . ··· . . 
0 0 ... 0 0 ... 1 0

cujas k + 1, . . . , n-ésimas linhas coincidem com as de P . Queremos transformar


a k-ésima linha (ak1 . . . ak,k−1 akk . . . akn ) para a forma (0 . . . 1 0 . . . 0). Para este
fim, executemos as seguintes transformações:
1. Para ak,k−1 6= 0, dividimos todos os elementos da (k − 1)-ésima coluna
por ak,k−1 .
2. Subtraimos da i-ésima coluna a (k − 1)-ésima multiplicada por aki , i 6=
n − 1.
Fazendo com I as mesmas transformações obtemos

1 0 ... 0
 
 0 1 ... 0 
 .. .. .. 
. . ··· .
 
 
Mk = 
 mk−1,1
,
 mk−1,2 ... mk−1,n 

 .. .. .. 
 . . ··· . 
0 0 ... 1

onde
1
mk−1,k−1 =
ak,k−1
ak,i
mk−1,i = − , i 6= k − 1.
ak,k−1
192 Capı́tulo5. Cálculo de Autovalores de Matrizes

Vamos denotar a matriz obtida por B. De acordo com o que já foi dito, B =
AMk e as k-ésima, . . ., n-ésima linhas de B coincidem com as de P . Para os
elementos bij de B achamos
ai,k−1
bij = aij − akj
ak,k−1

= aij + mk−1,j ai,k−1 , i = 1, . . . , k, j = 1, . . . , k − 2, k, . . . , n,

ai,k−1
bi,k−1 = = ai,k−1 mk−1,k−1 , i = 1, . . . , k.
ak,k−1

A matriz B obtida não é similar a A. Para trasformá-la em similar vamos


multiplicá-la à esquerda por Mk−1 . Obtemos C = Mk−1 B = Mk−1 AMk .
Podemos mostrar que
 
1 0 ... 0
 0 1 ... 0 
 .. .. .. 
 
 . . ··· . 
 
Mk−1 =  ak1 ak2 . . . akn  → k − 1
 
 . .. .. 
 .. . ··· . 
 
 0 0 ... 0 
 

0 0 ... 1

De fato, pode-se verificar diretamente que Mk−1 Mk = I.


Pela fórmula C = Mk−1 B achamos as expressões para cji ,

cji = bji , j 6= k − 1
ck−1,i = ak1 b1i + . . . + akn bni , i = 1, . . . , n.

É claro que C tem as mesmas linhas, da k-ésima até a n-ésima, que as de


P . Continuamos a operação na (k − 1)-ésima, . . . , segunda linhas da mesma
maneira.
Se ak,k−1 = 0 na matriz obtida depois de n − k passos, existem duas possi-
bilidades:
a) aki 6= 0 para algum i < k − 1.
Neste caso, permutamos a (k −1)-ésima com a i-ésima linhas. Para manter a
transformação de semelhança permutamos a i-ésima com a (k−1)-ésima colunas.
Continuamos o processo descrito acima.
5.1 Método de Danilevski 193

b) aki = 0, i = 1, . . . , k − 1. Neste caso, A tem a forma


 
a11 ... a1,k−1 | a1k ... a1n−1 a1n
 .. .. .. .. .. 
 . ··· . | . ··· . . 
 
 ak−1,1 . . . ak−1,k−1 | ak−1,k . . . ak−1,n−1 ak−1,n 
 
 
 −− −− −− −− −− −− −− −− 
A =   0

 . . . 0 | akk ... ak,n−1 akn  
 0 ... 0 | 1 ... 0 0 
 
 . .. .. .. .. 
 .
 . ··· . | . ··· . . 

0 ... 0 | 0 ... 1 0

D1 | L
 

= − − − | − − −,
O | D2

onde D2 eatá na forma de Frobenius. Portanto,

det (A − λI) = det (D1 − λI) det (D2 − λI).

Aplicamos o método de Danilevski para a matriz D1 , que tem dimensão menor.

Cálculo dos autovetores pelo método de Danilevski. Seja λ um auto-


valor de A. Então, λ é autovalor da matriz similar P . Determinemos o autovetor
ȳ = (y1 , . . . , yn ) de P correspondente a λ. Temos P ȳ = λȳ, isto é,
p1 − λ p2 . . . pn
 
y1
 
 1 −λ . . . 0   . 

 .. .. .. ..   ..  = 0̄.

 . . . . 
yn
0 0 . . . −λ
Portanto,

(p1 − λ)y1 + p2 y2 + . . . + pn yn = 0,
y1 − λy2 = 0,
y2 − λy3 = 0,
................ ... .
yn−1 − λyn = 0.

Este sistema é homogênio e tem muitas soluções que são proporcionais. Colo-
cando yn = 1, teremos

yn−1 = λ, yn−2 = λ2 , . . . , y1 = λn−1 .


194 Capı́tulo5. Cálculo de Autovalores de Matrizes

Seja x̄ o autovetor correspondente ao autovalor λ de A. Desde que

−1
Mn−1 . . . M1−1 A M1 . . . Mn−1 ȳ = λȳ,

então,
A M1 . . . Mn−1 ȳ = λ M1 . . . Mn−1 ȳ

e, consequentemente,
x̄ = M1 . . . Mn−1 ȳ.

5.2 Método de Jacobi


O método de Jacobi é um método iterativo para o cálculo aproximado de
autovalores e autovetores de matrizes simétricas. Ele foi sugerido por Jacobi
em 1846. Consideraremos somente a versão que diz respeito ao caso real, isto
é, quando os elementos de A são números reais. Primeiramente, recordemos
alguns fatos da álgebra linear.

Lema 16 Quaisquer duas matrizes similhantes têm os mesmos polinômios ca-


racterı́sticos.

Demonstração. Sejam A e B duas matrizes similares, isto é, B = C −1 AC,


onde det C 6= 0. Temos

det (B − λI) = det (C −1 AC − λI)

= det [C −1 (A − λI)C]

= det C −1 det (A − λI) det C

1
= det (A − λI) det C
det C

= det (A − λI).

O lema está demonstrado.


Denotemos por ēk = (0, . . . , 1, . . . , 0), k = 1, . . . , n, os vetores da base
canônica.

Lema 17 Seja D = diag [λ1 , . . . , λn ] uma matriz diagonal com elementos λ1 ,


n
. . ., λn na diagonal principal. Então, λ1 , . . . , λn são autovalores de D e {ēk }1
são os correspondentes autovetores de D.
5.2 Método de Jacobi 195

Demonstração. De fato,

det (D − λE) = (λ1 − λ) . . . (λn − λ).

Além disso, podemos verificar que Dēk = λk ēk , k = 1, . . . , n. O lema está


demonstrado.
Denotaremos por A′ a matriz transposta da matriz A. A matriz T é chamada
ortogonal se T T ′ = I. É claro que T −1 = T ′ para toda matriz ortogonal.
Denotemos por S(A) a norma Euclidiana e por Sp (A) o traço da matriz A =
n
(aij )i,j=1 :
  21
X n 
2
S(A) := |aij | ,
 
i,j=1
n
X
Sp (A) := aii .
i=1

Lema 18 Seja T uma matriz ortogonal. Então

S 2 (A) = S 2 (T −1 AT ).

Em outras palavras, a transformação de semelhança através de uma matriz or-


togonal não muda a norma Euclidiana.

Demonstração. Temos

S 2 (T −1 AT ) = S 2 (T ′ AT ) = Sp ((T ′ AT ) T ′ AT )

= Sp (T ′ A′ T T ′ AT ) = Sp (T ′ A′ AT )


= Sp ((AT ) AT ) = S 2 (AT )


= S 2 ((AT ) ) = S 2 (T ′ A′ )


= Sp ((T ′ A′ ) T ′ A′ ) = Sp (AT T ′ A′ )

= Sp (AA′ ) = S 2 (A).

Aplicaremos, agora, a idéia principal do método de Jacobi. Seja A uma matriz


simétrica arbitrária. Sabemos, da álgebra linear, que A pode ser reduzida, por
uma transformação ortogonal, a uma matriz diagonal D, isto é, existe uma
matriz ortogonal T , tal que
T −1 AT = D
196 Capı́tulo5. Cálculo de Autovalores de Matrizes

ou, equivalentemente,
T ′ AT = D.
De acordo com o Lema 1, o polinômio caracterı́stico não muda depois desta
transformação. Pelo Lema 2, os elementos diagonais de D são os autovalores de
A. Então, o problema será resolvido se acharmos esta transformação T .
Desde que
n
2
X
S 2 (A) ≥ |aii | ( = quando A é matriz diagonal)
i=1

e S 2 (A) não muda depois de tal transformação, de acordo com Lema 3, podemos
procurar T de tal maneira que a soma dos quadrados dos elementos fora da
diagonal principal da matriz T ′ AT , para A fixa, atinge o seu mı́nimo absoluto.
Equivalentemente, a soma dos quadrados dos elementos diagonais da matriz
T ′ AT tem que atingir o seu máximo que é igual a S 2 (A).
O método de Jacobi oferece um processo iterativo para minimização da soma
dos quadrados dos elementos fora da diagonal principal. Em cada passo usamos
uma transformação de semelhança através de uma matriz da forma
1 0
 
 . .. 
 
cos ϕ . . . − sin ϕ
 
  ← i
 .. .. 
Tij (ϕ) =  . . .
 
 
 sin ϕ . . . cos ϕ  ← j
 
 .. 
 . 
0 1
A diferença entre ela e a matriz identidade está somente nos elementos das linhas
i e j. É óbvio que Tij (ϕ) é ortogonal, isto é, Tij′ (ϕ) Tij (ϕ) = I.
Suponha que no passo (k − 1) chegamos a uma matriz Ak−1 . No k-ésimo
passo executamos a transformação

Ak = Ti′k ,jk (ϕk ) Ak−1 Tik ,jk (ϕk ).

Os parâmetros ik , jk e ϕk são escolhidos de tal modo que a soma dos quadrados


dos elementos fora da diagonal principal diminue o máximo possı́vel. Esta é a
idéia do método de Jacobi.
Agora determinemos Tik jk (ϕk ) explicitamente.
Denotemos por apq os elementos de Ak−1 . Sejam

B := Ak−1 Tik jk (ϕk )


5.2 Método de Jacobi 197

e
C := Ti′k jk (ϕ) B.
Temos
  1 0

..
   . 
   
  cos ϕ . . . − sin ϕ
 
   
   .. .. 
B= Ak−1   . .

   
  
sin ϕ ... cos ϕ

   
   ..

  
 .


0 1
e
1 0
 
..

 . 

cos ϕ ... sin ϕ
 
 
 .. .. 
C= . .  B.
 
 

 − sin ϕ . . . cos ϕ 

 .. 
 . 
0 1
Para os elementos {bpq } e {cpq } de B e de C obtemos

bpq = apq para q 6= i, j,

(1) bpi = api cos ϕ + apj sin ϕ,

bpj = −api sin ϕ + apj cos ϕ,

cpq = bpq para p 6= i, j,

(2) ciq = biq cos ϕ + bjq sin ϕ,

cjq = −biq sin ϕ + bjq cos ϕ.

Denotemos por
2
X
σ̃ 2 = |cpq | ,
p6=q
2
X
σ2 = |apq | .
p6=q
198 Capı́tulo5. Cálculo de Autovalores de Matrizes

Esta são as somas a serem investigadas para a matriz transformada e para a


matriz inicial. Observemos que a transformação muda apenas os elementos das
i-ésima e j-ésima linhas e colunas. Considerando que Ak−1 e C são simétricas,
obtemos
X X
σ̃ 2 = σ 2 + [c2iq + c2jq ] + [c2pi + c2pj ]
q6=i,j p6=i,j
X X
− [a2iq + a2jq ] − [a2pi + a2pj ]
q6=i,j p6=i,j

+ 2c2ij − 2a2ij .

Pelas fórmulas (1) e (2) temos


2 2
c2iq + c2jq = (aiq cos ϕ + ajq sin ϕ) + (−aiq sin ϕ + ajq cos ϕ)

= a2iq + a2jq , q 6= i, j.

Analogamente,

c2pi + c2pj = b2pi + b2pj

2 2
= (api cos ϕ + apj sin ϕ) + (−api sin ϕ + apj cos ϕ)

= a2pi + a2pj q 6= i, j.

Além disso,

2c2ij = 2[bij cos ϕ + bjj sin ϕ]2

= 2[(−aii sin ϕ + aij cos ϕ) cos ϕ + (−aji sin ϕ + ajj cos ϕ) sin ϕ]2

1
= [−aii sin 2ϕ + 2aij cos 2ϕ + ajj sin 2ϕ]2
2
1
= [−(aii − ajj ) sin 2ϕ + 2aij cos 2ϕ]2 .
2
Consequentemente,
1 2
(3) σ̂ 2 = σ 2 − 2a2ij + [−(aii − ajj ) sin 2ϕ + 2aij cos 2ϕ] .
2
Assim, σ̂ 2 é mı́nimo se

(4) i, j : |aij | = max{|apq | : p 6= q}


5.2 Método de Jacobi 199

(5) −(aii − ajj ) sin 2ϕ + 2aij cos 2ϕ = 0.

Por (4) determinamos os ı́ndices ik e jk da transformação Tik jk (ϕk ) e, por (5),


determinamos ϕk .
Desta forma,
2aij
tan 2ϕ = =: s.
aii − ajj
1
Portanto, ϕ = 2 arctan s e, consequentemente,
arctan s
sin ϕ = sin
2
arctan s
cos ϕ = cos .
2
Usando as fórmulas
r
α 1 − cos α
sin = ± ,
2 2
r
α 1 + cos α
cos = ± ,
2 2
1
| cos(arctan s)| = √ ,
1 + s2
obtemos
r
1 − cos arctan s
sin ϕk = sign s
2
½ µ ¶¾ 12
1 1
= sign s 1− √ ,
2 1 + s2

r
1 + cos arctan s
cos ϕk =
2
½ µ ¶¾ 12
1 1
= 1+ √ .
2 1 + s2
Nesta forma as fórmulas são mais convenientes para serem programadas.
Agora, vamos mostrar que o processo descrito é convergente.
De fato, pela desigualdade (3), aplicada ao (k + 1)-ésimo passo, com os
correspondentes parâmetros ik , jk e ϕk , obtemos
(k) 2
2
(6) σk+1 = σk2 − 2(aik ,jk ) .
200 Capı́tulo5. Cálculo de Autovalores de Matrizes

(k)
Mas, aik ,jk tem o maior módulo de todos os elementos fora da diagonal principal
de Ak . Logo,
(k) 2 σk2
(aik ,jk ) ≥ .
n(n − 1)
Por esta desigualdade e por (6) chegamos à estimativa

σk2
µ ¶
2 2 2 2
σk+1 ≤ σk − 2 = σk 1 −
n(n − 1) n(n − 1)
µ ¶2
2 2
≤ σk−1 1− ≤ ···
n(n − 1)
µ ¶k+1
2 2
≤ σ0 1 − .
n(n − 1)
2
Esta desigualdade implica que σk+1 → 0 quando k → ∞, o que significa que
Ak+1 converge para uma matriz diagonal. Vamos denotá-la por D. Portanto,
para k grande Ak ≈ D e os elementos diagonais de Ak são os autovalores
aproximados de A e as colunas da matriz
k−1
Y
Tk := Til ,jl ,
l=0

representam os autovetores aproximados de A. De fato, ¯lk é uma aproximação


para o autovetor de B = Tk−1 ATk . Logo,

Tk−1 ATk ¯lk ≈ λk ¯lk ,

ATk ¯lk ≈ λk Tk ¯lk .

Consequentemente, Tk ¯lk ( = k-ésima coluna de Tk ) é aproximação de um auto-


vetor de A.

Você também pode gostar