Anda di halaman 1dari 13

Cálculo Numérico.

Interpolação e aproximação poliomial (Ficha teórica)

CÁLCULO NUMÉRICO

INTERPOLAÇÃO E APROXIMAÇÃO POLINOMIAL


FICHA TEÓRICA

São conhecidas três representações de dependências funcionais :


1) analítica; 2) gráfica; 3) tabelada.

Muitas funções são conhecidas apenas em um conjunto finito e discreto de pontos de um intervalo [a, b],
como a função y = f(x), dada pela tabela

i xi yi
0 x0 y0
1 x1 y1
2 x2 y2
3 x3 y3

Neste caso, tende-se que trabalhar com esta função e não se dispondo de sua forma analítica, pode-se
substituí-la por outra função, que é uma aproximação da função dada e que é deduzida a partir de dados
tabelados.

Além destas, podem-se também encontrar funções cuja forma analítica é muito complicada, fazendo com
que se procure uma outra função que seja uma aproximação da função dada e cujo manuseio seja bem
mais simples.

Exemplo.
A seguinte tabela apresenta o número de habitantes de uma cidade nos quatro últimos censos.

Ano 1970 1980 1990 2000


N de habitantes 352 744 683 578 1 243 234 1 845 576

Determinar:
a) o número aproximado de habitantes em 1995;
b) o ano no qual o número de habitantes era 500 000.

A interpolação nos ajuda a resolver o problema.

1. PROBLEMA DE INTERPOLAÇÃO. POLINÓMIO INTERPOLADOR

Seja uma função y = f(x) dada pela tabela

x0 x1 ... xn
y0 y1 ... yn

onde y0 = f(x0), y1 = f(x1), y2 = f(x2), … yn = f(xn).


Os pontos x0, x1, x2, … xn chamam-se aos pontos de interpolação.

É necessário encontrar uma expressão analítica F(x) da função tabelada dada, onde
y0 = F(x0) = f(x0), y1 = F(x1) = f(x1), ..., yn = F(xn) = f(xn).

Chama se à interpolação de função o processo de cálculo de valores de função em pontos x diferentes


de pontos de interpolação.

1
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

2. INTERPOLAÇÃO LINEAR

Sejam dois pontos de uma função linear y = f(x): (x0, y0) e (x1, y1). Calcularmos valor de função y em
ponto x que está entre x0 e x1.

O gráfico da função linear é uma recta, cuja equação é P1(x) = a0 + a1 x. Para determinar os coeficientes
a0 e a1 resolvemos o sistema de equações lineares nos pontos conhecidos x0 e x1 :
a0 + a1x0 = y0
a0 + a1x1 = y1
Sendo os coeficientes a0 e a1 do polinómio P1, podemos calcular valor da função y para qualquer x
que pertence ao intervalo [x0 , x1].

Exemplo 2.1 Seja a função y = f(x) definida pelos pontos (0; 1.35) e (1.00; 2.94). Determine
aproximadamente valor de f(0.73).

Resolução. P1(x) = a1x + a0 é o polinómio interpolador do 10 grau que passa pelos pontos dados.
P1(0) = a1 * 0 + a0 = 1.35 a0 = 1.35
P1(1) = a1 * 1 + a0 = 2.94 a1 = 1.59
Logo, P1(x) = 1.59 x + 1.35
P1(0.73) = 1.59 * 0.73 + 1.35 = 2.51

2. INTERPOLAÇÃO QUADRÁTICA

Se são conhecidos três pontos de tabela, o polinómio interpolador do 2o grau

P2(x) = a2x2 + a1x + a0,

A imagem geométrica de P2(x) é uma parábola.


Para determinar valores de a2, a1, a0 resolvemos o sistema de equações lineares a seguir:
a2x02 + a1x0 + a0 = y0
a2x12 + a1x1 + a0 = y1
a2x22 + a1x2 + a0 = y2
onde, os pontos (x0,y0), (x1,y1), (x2,y2) são os pontos de uma tabela.
Sendo os coeficientes a2, a1, a0 podemos calcular valor da função y para qualquer x que pertence ao
intervalo [ x0 ,x2 ].

