Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Interpolação Polinomial, Notas de aula de Cálculo

Interpolação polinomial aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Tipologia: Notas de aula

2019

Compartilhado em 26/08/2019

ullysses-2
ullysses-2 🇧🇷

4

(1)

1 documento

1 / 26

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE FEDERAL DE OURO PRETO
Instituto de Ciências Exatas e Biológicas
Departamento de Computação
José Álvaro Tadeu Ferreira
Cálculo Numérico
Notas de aulas
Interpolação Polinomial
Ouro Preto
2013
(Última revisão em novembro de 2013)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Pré-visualização parcial do texto

Baixe Interpolação Polinomial e outras Notas de aula em PDF para Cálculo, somente na Docsity!

UNIVERSIDADE FEDERAL DE OURO PRETO

Instituto de Ciências Exatas e Biológicas

Departamento de Computação

José Álvaro Tadeu Ferreira

Cálculo Numérico

Notas de aulas

Interpolação Polinomial

Ouro Preto

(Última revisão em novembro de 2013)

Sumário

  • 1 - Introdução.........................................................................................................................
  • 2 - Existência e unicidade do polinômio interpolador
  • 3 - Erro de truncamento
  • 4 - Métodos de obtenção do polinômio interpolador.............................................................
    • 4.1 – Método de Lagrange
    • 4.2 – Método das diferenças divididas
      • 4.2.1 – O operador diferença dividida
      • 4.2.2 – O polinômio interpolador com diferenças divididas
    • 4.3 – Método das diferenças finitas ascendentes
      • 4.3.1 – O Operador Diferença Finita Ascendente
      • 4.3.2 – O polinômio interpolador com diferenças finitas ascendentes
  • 5 – Complexidade dos métodos de interpolação
  • 6 – Considerações finais
  • Anexos
    • a) Teorema do Valor Médio
    • b) Operador linear

As funções interpolantes polinomiais são as mais populares não só por suas propriedades algébricas, mas, sobretudo, pela justificativa fornecida pelo teorema de aproximação de Weierstrass que, de fato, garante a existência de um polinômio capaz de aproximar uma função f tão bem quanto se queira.

Teorema (Weierstrass) Se f é uma função contínua em um intervalo fechado [a, b], então, dado  > 0, existe algu- ma função polinomial, p , de ordem n = n(), tal que | f (x) – p (x)| < , para x  [a, b]

Apesar de justificar a existência da função interpolante polinomial, este teorema não é construtivo, isto é, não fornece modos ou critérios para a sua obtenção. Neste texto apresentam-se alguns dos procedimentos mais usuais para a obtenção de fun- ções interpolantes polinomiais.

Objetivo Sendo (xi, yi), i = 0, 1, ..., n; pontos, com abscissas distintas, de uma função y = f(x), obter o polinômio, y = p(x) tal que:

p(xi) = f(xi) = yi, i = 0, 1, ..., n

2 - Existência e unicidade do polinômio interpolador

Teorema 2. Se (xi, yi) i = 0, 1, ..., n; são (n + 1) pontos com abscissas distintas, de uma função, y = f(x), então existe um, e só um, polinômio, y = p(x), de grau máximo n, tal que: p(xi) = f(xi) = yi, i = 0, 1, ..., n Demonstração O objetivo é aproximar uma função, y = f(x), por um polinômio, y = p(x), ou seja, deseja- se obter

p( x) an xnan- 1 xn^1 ...a 1 xa 0 y

tal que p(xi) = f(xi) = yi para todo i = 0, 1, 2, ..., n

Com esta condição, tem-se:

n n nn n- 1 nn^11 n 0 n

1 n 1 n n- 1 1 n^11101

0 n n 0 n- 1 n 0 1 1 0 0 0

p(x ) a x a x ... a x a y

p(x ) a x a x ... a x a y

p(x ) a x a x ... a x a y

Que é um sistema de (n + 1) equações lineares com (n + 1) incógnitas a 0 , a 1 , a 2 , ..., an. A sua matriz dos coeficientes é dada por:

x x ...x 1

x x ...x 1

x x ...x 1 X nn nn (^1) n

1 n 1 n^11

