28
8 May 2008 . 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

Embed Size (px)

Citation preview

Page 1: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

8 May 2008 . 20:02

Cálculo Numérico / Métodos Numéricos

Interpolação PolinomialFórmula de Newton

Page 2: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Interpolação polinomial

Interpolação de n+1 pontos através de um polinômio de grau n:

(x0,y0), (x1,y1), ... (xn,yn) polinômio

Page 3: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Lagrange

Através da definição de funções:

é possível obter o polinômio interpolatório sem resolver um sistema linear (fórmula de Lagrange).

Page 4: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Problema da fórmula de Lagrange

Imagine que se queira o polinômio para os pontos:

Como vimos, obtemos o polinômio: P(x) = x2-6x+8 que interpola estes pontos.

Porém, se adicionamos mais uma medida:

Temos que calcular todo o novo polinômio desde o princípio, sem poder fazer uso da informação que já temos (para os três primeiros pontos).

Page 5: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Fórmula de Newton

A fórmula interpolatória de Newton resolve este problema:

Para calcular o novo polinômio (para n+1 pontos), usamos o polinômio que já temos (que interpola os n primeiros pontos) e adicionamos novos termos.

Antes de aprender a fórmula interpolatória de Newton, vejamos uns conceitos mais básicos...

Page 6: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Diferenças divididas

Definimos as diferenças divididas de uma função através de uma fórmula recursiva:

Diferenças divididas de ordem 0:

Diferenças divididas de ordem superior:

diferença dividida de todos menos o primeirodiferença dividida de todos menos o último

último menos o primeiro

Page 7: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Diferenças divididas

Exemplo:

Tome a função f(x)=1/x e x0=1, x1=2, x2=4 e x3=5 e calcule f[x0,x1

,x2,x3]

f[x0] = f(x0)=1

f[x1] = f(x1)=1/2

f[x2] = f(x2)=1/4

f[x3] = f(x3)=1/5

f[x0,x1] = (f[x1]-f[x0])/(x1-x0) = -1/2f[x1,x2] = (f[x2]-f[x1])/(x2-x1) = -1/8f[x2,x3] = (f[x3]-f[x2])/(x3-x2) = -1/20

Page 8: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Diferenças divididas

Exemplo:

Tome a função f(x)=1/x e x0=1, x1=2, x2=4 e x3=5 e calcule f[x0,x1

,x2,x3]

f[x0] = f(x0)=1

f[x1] = f(x1)=1/2

f[x2] = f(x2)=1/4

f[x3] = f(x3)=1/5

f[x0,x1] = -1/2f[x1,x2] = -1/8f[x2,x3] = -1/20

f[x0,x1,x2] = (f[x1,x2] - f[x0,x1])/(x2-x0) = 1/8

f[x1,x2,x3] = (f[x2,x3] - f[x1,x2])/(x3-x1) = 12/160

Page 9: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Diferenças divididas

Exemplo:

Tome a função f(x)=1/x e x0=1, x1=2, x2=4 e x3=5 e calcule f[x0,x1

,x2,x3]

f[x0] = f(x0)=1

f[x1] = f(x1)=1/2

f[x2] = f(x2)=1/4

f[x3] = f(x3)=1/5

f[x0,x1] = -1/2f[x1,x2] = -1/8f[x2,x3] = -1/20

f[x0,x1,x2] = 1/8f[x1,x2,x3] = 4/160

f[x0,x1,x2,x3,x4] = (f[x1,x2,x3]-f[x0,x1,x2])/(x3-x0) = -1/40

Page 10: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Esquema prático

Page 11: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Esquema prático (exemplo)

x Ordem 0 Ordem 1 Ordem 2 Ordem 3

1

2

4

5

1

1/2

1/4

1/5

-1/2

-1/8

-1/20

1/8

4/160

-1/40

f(x)=1/x e x0=1, x1=2, x2=4 e x3=5. Calcule f[x0,x1,x2,x3]

Page 12: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Outra maneira de calcular