2 sen 2 x
Exemplo 2.1 Seja a função f ( x) = . Ache polinómio interpolador para função dada.
x +1
Considere o intervalo [0; π /4]. Trabalhe com 3 casas decimais.
Resolução.
x f(x)
0 0
π /6 0.328
π /4 0.560
P2(x) = a2x2 + a1x + a0
P2(0) = a202 + a10 + a0 = 0
P2(π /6) = a2(π /6)2 + a1(π /6) + a0 = 0.328
P2(π /4) = a2(π /4)2 + a1(π /4) + a0 = 0.560

a0 = 0.
a1 = 0.452
a2 = 0.333
Assim, o polinómio interpolador é
P2(x) = 0.333 x2 + 0.452 x
3. INTERPOLAÇÃO DE LAGRANGE

2
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

As interpolações vistas anteriormente são casos particulares da interpolação de Lagrange. Será


determinado, agora, o polinómio interpolador de grau menor ou igual a n, sendo dados n+1 pontos
distintos.

Teorema 3.1 Sejam (xi, yi) ( i= 0, 1, ..., n) n+1 pontos distintos, isto é, xi ≠ xj para i ≠ j.
Existe um único polinómio P(x) de grau não maior que n, tal que P(xi) = yi, para todo i.

O polinómio Pn(x) pode ser escrito na forma:

Pn(x) = anxn + an-1xn-1 + ...+ a2x2 + a1x + a0


P(x) é, no máximo, de grau n, se an ≠ 0 e, para determiná-lo, deve-se conhecer os valores de a0, a1,..., an.
Como Pn(x) contém os pontos (xi, yi), i = 0, 1, ...,n, pode-se escrever que Pn(xi) = yi.
Logo,
a0 + a1x 0 + a 2 x 02 + ... + an x n0 = y0

a0 + a1x1 + a 2 x12 + ... + an x1n = y1
S= 
 ... ... ... ... ... ... ... ... ... ... ...
a + a1x n + a 2 x n2 + ... + an x nn = yn
 0

Resolvendo o sistema S, determina-se o polinómio Pn(x). Para provar que tal polinómio é único, basta
que se mostre que o determinante da matriz A, dos coeficientes das incógnitas do sistema S, é diferente
de zero. A matriz A é:
1 x0 x 02 ... xn0

1 x1 x12 ... x1n
A= 
... ... ... ... ...
1 xn xn2 ... xnn

Da Álgebra Linear, o determinante da matriz A é conhecido como determinante das potências e seu valor
é dado por:
det(A) = ∏( xi >j
i −x j )

Como xi ≠ xj para i ≠ j, vem que det(A) ≠ 0.


Logo, P(x) é único.

Fórmula de Lagrange

Sejam os n+1 polinómios pi(x) de grau n:


 p0 ( x ) = ( x − x1 )( x − x 2 )...( x − x n )
 p ( x ) = ( x − x )( x − x )...( x − x )
 1 0 2 n

 .......... .......... .......... .......... ..........

pn ( x ) = ( x − x 0 )( x − x1 )...( x − x n −1 )
ou na outra forma

pi(x)= ∏
j= 0
(x − x j )
, (i = 0, 1, ..., n)
j≠i

Tais polinómios possuem as seguintes propriedades:

a) pi(xi) ≠ 0, para todo i


b) pi(xj) = 0, para todo j ≠ i

e são conhecidos como polinómios de Lagrange.

3
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

Como o polinómio P(x) que se deseja encontrar é de grau n e contém os pontos (xi, yi), i=0, 1, ..., n, pode-
se escrevê-lo como uma combinação linear dos polinómios pi(x), i=0,1,...,n.

Então, Pn(x) = b0p0(x) + b1p1(x) + ...+ bnpn(x)


n
ou Pn(x) = ∑b p ( x)
i =0
i i (1)

E, assim, para se determinar Pn(x), devem-se calcular os valores de bi, i = 0,...,n.


n
Seja Pn(xk) = ∑b p ( x
i =0
i i k) = b0p0(xk) + b1p1(xk) + ...+ bnpn(xk)

Mas, como pi(xj) = 0 para todo i ≠ j e pi(xi) ≠ 0 para todo i, vem:


Pn(xk) = bk pk(xk).
Pn ( x k )
Logo bk =
Pk ( x k )
Como Pn(xi) = yi, vem:
yi
bi =
pi ( x i )
Substituindo o valor de bi em (1), vem:
n
yi
Pn(x) = ∑p ( x ) ⋅p ( x)
i =0 i i
i