n 0 n (^010)

Trata-se de uma ma matriz de Vandermonde. O seu determinante é calculado da seguinte maneira det(X) = (x 0 – x 1 ) (x 0 – x 2 ) ... (x 0 – xn) (x 1 – x 2 ) (x 1 – x 3 ) ... (x 1 – xn) ... (xn - 1 – xn)

Como, por condição, x 0 , x 1 , ..., xn são valores distintos, então tem-se que o determinante de X é não nulo e o sistema linear admite solução única. Portanto, existe um único polinômio, y = p(x), tal que p(xi) = f(xi) = yi, i = 0, 1, ..., n. Conclui-se, ainda, que o polinômio tem grau máximo n, uma vez que os coeficientes, ai, i = 0, 1, ..., n; podem assumir qualquer valor real, zero inclusive.

3 - Erro de truncamento

Teorema 3. Sejam: (i) (xi, yi), i = 0,1, ..., n pontos com abscissas distintas de uma função y = f(x); (ii) y = f(x) uma função com (n + 1) derivadas contínuas no intervalo [x 0 , xn]. Então, para cada x [x 0 , xn], existe um número ξ (x 0 , xn), que depende de x, tal que

(n 1)! f(x)-p(x) Et (x) (x-x 0 ).(x-x 1 )...(x-xn).fn^1 ( (x)) 

 ^  

Onde f n + 1(.) é a derivada de ordem (n + 1) de y = f(x) e y = p(x) é o polinômio que a in- terpola nos pontos (xi, yi), i = 0, 1, ..., n. A expressão (3.1) é chamada de termo do erro ou erro de truncamento. É o erro que se comete quando se substitui a função pelo polinômio que a interpola, no ponto x.

Este fenômeno demonstra que polinômios de grau elevado são normalmente pouco reco- mendáveis para a interpolação porque aumentam o erro em valores próximos aos extremos do intervalo de interpolação e melhoram a aproximação em valores próximos ao centro. O problema pode ser evitado usando interpolação polinomial por partes com polinômios de grau moderado. Desta forma, pode-se tentar diminuir o erro de interpolação aumentando o número de peças de polinômios usadas, em vez de aumentar o grau do polinômio. Exemplos típicos: interpolação linear por partes (uma reta para cada par de pontos) e inter- polação quadrática por partes (uma parábola para cada três pontos), curvas spline.

4 - Métodos de obtenção do polinômio interpolador

Os vários métodos para a determinação do polinômio interpolador têm em comum o con- ceito de que um polinômio nada mais é do que uma combinação linear de polinômios. O que difere um método do outro é a forma como este conceito é utilizado, ou seja, a maneira de como o polinômio interpolador é concebido.

4.1 – Método de Lagrange Neste método, o polinômio, y = L(x), que interpola uma função, y = f(x), em um conjunto de pontos (xi, yi), i = 0, 1, ..., n é concebido da forma L( x) y 0 .L 0 (x)y 1 .L 1 (x)yn.Ln(x) (4.1) onde os Li(x), i = 0,1, 2, ..., n. Para que este modelo resulte em um polinômio interpolador é necessário que L(xi) = f (xi) = yi, i = 0, 1, ..., n Sejam, então L(x 0 ) = y 0 .L 0 (x 0 ) + y 1 .L 1 (x 0 ) + y 2 .L 2 (x 0 ) + … + yn.Ln(x 0 ) Para que L(x 0 ) = y 0 é necessário que L 0 (x 0 ) = 1 e L 1 (x 0 ) = L 2 (x 0 ) = … = Ln(x 0 ) = 0 Considere-se agora L(x 1 ) = y 0 .L 0 (x 1 ) + y 1 .L 1 (x 1 ) + y 2 .L 2 (x 1 ) + … + yn.Ln(x 1 ) Para que L(x 1 ) = y 1 é necessário que L 1 (x 1 ) = 1 e L 0 (x 1 ) = L 2 (x 1 ) = … = Ln(x 1 ) = 0 Portanto, para que (4.1) seja o polinômio interpolador de y = f(x) nos pontos (xi, yi) os Li(x); i = 0,1, 2, ..., n; devem ser tais que Li(xi) = 1 Li(xj) = 0; i, j = 0,1, 2, ..., n; i  j Assim, os Li(x) são polinômios de grau n uma vez que cada um tem n zeros.