Teorema: Seja f(x) uma função contínua, (n+1) vezes diferenciável em [a,b]. Sejam x0, x1,... xn, (n+1) pontos distintos de [a,b].

Page 13: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Note que pela nova fórmula, vemos que a ordem dos pontos não importa, logo:

f[xo,x1, ..., xn] = f[xn, xn-1,... x1] = f[x2, x6, ...] = ...

Corolário I

uma permutação qualquer

Ou seja, diferenças divididas são funções simétricas.

Page 14: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

As diferenças divididas de ordem k de uma função satisfazem:

Corolário II

Ou seja, podemos fazer o cálculo "eliminando" quaisquer dois pontos, e não apenas o primeiro e o último.

Page 15: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Fórmula de Newton

Usando as idéias de diferenças divididas, definimos as funções abaixo:

...

(x x0)

(x x0,x1)

(x x0...xn)(calculadas usando o corolário 8.3)

Page 16: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Fórmula de Newton

Das equações definidas, temos:

um ponto (n=0)

dois pontos (n=1)

Page 17: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Para n+1 pontos:

= polinômio de interpolação sobre os pontos x0, x1... xn

Isto é: Pn(xk) = f(xk)

Pn(x)

Page 18: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Antes de provar, vejamos quem é Pn(x):P1(x) = f[x0] + (x-x0)f[x0,x1]

P2(x) = f[x0] + (x-x0)f[x0,x1] + (x-x0)(x-x1) f[x0,x1,x2]

Pn(x) = Pn-1(x) + (x-x0)...(x-xn-1) f[x0,x1,x2...xn]

P1(x)

Page 19: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Prova

Provaremos por indução a) Provaremos que é válido para n=1 (dois pontos) b) Provaremos que se é válido pra n=k-1, será válido para n=k.

a) Para n=1 (dois pontos), temos:

P1(x0) = f(x0) + (x0-x0) (f(x1)-f(x0))/(x1-x0) = f(x0)

P1(x1) = f(x0) + (x1-x0) (f(x1)-f(x0))/(x1-x0) = f(x1)

Page 20: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Prova

b)Suponha que seja válido para n=k-1, isto é:

Pk-1(xi) = f(xi), i=1,...,k-1.

Sabemos que: Pk(x) = Pk-1(x) + (x-x0)...(x-xk-1) f[x0,x1,...,xk]

Vamos provar em duas etapas. b1) i < k, então:Pk(xi) = Pk-1(xi) + (xi-x0)...(xi-xk-1) f[x0,x1,...,xk]

Pk(xi) = Pk-1(xi) = f(xi)

o termo (xi-xi) anula esta parte.

hipótese da indução

Page 21: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Prova

b2) i = kRetomemos a expressão de f

Pk(xk)

=0, para x= xk

logo, f(xk) = P(xk)

Page 22: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Exemplo

Dados os pontos abaixo, calcular o polinômio interpolatório, usando a fórmula de Newton.

Sabemos que:

Precisamos calcular: f[xo], f[x0,x1], f[x0,x1,x2]

Page 23: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Exemplo (solução)

Usando o esquema prático

15

8

-1

-1

0

3

-7

-3

1

logo:

Page 24: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Erro de truncamento Mais uma vez, retomando a expressão da função

f(x) em termos das diferenças divididas:Pk(xk)

logo:f(x)-Pn(x) = erro de truncamento =

Page 25: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Esquema prático

Se não nos interessa calcular a forma geral do polinômio, mas queremos calculá-lo apenas em um ponto, podemos usar a estratégia de pôr em evidência os termos comuns para facilitar os cálculos:

Exemplificando no caso P3:

Page 26: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Esquema prático

Page 27: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Esquema prático

Page 28: 8 May 2008. 20:02 Cálculo Numérico / Métodos Numéricos Interpolação Polinomial Fórmula de Newton

15 May 2008 . 20:41

Exemplo

Calcular o valor aproximado de f(1), dados os pontos,

f[x0] = 15f[x0,x1]= -7f[x0,x1,x2]= 1

1

1

1 2

-7 15

-6 3