ou
n
pi ( x )
Pn(x) = ∑y i =0
i ⋅
pi ( x i )
ou
( x − x 1 )( x − x 2 )...( x − x n ) ( x − x 0 )( x − x 2 )...( x − x n )
Pn ( x ) = y 0 + y1 + ...
( x 0 − x 1 )( x 0 − x 2 )...( x 0 − x n ) ( x 1 − x 0 )( x 1 − x 2 )...( x 1 − x n )
( x − x 1 )( x − x 2 )...( x − x n−1 )
+ yn
( x n − x 0 )( x n − x 1 )...( x n − x n−1 )
ou
n n (x − x )
∑ ∏ ( xi − x j )
j
Pn (x) = y i ⋅
i= 0 j= 0
j≠ i

Erro absoluto da fórmula de Lagrange calcula-se por seguinte modo :

max | f (n +1) ( x ) |
x∈[a,b]
| En ( x ) | = | f ( x ) −Pn ( x ) | ≤ * | ( x − x 0 )( x − x1)...( x − x n ) |
(n +1)!

Exemplo 3.1 A tabela abaixo relaciona a quantidade ideal de calorias, em função da idade e do peso,
para mulheres que possuem actividade física moderada e vivem a uma temperatura ambiente
média de 20o C. Determinar a cota aproximada de calorias para uma mulher de 25 anos e 46
quilos.

Cota de calorias (em kcal)


Peso
Idade (em anos)
(kg)
25 45 65
40 1750 1650 1400
50 2050 1950 1600
60 2350 2200 1850
70 2600 2450 2050

4
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

Resolução.
Construirmos uma tabela para nosso problema. Na qualidade de x escolhemos a coluna dos pesos. Na
qualidade de y usamos a coluna de calorias para mulheres de 25 anos.
n x y
0 40 1750
1 50 2050
2 60 2350
3 70 2600
No nosso exemplo:
n = 3 que determina o grau de polinómio interpolador;
x = 46.
Achar y(x).
Para resolução do problema utilizamos a fórmula de Lagrange.
( x − x1)( x − x 2 )( x − x 3 ) ( x − x 0 )( x − x 2 )( x − x 3 )
P3 ( x ) = y 0 + y1 +
( x 0 − x1)( x 0 − x 2 )( x 0 − x 3 ) ( x1 − x 0 )( x1 − x 2 )( x1 − x 3 )
( x − x 0 )( x − x1)( x − x 3 ) ( x − x 0 )( x − x1)( x − x 2 )
+ y2 + y3
( x 2 − x 0 )( x 2 − x1)( x 2 − x 3 ) ( x 3 − x 0 )( x 3 − x1)( x 3 − x 2 )

( 46 − 50 )( 46 − 60 )( 46 − 70 ) ( 46 − 40 )( 46 − 60 )( 46 − 70 )
P3 ( 46 ) = 1750 + 2050 +
( 40 − 50 )( 40 − 60 )( 40 − 70 ) (50 − 40 )( 50 − 60 )( 50 − 70 )
= 1927.20 kcal
( 46 − 40 )( 46 − 50 )( 46 − 70 ) ( 46 − 40 )( 46 − 50 )( 46 − 60 )
+ 2350 + 2600
( 60 − 40 )( 60 − 50 )( 60 − 70 ) (70 − 40 )( 70 − 50 )( 70 − 60 )

4. DIFERENÇAS FINITAS

4.1. Conceito da diferença finita

Consideremos uma função tabelada onde valores de xi (i = 0,1,...,n) são igualmente espaçados, isto é,
xi+1 – xi = h, para todo i, sendo h uma constante.

Definimos a diferença finita de modo seguinte :


• da 1a ordem : ∆ yi = yi+1 – yi
• da 2a ordem : ∆ 2yi = ∆ yi+1 – ∆ yi
• da 3a ordem : ∆ 3yi = ∆ 2yi+1 – ∆ 2yi
.........................................................
• da ordem n : ∆ nyi = ∆ n-1yi+1 – ∆ n-1yi

i x y ∆yi ∆2yi ∆3yi ∆4yi ∆5yi


0 x0 y0
∆0
1 x1 y1 ∆20
∆1 ∆30
2
2 x2 y2 ∆ 1 ∆40
3
∆2 ∆ 1 ∆50
2 4
3 x3 y3 ∆ 2 ∆ 1
∆3 ∆32
4 x4 y4 ∆23
∆4
5 x5 y5

5
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

Exemplo 4.1.1. Seja a função tabelada. Calcular diferenças finitas ∆.