Para determinar cada Li(x), i = 0,1, ..., n; basta considerar que todo xj, j = 0, 1, ..., n; é um zero de Li(x) quando i  j. Seja a determinação de L 0 (x). Tem-se, por condição, que:

L 0 (x 0 ) = 1 L 0 (xj) = 0; j = 1, 2, ..., n

Portanto, conhecendo os zeros de L 0 (x), pode-se escrevê-lo na forma fatorada:

L 0 (x) = c 0 .(x – x 1 ).(x – x 2 ) ... (x – xn)

Para determinar o coeficiente c 0 basta considerar o valor numérico de L 0 (x) em x = x 0 que, por condição, é igual a 1.

L 0 (x 0 ) = c 0 .(x 0 – x 1 ).(x 0 – x 2 ) ... (x 0 – xn) = 1

(x x )(x x ) (x x ) c^1 (^0 0)  1 0  2 0  n

Tem-se, então, que

(x x )(x x ) (x x ) L (x) (x x )(x x ) (x x ) 0 1 0 2 0 n 0 1 2 n   

Seja, agora, a determinação de L 1 (x). Por condição, tem-se que

L 1 (x 1 ) = 1 L 1 (xj) = 0; j = 0, 2, ..., n

E, então, L 1 (x), pode ser escrito na forma

L 1 (x) = c 1 .(x – x 0 ).(x – x 2 ) ... (x – xn)

De modo análogo ao que foi feito anteriormente, para determinar o coeficiente c 1 basta considerar o valor numérico de L 1 (x) em x = x 1 que, por condição, é igual a 1, obtendo-se então

L 1 (x 1 ) = c 1 .(x 1 – x 0 ).(x 1 – x 2 ) ... (x 1 – xn) = 1

(x x )(x x ) (x x ) c^1 (^1 1)  0 1  2 1  n

Tem-se, então, que

Exemplo 4. Sendo y = f(x) uma função conhecida nos pontos:

i 0 1 2 xi 0,9 1 1, yi 0,6216 0,5403 0, Pede-se: (i) Utilizando interpolação polinomial, método de Lagrange, estimar o valor de y para x = 1,07. Solução O polinômio interpolador é: L(x) = y 0 .L 0 (x) + y 1 .L 1 (x) + y 2 .L 2 (x) Neste item, pede-se para calcular L(1,07) que é dado por:

L(1,07) = y 0 .L 0 (1,07) + y 1 .L 1 (1,07) + y 2 .L 2 (1,07) Tem-se que

L (x) (x(x--xx)()(xx--xx)) (0,9(x--1).(0,91).(x-1,1)-1,1) L 0 ( 1 , 07 ) -0, 0 1 0 2

0 ^12   

L (x) (x(x--xx )()(xx--xx)) (x(1--0,9).(10,9).(x--1,1)1,1) L 1 ( 1 , 07 ) 0, 1 0 1 2

1 ^02   

L (x) (x(x--xx )()(xx--xx)) (1,1(x--0,9).(1,10,9).(x-1)-1) L 2 ( 1 , 07 ) 0, 2 0 2 1

2 ^01   

Portanto L(1,07) = (0,6216).(-0,1050) + (0,5403).(0,5100) + (0,4536).(0,5950) ⇒ L(1,07) = 0,

(ii) Sabendo-se que os pontos dados são relativos à função y = cos(x), estimar o erro de truncamento máximo cometido no item (i). Solução Sabe-se que o erro de truncamento máximo cometido é dado por:

(n 1)! E (^) t (x) (x-x 0 ).(x-x 1 )...(x-xn). M  

onde M = máx|f n + 1(x)| no intervalo [x 0 , xn]. Tem-se que f ´´´(x) = sen(x), cujo módulo é máximo no intervalo [0,9; 1,1] para x = 1,1 e f ´´´(1,1) = 0,8912 = M. Sendo assim,

