Prévia do material em texto
CAPÍTULO V INTERPOLAÇÃO POLINOMIAL CONCEITOS GERAIS INTERPOLAÇÃO DE LAGRANGE INTERPOLAÇÃO DE NEWTON-DIFERENÇAS DIVIDIDAS(DD) DIFERENÇAS FINITAS 2 5.1 Conceitos CAPÍTULO V INTERPOLAÇÃO POLINOMIAL Consiste em determinar um único polinômio de grau n que passa pelos n+1 pontos fornecidos. Embora exista um único polinômio de grau n que passa por n+1 pontos, há diversas fórmulas matemáticas para expressá-lo. Formas adequadas para implementação computacional: Newton e Lagrange 3 INTERPOLAÇÃO POLINOMIAL Suponhamos que conhecemos a função f em apenas em (n+1) pontos do intervalo [a,b] e que pretendemos conhece-la em qualquer outro ponto desse intervalo. Para tal vamos, com base nos pontos conhecidos, construir uma função que “substitua” f(x) dentro de um limite de precisão. Uma tal função designa-se por função aproximante. Seja, f uma função definida em A, f: A⊆ ℜ→ℜ, e admitamos que são conhecidos os pontos (X0, f(X0)), (X1, f(X1)), ..., (Xn, f(Xn)), com Xida Álgebra Linear, sabe-se que seu valor é dado por: 𝐝𝐞𝐭 𝐀 =ෑ 𝐢>𝐣 (𝐱𝐢 − 𝐱𝐣) . Como xi xj para i j, vem que det(A) 0. Logo, P(x) é único. Exemplo: Sejam os valores: x0 = 1, x1 = 0, x2 = 3 e x3 = 2. Determinar ς𝐢>𝐣(𝐱𝐢 − 𝐱𝐣) Resposta: 12 INTERPOLAÇÃO POLINOMIAL 18 5.4.1 Obtenção da Fórmula Sejam x0, x1, x2, ..., xn, (n + 1) pontos distintos e yi = f(xi), i = 0,1,..., n. Seja Pn(x) o polinômio de grau n que interpola f em x0, ..., xn. Podemos representar Pn(x) na forma Pn(x) = y0L0(x) + y1L1(x) + ... + ynLn(x), onde os polinômios Lk(x) são de grau n. Para cada i, queremos que a condição Pn(xi) = yi seja satisfeita, ou seja: Pn(xi) = y0L0(xi) + y1L1(xi) + ... + ynLn(xi) = yi A forma mais simples de se satisfazer esta condição é impor: Lk xi = ቊ 0 se k = i 1 se k ≠ i e, para isso, definimos Lk(x) por Lk = x − x0 x − x1 … x − xk−1 x − xk+1 …(x − xn) xk − x0 xk − x1 … xk − xk−1 xk − xk+1 …(xk − xn) INTERPOLAÇÃO POLINOMIAL 19 Como o numerador de Lk x é um produto de n factores da forma: (x - xi), i = 0, 1, ..., n, i k, então Lk x é um polinômio de grau n e, assim, Pn(x) é um polinômio de grau menor ou igual a n. Além disso, para x = xi, i = 0, ..., n temos: 𝐏𝐧 𝐱𝐢 = σ𝐤=𝟎 𝐧 𝐲𝐤𝐋𝐤 𝐱𝐢 = 𝐲𝐢𝐋𝐢(𝐱𝐢 )= 𝐲𝐢 Então, a interpolação de Lagrange para o polinômio interpolador é: 𝐏𝐧 𝐱 = 𝐤=𝟎 𝐧 𝐲𝐤𝐋𝐤 𝐱 Onde Lk(x) = ςj=0 i≠k n x−xj xk−xj INTERPOLAÇÃO POLINOMIAL 20 Pn x = k=0 n [yk ∗ෑ j=0 i≠k n x − xj xk − xj ], é a fórmula da interpolação lagrangeana. Exemplo 1: Determinar o polinômio de interpolação de Lagrange para a função conhecida pelos pontos tabelados abaixo e o resultado em P(0.5): Resposta: P(0,5)=0.25 i xi yi 0 0 0 1 1 1 2 2 4 INTERPOLAÇÃO POLINOMIAL 21 Exercício 1: Determinar o polinômio interpolador de Lagrange para a função conhecida pelos pontos da tabela abaixo: Resposta: P3 x = x3 − 4𝑥 + 1 i xi yi 0 -1 4 1 0 1 2 2 1 3 3 16 INTERPOLAÇÃO POLINOMIAL 22 5.6 Interpolação de Newton com Diferenças Divididas 5.6.1 Diferenças Divididas Seja f(x) uma função tabelada em n + 1 pontos distintos x0, x1, x2, ... xn. Definimos o operador diferenças divididas por: f x0 = f x0 f x0, x1 = f x1 − f x0 x1 − x0 = f x1 − f x0 x1 − x0 f x0, x1, x2 = f x1, x2 − f x0, x1 x2 − x0 ......................................................... f x0, x1, x2, … , xn = f x1, x2, … , xn − f x0, x1, … , xn−1 xn − x0 INTERPOLAÇÃO POLINOMIAL 23 Diz-se que f[x0,x1,x2,...xk] é a diferença dividida de ordem k da função f(x) sobre os k + 1 pontos. Conhecidos os valores que f(x) assume nos pontos distintos x0, x1, x2, ... xn, pode-se construir a tabela: xi Ordem 0 Ordem 1 Ordem 2 ... Ordem n x0 f x0 f x0, x1 f x0, x1, x2 f x0, x1, x2, … , xn x1 f x1 f x1, x2 f x1, x2, x3 ... x2 f x2 f x2, x3 f x2, x3, x4 ... ... ... ... ... xn−2 f xn−2 f xn−2, xn−1f xn−2, xn−1, xn ... xn−1 f xn−1 f xn−1, xn .... xn f xn ... ... .... INTERPOLAÇÃO POLINOMIAL 24 O polinômio interpolador de Newton corresponde ao operador de grau n de diferenças divididas: 𝐏𝐧 𝐱 = 𝐟 𝐱𝟎 + 𝐟 𝐱𝟎, 𝐱𝟏 (x- 𝐱𝟎 )+ 𝐟 𝐱𝟎, 𝐱𝟏, 𝐱𝟐 (x- 𝐱𝟎 )(x- 𝐱𝟏 ) + 𝐟 𝐱𝟎, 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 (x-𝐱𝟎) (x-𝐱𝟏) (x-𝐱) (x-𝐱) … (x-𝐱𝐧−𝟏) Exemplo 1: Obter f(0.5) usando um polinômio interpolador de Newton do segundo grau . Considere a seguinte tabela: Resposta: 1.25 xi -1 0 1 2 3 f(xi) 2 1 2 5 10 INTERPOLAÇÃO POLINOMIAL 25 Exercício 1: Obter f(0.47) usando um polinômio interpolador de Newton do segundo grau (3 pontos). Considere a seguinte tabela: Resposta: P2 0,47 =0,27802 Exercício 2: Obter f(0.5) usando um polinômio interpolador de Newton do quarto grau (5 pontos). Considere a seguinte tabela Resposta: P4 0,5 =0, xi 0,2 0,34 0,4 0,52 0,6 0,72 f(xi) 0,16 0,22 0,27 0,29 0,32 0,37 xi -1 0 1 2 3 f(xi) 1 1 0 -1 -2 INTERPOLAÇÃO POLINOMIAL 26 5.7 Interpolação de Gregory-Newton Muitas vezes são encontrados problemas de interpolação cuja tabela de pontos conhecidos tem valores que são igualmente espaçados, ou seja: x1 - x0 = x2 - x1 = x3 - x2 = ... = xn - xn-1 = h Assim xi+1 - xi = h , para todo i, sendo h uma constante. xi = xi-1 + h xi = x0 + i * h 5.7.1 Diferenças Ordinárias ou Finitas ∆0f(x) = f(x) ∆1f(x) = f(x + h) - f(x) ∆2f(x) = ∆1 (x + h) - ∆1f(x) ... ∆𝑛f(x) = ∆𝑛−1f(x + h) - ∆𝑛−1f(x) INTERPOLAÇÃO POLINOMIAL 27 xi Ordem 0 Ordem 1 Ordem 2 ... Ordem n x0 f(x0) ∆1f(x0) ∆2f(x0) ∆𝑛f(x0) x1 f(x1) ∆1f(x1) ∆2f(x1) …. x2 f(x2) ∆1f(x1) ∆2f(x1) .... ... ... ... ... …. xn−2 f(xn−2) ∆1f(xn−2) ∆2f(xn−2) …. xn−1 f(xn−1) ∆1f(xn−1) .... .... xn f(xn) ... ... …. INTERPOLAÇÃO POLINOMIAL 28 5.7.2 Relação entre diferenças divididas e diferenças ordinárias Teorema: Se xj = x0 + j.h, para j = 0, 1, 2, ..., n, então f x0, x1, x2, … , xn = ∆nf(x0) n!hn Prova: f[x0] = f(x0) f x0, x1 = f x1 −f x0 x1−x0 = f x1 −f x0 x1−x0 = f x0+h −f x0 h = ∆1f(x0) h f x0, x1, x2 = f x1,x2 −f x0,x1 x2−x0 = ∆1f(x1) h − ∆1f(x0) h 2h = ∆2f(x0) 2h2 e por indução pode-se mostrar que esta regra é valida para valores maiores que 2. INTERPOLAÇÃO POLINOMIAL 29 5.7.3 Gregory-Newton usando Diferenças Ordinárias Partindo da formula original do método de Newton, que é: 𝐏𝐧 𝐱 = 𝐟 𝐱𝟎 + 𝐟 𝐱𝟎, 𝐱𝟏 (x- 𝐱𝟎 )+ 𝐟 𝐱𝟎, 𝐱𝟏, 𝐱𝟐 (x- 𝐱𝟎 )(x- 𝐱𝟏 ) + 𝐟 𝐱𝟎, 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 (x-𝐱𝟎) (x-𝐱𝟏) (x-𝐱) (x-𝐱) … (x-𝐱𝐧−𝟏) Podemos derivar a nova formula que utiliza as diferenças ordinárias: Pn(x) = f(x0) + ∆1f(x0) h (x-𝐱𝟎)+ ∆2f(x0) 2h2 (x-𝐱𝟎)(x-𝐱𝟏) + ∆nf(x0) n!hn (x-𝐱𝟎) (x- 𝐱𝟏) (x-𝐱) (x-𝐱) … (x-𝐱𝐧−𝟏) INTERPOLAÇÃO POLINOMIAL 30 Exemplo 1: Obter f(0.5) usando um polinômio interpolador de Gregory-Newton (G-N) do segundo grau(3 pontos). Considere a seguinte tabela: Resposta: P2 0,5 = 1,25 Exercício 1: Obter f(3.7) usando um polinômio interpolador de Gregory-Newton do terceiro grau (4 pontos), onde f(x) = ln(x). Considere a seguinte tabela: Resposta: P3 3,7 = 1,30225590 xi -1 0 1 2 3 f(xi) 2 1 2 5 10 xi 1 2 3 4 f(xi) 0 0,6931 1,0986 1,3863 31