i x y ∆yi ∆2yi ∆3yi ∆4yi


0 3.5 9.82
1.09
1 4.0 10.91 0.05
1.14 -0.10
2 4.5 12.05 - 0.05 2.11
1.09 2.01
3 5.0 13.14 1.96
3.05
4 5.5 16.19

Podemos rescrever a tabela na forma mais compacta:


i xi yi ∆ yi ∆ 2yi ∆ 3yi ∆ 4yi
0 3.5 9.82 1.09 0.05 - 0.10 2.11
1 4.0 10.91 1.14 - 0.05 2.01
2 4.5 12.05 1.09 1.96
3 5.0 13.14 3.05
4 5.5 16.19

Chamam-se às diferenças descendentes de yi a sequência das diferenças finitas ∆ yi, ∆ 2yi, ∆ 3yi, ... .
Por exemplo, as diferenças descendentes de y0 são valores: 1.09, 0.05, -0.10, 2.11.

Pode-se usar outra notação para diferenças finitas.


Definimos a diferença finita de modo seguinte :
• da 1a ordem : ∇ yi = yi – yi-1
• da 2a ordem : ∇ 2yi = ∇ yi – ∇ yi-1
• da 3a ordem : ∇ 3yi = ∇ 2yi – ∇ 2yi-1
.........................................................
• da ordem n : ∇ nyi = ∇ n-1yi – ∇ n-1yi-1

i x y ∇ yi ∇ 2yi ∇ 3yi ∇ 4yi ∇ 5yi


0 x0 y0
∇0
1 x1 y1 ∇ 20
∇1 ∇ 30
2 x2 y2 ∇ 2
1 ∇ 40
∇2 ∇ 3
1 ∇ 50
3 x3 y3 ∇ 2
2 ∇ 4
1

∇3 ∇ 32
4 x4 y4 ∇ 23
∇4
5 x5 y5

Exemplo 4.1.2. Calcular diferenças finitas ∇ .

i x y ∇ yi ∇ 2yi ∇ 3yi ∇ 4yi


0 3.5 9.82
1.09
1 4.0 10.91 0.05
1.14 -0.10
2 4.5 12.05 - 0.05 2.11
1.09 2.01
3 5.0 13.14 1.96

6
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

3.05
4 5.5 16.19
Podemos rescrever a tabela na forma mais compacta:

i xi yi ∇ yi ∇ 2yi ∇ 3yi ∇ 4yi


0 3.5 9.82
1 4.0 10.91 1.09
2 4.5 12.05 1.14 0.05
3 5.0 13.14 1.09 - 0.05 - 0.10
4 5.5 16.19 3.05 1.96 2.01 2.11

Chamam-se às diferenças ascendentes de yi a sequência das diferenças finitas ∇ yi, ∇ 2yi, ∇ 3yi, ... .
Por exemplo, as diferenças ascendentes de y3 são valores: 1.09, -0.05, -0.10.

4.2 Fórmulas de Newton com diferenças finitas

Sendo h um passo de interpolação


h = xi+1 – xi ,
qualquer x de tabela pode ser apresentado
x = x0 + qh .
Daqui
x − x0
q=
h
1a Fórmula de Newton para interpolação no início de tabela (com diferenças finitas descendentes),
omitido a demonstração é

q( q −1) 2 q( q −1)( q − 2) 3 q( q −1)( q − 2)...( q − n + 1) n


Pn ( x ) = y 0 + qΔy 0 + Δ y0 + Δ y 0 + ... + Δ y 0 + En ( x )
2! 3! n!
onde, En(x) é erro absoluto da 1a fórmula de Newton.

hn +1
| En ( x ) |≤ ⋅ q( q −1)( q −2)...( q −n) ⋅Mn +1, onde Mn +1 = max f (n +1) ( x )
(n +1)! x∈[a,b ]

2a Fórmula de Newton para interpolação no fim de tabela (com diferenças finitas ascendentes) é

q( q +1) 2 q( q +1)( q + 2) 3 q(q +1)( q + 2)...( q + n −1) n