E (^) t ( 1 , 07 )|(1,07-0,9).(1,07- 1 ).(1,07-1,1)|.^0 ,^89123! E t( 1 , 07 )5,3x 10 -^5 0,

4.2 – Método das diferenças divididas 4.2.1 – O operador diferença dividida Definição 4. Dada uma função, y = f(x), a sua primeira derivada é definida como:

h

f '(x) lim f(x h)-f(x)

h 0

^ (4.5)

Sendo (xi, yi), i = 0, 1, ..., n; um conjunto de pontos da função, então:

h

f '(x) lim f(xi h)-f(xi)

i h 0

 Seja xi + h = xi + 1  h = xi + 1 - xi Sendo assim

i 1 i

i 1 i

i x x x -x

f'(x ) lim f(x )-f(x)

i i 1 

  (^) 

Definição 4. Sendo (xi, yi), i = 0, 1, ..., n; um conjunto de pontos, com abscissas distintas, de uma fun- ção y = f(x), define-se o operador diferença dividida de primeira ordem como:

i 1 i

i 1 i i 1 i i i^1 i

x -x

y -y

x -x

Dy f(x )-f(x )

 

 ^  , i = 0, 1, ..., n – 1 (4.7)

Observe-se que este operador nada mais é do que uma aproximação do valor numérico da primeira derivada de uma função em um ponto. Pode ser demonstrado que as diferenças divididas de ordem superior são aproximações para as derivadas de ordem superior. A diferença dividida de segunda ordem é definida como:

i 2 i

(^2) i i 1 i x - x D y Dy -Dy 

  , i = 0, 1, ..., n – 2 (4.8)

A diferença dividida de terceira ordem é definida como:

i 3 i

(^3) i^2 i 1 2 i x - x D y D y -D y 

  , i = 0, 1, ..., n – 3 (4.9)

Somando-se as duas equações, tem-se:

Y 1 -Y 0 + Y 2 -Y 1 = Dy 0 (x 1 -x 0 ) + Dy 1 (x 2 -x 1 )

Y 2 – Y 0 = Dy 0 (x 1 -x 0 ) + Dy 1 (x 2 -x 1 ) (4.17)

Explicitando a 2 em (4.16), tem-se que:

(x x )(x x 1 ) a Y -Y -Dy(x x ) 2 0 2 2 2 0 0 2 0  

Tendo em vista (4.17), vem que:

(x x )(x x 1 ) a Dy(x x ) Dy(x x)-Dy (x x ) 2 0 2 2 0 1 0 1 2 1 0 2 0  

a 2 Dy.x Dy.x(xDyx(x)(x xx) 1 - )Dyx Dy.x 2 0 2

0 1 0 0 1 2 1 0 2 0 0        (x x )(x x 1 )

Dy(x x)-Dyx Dy.x 2 0 2

1 2 1 0 2 0 1     

a 2 Dy((xx xx))(-Dyx (xx 1 ) x) 2 0 2

1 2 1 0 2 1     

Portanto

2 0 2 1 0 x -x a Dy -Dy (4.18)

Com base na definição 4.8, conclui-se que 4.18 é a diferença dividida de segunda ordem. Sendo assim

a 2 = D^2 y 0 (4.19)

Considerando os resultados (4.13), (4.15) e (4.19), pode-se concluir que: ai = Diy 0 , i = 0, 1, ... n e que 4.12 é um polinômio da forma:

p(x) = y 0 + (x – x 0 ) .Dy 0 + (x – x 0 )(x – x 1 ) .D^2 y 0 + ... + (x – x 0 )(x – x 1 ) ... (x – xn - 1 ).Dny 0 (4.20)

Teorema 4.1 (Valor Médio de Lagrange Generalizado) Se y = f(x) é uma função com n derivadas contínuas no intervalo [x 0 , xn], então existe um ponto ξ ∈ [x 0 , xn] tal que