Pn ( x ) = yn + q∇yn + ∇ yn + ∇ yn + ... + ∇ yn + En ( x
2! 3! n!
onde, En(x) é erro absoluto da 2a fórmula de Newton.

hn +1
| En ( x ) |≤ ⋅q(q +1)( q +2)...( q +n) ⋅Mn +1 , onde Mn +1 = max f (n +1) ( x )
(n +1)! x∈[ a ,b ]

Exemplo 4.2.1 Usando os dados da tabela anterior calcular


a) y(3.7)
b) y(5.4)
Resolução.
a) O argumento x = 3.7 está no início da tabela. Portanto, para cálculo do valor da função y(3.7)
usamos a 1a fórmula de Newton.

q( q −1) 2 q( q −1)( q − 2) 3 q( q −1)( q − 2)...( q − n + 1) n


Pn ( x ) = y 0 + qΔy 0 + Δ y0 + Δ y 0 + ... + Δ y0
2! 3! n!
Determinamos o coeficiente q.

h = xi+1 – xi; h = 4.0 – 3.5 = 0.5;

7
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

x − x0
x0 = 3.5; q= ; q = (3.7 – 3.5) / 0.5 = 0.4.
h

As diferenças descendentes para y0 são: 1.09 , 0.05, - 0.10 , 2.11.

P(3.7) = 9.82 + 0.4 * 1.09 + 0.4 (0.4 – 1) 0.05 / 2 + 0.4 (0.4 – 1) (0.4 – 2) (-0.10) / 6 +
+ 0.4 (0.4 – 1) (0.4 – 2) (0.4 – 3) (2.11) / 24 =
= 9.82 + 0.436 – 0.006 – 0.0064 – 0.08778 = 10.16

b) O argumento x = 5.4 está no fim da tabela. Portanto, para cálculo do valor da função y(5.4)
usamos a 2a fórmula de Newton.

q( q + 1) 2 q( q + 1)( q + 2) 3 q( q + 1)( q + 2)...( q + n − 1) n


Pn ( x ) = y n + q∇y n + ∇ yn + ∇ y n + ... + ∇ yn
2! 3! n!

h = xi+1 – xi ; h = 5.5 – 5.0 = 0.5


x − xn
xn = 5.5; q = ; q = (5.4 – 5.5) / 0.5 = - 0.2.
h
As diferenças ascendentes para yn são: 3.05 , 1.96, 2.01 , 2.11.

P(5.4) = 16.19 - 0.2 * 3.05 - 0.2 (-0.2 + 1) 1.96 / 2 - 0.2 (-0.2 + 1) (-0.2 + 2) (2.01) / 6 -
- 0.2 (-0.2 + 1) (-0.2 + 2) (-0.2 + 3) (2.11) / 24 =
= 16.19 – 0.61 – 0.1568 – 0.09648 – 0.07090 = 15.26

5. DIFERENÇAS DIVIDIDAS

5.1 Conceito de diferenças divididas


Seja uma função y = f(x) definida em pontos (x i, yi), (i = 0,1,2, n) de tal modo que y 0 = f(x0), y1 = f(x1), ...,
yn = f(xn).
Primeira derivada da função f(x) em ponto x0 determina-se por:
f ( x) − f ( x 0 )
f ' ( x 0 ) = lim
x →x 0 x − x0
A diferença dividida da 1a ordem é definida como uma aproximação da primeira derivada:
f ( x ) − f ( x0 ) y − y0
[ x, x 0 ] = =
x − x0 x − x0
Fazendo x = x1, tem-se a diferença dividida da 1a ordem em relação aos argumentos x0 e x1
f ( x1) − f ( x 0 ) y1 − y 0
[ x1, x 0 ] = =
x1 − x 0 x1 − x 0
É fácil verificar que [x1,x0] = [x0,x1] :
f ( x0 ) − f ( x1) y 0 − y1
[ x0 , x1] = =
x 0 − x1 x 0 − x1
Em relação aos argumentos x1 e x2 obtemos
y − y2
[ x1, x 2 ] = 1
x1 − x 2
Em geral, a diferença dividida de 1a ordem pode ser definida por:

8
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

y − yi +1
[ xi, xi+1] = i
xi − xi +1

Chamam se às diferenças divididas da 2a ordem as seguintes relações:


[ x 0 , x1] − [ x1, x 2 ]
[ x 0 , x1, x 2 ] =
x0 − x2

[ x1, x 2 ] − [ x 2, x 3 ]
[ x1, x 2, x 3 ] =
x1 − x 3
............................................
[ xi, xi+1] − [ x i+1, xi+2 ]
[ x i, x i+1, xi+2 ] =
x i − xi+2

Genericamente, a diferença dividida de ordem n é dada por:


[ xi, xi+1,..., xi+n −1] − [ xi+1, xi+2 ,..., xi+n ]
[ xi, xi+1,..., xi+n ] =
xi − xi+n

Exemplo 5.1.1. Seja a função tabelada y = f(x). Calcule as diferenças divididas.


i x y [xi,xi+1] [xi,xi+1,xi+2] [xi,xi+1,xi+2,xi+3]
0 0 10 10 2 1.8
1 1 20 20 20
2 5 100 200
3 10 1100

y − y1 10 − 20
1a ordem [ x 0 , x1] = 0 = = 10
x 0 − x1 0 −1

y 1 − y 2 20 − 100
[x1 , x 2 ] = = = 20
x1 − x 2 1− 5

y 2 − y 3 100 − 1100
[x 2 , x 3 ] = = = 200
x2 − x3 5 − 10
___________________________________________________
[x 0 , x1 ] − [x1 , x 2 ] 10 − 20
2a ordem [x 0 , x1 , x 2 ] = −= =2
x0 − x2 0−5

[ x 1 , x 2 ] − [ x 2 , x 3 ] 20 − 200
[x1 , x 2 , x 3 ] = = = 20
x1 − x 3 1 − 10
___________________________________________________
[ x 0 , x1, x 2 ] − [ x1, x 2, x 3 ] 2 − 20
3a ordem [ x 0 , x1, x 2, x 3 ] = = = 1 .8
x0 − x3 0 − 10

9
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

5.2 Fórmula de Newton para interpolação com diferenças divididas

Seja uma função tabelada y = f(x), e P(x) é um polinómio interpolador de grau n. Pela definição da
diferença dividida tem-se :
y − y 0 P( x ) − P( x 0 )
[ x, x 0 ] = =
x − x0 x − x0
Daqui:
P(x) =P(x0) + [x,x0] (x – x0) (1) (1a ordem)

[ x, x0 ] − [ x 0 , x1]
[ x, x 0 , x1] =
x − x1
Representamos [x,x0]:
[x,x0] = [x0,x1] + [x,x0,x1] (x – x1)
Substituímos o valor [x,x0] na expressão (1):
P(x) = P(x0) + ( [x0,x1] + [x,x0,x1] (x – x1) ) (x – x0) =
P(x0) + [x0,x1] (x – x0) + [x,x0,x1] (x – x0) (x – x1) (2) (2a ordem)

[ x, x 0 , x 1 ] − [ x 0 , x 1 , x 2 ]
[ x, x 0 , x 1 , x 2 ] =
x − x2
Representamos [x,x0,x1]:
[x,x0,x1] = [x,x0,x1,x2] (x – x2) + [x0,x1,x2]
e substituímos o valor [x,x0,x1] na expressão (2):
P(x) = P(x0) + [x0,x1] (x – x0) + ([x,x0,x1,x2] (x – x2) + [x0,x1,x2]) (x – x0) (x – x1) =
P(x0) + [x0,x1]⋅ (x – x0) + [x0,x1,x2] (x – x0) (x – x1) + [x,x0,x1,x2] (x – x0) (x – x1) (x – x2)
(3a ordem)

Continuando o processo encontra-se :

P(x) = P(x0) + [x0,x1] (x – x0) + [x0,x1,x2] (x – x0) (x – x1) +


[x0,x1,x2,x3] (x – x0) (x – x1) (x – x2) + ... + [x0,x1,...,xn] (x – x0) (x – x1) ... (x – xn-1)

Última expressão apresenta a Fórmula de Newton com diferenças divididas.

Erro de interpolação:

10
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

max f (n +1) ( x )
|En(x)| ≤ | ( x − x )( x − x )( x − x )...( x − x ) | ⋅ x∈[ a,b]
0 1 2 n
(n +1)!

Exemplo 5.2.1. Determine o valor aproximado de y = f(3), usando os pontos de interpolação da tabela
anterior.
Resolução.
1. Calcular as diferenças divididas (são calculados já).
2. Escrevera fórmula de Newton com diferenças divididas.
P(x) = P(x0)+[x0,x1](x – x0)+[x0,x1,x2] (x– x0) (x – x1)+[x0,x1,x2,x3] (x – x0) (x – x1) (x – x2)
3. Achar y = f(3).
P(x) = 10 + 10 (x–0) + 2 (x-0)(x-1)+1.8(x-0)(x-1)(x-5) ;
P(3) = 10 + 10 (3–0) + 2 (3-0)(3-1)+1.8(3-0)(3-1)(3-5) = 10 + 30 + 12 - 21.6 = 30.4
P(3) = 30.4