n! Dn^ y 0 f^ n() (4.21) Demonstração Seja e(x) = f(x) – p(x) Onde p(x) é o polinômio que interpola f(x) nos pontos dados. Assim sendo, a função e(x) tem n + 1 zeros distintos, o que implica, pelo Teorema de Rolle Generalizado, que e`(x) tem n zeros em [x 0 , xn] e, assim, sucessivamente. Assim, conclui-se que existe um ξ ∈ [a,b] tal que en(ξ) = 0. Ou seja

0 = f n(ξ) – pn(ξ) ⇒ 0 = f n(ξ) – Dny 0 .n! c.q.d. Corolário 4. Sob as hipóteses do teorema anterior, tem-se que

n! Dn^ f(x)f^ n(x) (4.22) Corolário 4. Se y = f(x) e suas derivadas até a ordem (n + 1) são contínuas no intervalo [x 0 , xn], então: ET(x) ≤ |(x – x 0 ). (x – x 1 ). .... (x – xn)|.máx|Dn + 1f(x)|

Tendo em vista o teorema 4.1 e o corolário 4.2, na ausência de informação sobre f n + 1(x), uma estimativa para o erro de truncamento máximo pode ser obtida utilizando-se uma dife- rença dividida de ordem (n + 1), caso estas não variem muito.

Exemplo 4. A tabela a seguir apresenta valores da voltagem, V, em função da corrente elétrica, I. Utili- zando interpolação polinomial, método das diferenças divididas, estimar o valor de V quando I = 3A.

i 0 1 2 3 I = xi 1 2 4 8 V = yi 120 94 75 62

p(x) = y 0 + (x - x 0 ).Dy 0 + (x - x 0 ).(x – x 1 ).D^2 y 0 p(2) = 8 + (2 - 0).(- 1,6) + (2 - 0).(2 – 5).(0,169)  p(2) = 3,786m

b) Pede-se para determinar a altura y da barra a 2m da parede A. Os pontos a considerar e as diferenças divididas estão na tabela a seguir.

i xi yi Dyi D^2 yi 0 0 8 1 2 y 2 5 0

Para que este trecho seja representado por um polinômio de grau um, é necessário que a diferença dividida de segunda ordem seja nula. Então, fazendo:

y = 4,8m

4.3 – Método das diferenças finitas ascendentes 4.3.1 – O Operador Diferença Finita Ascendente Definição 4. Sendo (xi, yi), i = 0, 1,... , n; pontos de uma função, y = f(x), tais que xi + 1 – xi = h = cons- tante; i = 0, 1,... , n – 1; define-se a diferença finita ascendente de primeira ordem como:

∆f(x) = f(x + h) – f(x) (4.24)

Em um ponto xi tem-se que

∆f(xi) = f(xi + h) – f(xi) ∆yi = yi + 1 – yi, i = 0, 1, 2, ..., n – 1 (4.25)

Da definição (4.24), verifica-se que o operador ∆(.) é linear (ver anexo), sendo assim, as diferenças finitas ascendentes de ordem superior são definidas, por recorrência, da seguinte maneira. Segunda ordem.

∆[∆yi] = ∆[yi + 1 – yi] ∆^2 yi = ∆yi + 1 – ∆yi, i = 0, 1, 2, ..., n – 2 (4.26)

Terceira ordem.

∆[∆^2 yi] = ∆[∆yi + 1 – ∆yi,] ∆^3 yi = ∆^2 yi + 1 – ∆^2 yi, i = 0, 1, 2, ..., n – 3 (4.27)

Generalizando, tem-se que a diferença finita ascendente de ordem k é definida como:

∆kyi = ∆k - 1yi + 1 – ∆k - 1yi 

i 0,1,...,n- k k 1,2,...,n (4.28)

Sendo a diferença finita ascendente de ordem zero definida como:

∆^0 yi = yi; i = 0, 1, 2, ..., n (4.29)

As diferenças finitas ascendentes estão intimamente relacionadas com as derivadas de uma

função. Tendo em vista as definições 4.1 e 4.3, verifica-se que fh(x) é uma aproximação

para a primeira derivada de uma função y = f(x). O teorema a seguir generaliza esta idéia.

Teorema 4. Sendo y = f(x) uma função com derivadas contínuas até a ordem k, tem-se que:

∆kf(x) = hk.f (k)(k) para algum k ∈ (x, x + k.h) (4.30) Demonstração A demonstração será feita por indução sobre k. Base de indução: a relação vale para k = 1 ∆f(x) = f(x + h) – f(x) = h.f ’(ξ) (Teorema do Valor Médio)

Hipótese de indução Admita-se que a relação vale para k – 1. ∆k^ –^1 f(x) = hk^ –^1 .fk^ –^1 (ξk – 1 ), ξk – 1 ∈ (x, x + (k – 1).h)

Passagem de indução Provar que a relação é válida para k. ∆k[f(x)] = ∆k - 1[∆[f(x)]] = ∆k - 1[f(x + h) − f(x)] = ∆k - 1[f(x + h)] − ∆k - 1[f(x)]

∆k - 1[f(x + h)] = hk - 1f(k−1)(μ 1 ) com μ 1 ∈ (x + h, x + h + (k − 1)h) = (x + h, x + h.k) ∆k−1[f(x)] = hk−1f(k−1)(μ 2 ) com μ 2 ∈ (x, x + (k − 1)h)

Passagem de indução Provar que é válido para ordem k. Por definição

i k i

k i k^1 i 1 k^1 i x x D y D y D y 

   , i = 0,1, 2, … , n – k

Sendo xi + k – xi = k.h, ,tem-se que

k.h

h .(k 1 )!

y h .(k 1 )!

y D y

k 1

k (^1) i k 1

k (^1) i 1 k (^) i 

 

 

, i = 0,1, 2, … , n – k

h.h .k.(k 1 )!

D y y - y k 1

k i k^1 i 1 k^1 i 

   , i = 0,1, 2, … , n - k

Portanto

h .k!

D y y k

k (^) ik i , k = 0, 1, 2, ..., n; i = 0, 1, 2, ..., n – k c.q.d.

Seja a variável

h z x-x^0 (4.32)

De onde vem que x = x 0 + h.z x - x 0 = h.z x – x 1 = x – (x 0 + h) = x – x 0 – h = h.z – h = h.(z – 1) x – x 2 = x – (x 0 + 2.h) = x – x 0 – 2.h = h.z – 2.h = h.(z – 2) . . . x – xn - 1 = h.[z – (n - 1)]

Efetuando as substituições no polinômio interpolador com diferenças divididas, 4.21, ob- tém-se que o polinômio interpolador com diferenças finitas ascendentes:

(^0 002030) n! ny 0 y ... z(z^1 )...[z (n^1 )] 3! y z(z^1 )(z^2 ) 2! p( x h.z)y z.y z(z^1 )           (4.33)

Exemplo 4. Os pontos a seguir relacionam a solubilidade, S, da água no óleo mineral, em partes por milhão, com a temperatura, t, em graus centígrados. Utilizando interpolação polinomial, método das diferenças finitas ascendentes, estime o valor de t quando S = 200ppm.

S t i xi yi Δyi Δ^2 yi Δ^3 yi 0 30 15 35 -19 13 1 130 50 16 - 2 230 66 10 3 330 76

Sabe-se que

h z x-x^0  1, 100 z ^200 -^30 

Logo

p( x 0 h.z)y 0 z.y 0 z(z 2 !^1 )^2 y 0 z(z^13 )(!z^2 )^3 y 0

p( x 0 h.z) 15 z.( 35 )z(z 2 !^1 ).( 19 )z(z^13 )(!z^ ^2 ).( 13 )

Sendo assim, o polinômio interpolador é dado por:

p(x 0 + h.Z) = 2.17.Z^3 – 16.Z^2 + 48,83.Z + 15

Tem-se, então, que p(200) = 62,4oC

Exemplo 4. Uma hidroelétrica tem capacidade máxima de 60MW, que é determinada por três gerado- res de 30MW, 15MW e 15MW, respectivamente. A demanda de energia varia num ciclo de 24h, sendo que a demanda mínima ocorre entre 2h e 5h e a máxima entre 14h e 17h. Utilizando interpolação polinomial, método das diferenças finitas ascendentes, estime a demanda mínima e a máxima e o horário em que cada uma ocorre, considerando os dados a seguir.

i 0 1 2 3 Hora (xi) 2 3 4 5 Demanda (yi) 16,4 15,2 14,9 16,