6. INTERPOLAÇÃO INVERSA

O problema de interpolação inversa consiste em determinar um valor de x sendo um valor de y.

6.1. Fórmula de Lagrange para valores de argumento não em progressão aritmética.

Para construir a fórmula de Lagrange basta trocar os papeis de x e de y:


( y − y1)( y − y 2 )...( y − yn ) ( y − y 0 )( y − y 2 )...( y − yn ) ( y − y 0 )( y − y1)...( y − yn−
x = x0 + x1 + ... + xn
( y 0 − y1)( y 0 − y 2 )...( y 0 − yn ) ( y1 − y 0 )( y1 − y 2 )...( y1 − yn ) ( yn − y 0 )( yn − y1)...( yn − y

6.2. Fórmula de Newton com diferenças divididas para valores de argumento em progressão
aritmética

Um processo de resolver o problema de interpolação inversa consiste em usar diferenças divididas


supondo que os valores de função passam a ser os argumentos (isto é, trocam-se os papeis de x e y ), e
usar a fórmula interpoladora de Newton.

A tabela das diferenças divididas toma a forma

y = f(x) x 1a ordem 2a ordem 3a ordem ...


y0 x0 [y0, y1] [y0, y1, y2] [y0, y1, y2, y3]
y1 x1 [y1, y2] [y1, y2, y3]
y2 x2 [y2, y3]
y3 x3
... ... ... ... ... ...

11
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

Exemplo 6.2.1. Determine a partir da tabela o zero da função f(x) compreendido entre 1.3 e 1.4.

i 0 1 2 3
x 1.2 1.3 1.4 1.5
y = f(x) 0.472 0.103 - 0.344 - 0.875

Construímos a tabela de diferenças divididas, tomando os valores de f(x) como os argumentos.


y = f(x) x 1a ordem 2a ordem 3a ordem
0.472 1.2 - 0.2710 - 0.05797 - 0.01618
0.103 1.3 - 0.2237 - 0.03620
- 0.344 1.4 - 0.1883
- 0.875 1.5

[ y 0 , y1 ] = x1 − x 0 =
1.3 − 1.2
=
0.1
= −0.2710
y1 − y 0 0.103 − 0.472 − 0.369

[ y1, y 2 ] = x 2 − x1 =
1.4 − 1.3
=
0.1
= −0.2237
y 2 − y1 − 0.344 − 0.103 − 0.447

[ y 2 , y3 ] = x3 − x 2 =
1.5 − 1.4
=
0.1
= −0.1883
y3 − y 2 − 0.875 + 0.344 − 0.531

[ y 0 , y1, y 2 ] = [ y1, y 2 ] − [ y 0 , y1 ] = − 0.2237 + 0.2710 =


0.0473
= −0.05797
y2 − y0 − 0.344 − 0.472 − 0.816

[ y1, y 2 , y 3 ] = [ y 2 , y 3 ] − [ y1, y 2 ] = − 0.1883 + 0.2237 =


0.0354
= −0.03620
y 3 − y1 − 0.875 − 0.103 − 0.978

[ y 0 , y1, y 2 , y3 ] = [ y1, y 2 , y3 ] − [ y 0 , y1, y 2 ] = − 0.03620 + 0.05797 =


0.02177
= −0.01616
y3 − y0 − 0.875 − 0.472 − 1.347

Pela fórmula de Newton

y = y0 + [x0,x1](x – x0) + [x0,x1,x2](x – x0)(x – x1) + [x0,x1,x2,x3](x – x0)(x – x1)(x – x2),

substituindo x em vez de y obtemos:

x = x0 + [f0,f1](f – f0) + [f0,f1,f2](f – f0)(f – f1) + [f0,f1,f2,f3](f – f0)(f – f1)(f – f2)

x = 1.2 – 0.271 (0 – 0.472) – 0.05797 (0 – 0.472) (0 – 0.103) – 0.01616 (0 – 0.472) (0 – 0.103) (0 + 0.344)
= 1.2 + 0.1279 – 0.002818 – 0.0002703 = 1.325

Resposta. x = 1.325, f(x) = 0

12
Cálculo Numérico. Interpolação e aproximação poliomial (Ficha teórica)

13