Erro na Interpolação

Teoria Completa

Introdução Erro Exato

Fala meus amigos, tudo certinho? Veja bem, quando nós estudamos anteriormente os polinômios interpoladores nós vimos que são aproximações de uma função real, e essas aproximações podem ser tãaaaaaaao próximas quanto nós quisermos. O lance é, como toda aproximação, nossa função terá um erro (tava demorando né?).

Então, vamos dar uma estudada nesse erro da interpolação! Vamos aprender um negócio que basicamente é apresentar um limitante pro erro envolvido na aproximação de uma função feita por um polinômio interpolador.

Imagina a seguinte situação:

Seja f x = l n   x   + 3 x 2 . Usando a tabela abaixo encontre um polinômio interpolador de grau 2 e calcule:

(a) uma aproximação para f 2.5

(b) o erro desta aproximação

(c) um limitante para o erro

(d) uma aproximação para o erro assumindo que f x não é conhecida.

Usaremos esse exemplo para explicar a teoria, vem comigo!

Primeiro o item (a).

O exercício está pedindo uma aproximação para f 2.5 . Já aprendemos vários métodos para calcular uma aproximação e podemos usar qualquer um deles porém, como em seguida o exercício pede o erro, faça pelo método de Newton (a menos que o enunciado mande você fazer por outro método, é claro). Isso porque para calcular a aproximação do erro precisamos da tabela de diferenças divididas! Então já que vamos ter que montá-la de qualquer jeito, aproveitamos e já fazemos a aproximação pelo método de Newton.

Uma dica: se você quer estimar o erro em um polinômio de grau n , calcule os operadores até grau n + 1 já que vamos precisamos do maior operador diferenças divididas de ordem n + 1 ! (não se preocupe logo fará sentido!). Nesse caso, o polinômio que o exercício quer é de grau 2 então vamos fazer a tabela até d 3 ,

Passo 1. Vamos montar nossa tabela! Ela fica assim:

Repare que com 5 nós poderíamos ter calculado até a Ordem 4 , mas como não vamos precisar dela melhor evitarmos trabalho haha.

Passo 2. Como queremos uma aproximação para f 2.5 , vamos usar x 0 = 1 , x 1 = 2 e x 2 = 3 . Da tabela, temos:

d 0 = 3

d 1 = 9.6931

d 2 = 2.8562

Nosso polinômio de grau 2 é:

p 2 x = d 0 + d 1 x - x 0 + d 2 x - x 0 x - x 1

p 2 x = 3 + 9.6931 x - 1 + 2.8562 x - 1 x - 2

p 2 x = 2.8562 x 2 + 1.1245 x - 0.9807

Passo 3. Nossa aproximação será:

p 2 2.5 = 19.6818

Erro Exato

Para resolver o item (b), precisamos saber o que é o erro exato.

Como já falamos anteriormente, sempre que realizamos uma aproximação não obtemos o valor verdadeiro da função certo? (justamente por se tratar de uma aproximação). Existe um erro entre o polinômio e a função, e a diferença entre os dois nós chamamos de Erro Exato.

Tendo uma função f x e sua função interpoladora p n x , calculamos o erro como:

E x = f x - p n x

Pronto! já sabemos responder o item (b) do nosso exemplo:

O erro exato é:

E x = f x - p n x

E 2.5 = p 2 2.5 - f 2.5 = 19.6818 - 19.6663 = 0.0155

Limitante para o erro

O item (c) pede uma limitante para o erro. Ou seja, ele quer saber o erro máximo que seu polinômio interpolador vai ter naquele intervalo que você está aproximando f x . E como fazemos isso?

Seja f x uma função definida e (n+1) vezes diferenciável num intervalo [a,b]. Nós temos os pontos x 0 , x 1 , ..., x n , (n+1), que são pontos igualmente espaçados.

Ou seja, se x 1 - x 0 = x 2 - x 1 = … = x n - x n - 1 = h deste intervalo. Se P x interpola f x nestes pontos, então o limitante superior para o erro é dado:

E x ≤ h n + 1 M n + 1 4 n + 1

E o M n + 1 o valor máximo do módulo das derivadas de ordem n + 1 de f x no intervalo x 0 , x n , ou seja, o maior valor em módulo das derivadas da função aplicadas no intervalo x 0 , x n .

M n + 1 = f n + 1 x  

Mas, o que são pontos não serem equidistantes? Então:

E x ≤ x - x 0 x - x 1 … x - x n M n + 1 n + 1 !

Vamos tentar resolver o item (c) agora?

Para encontrarmos um limitante para o erro precisamos da derivada terceira de f x para calcular o valor Máximo M n + 1 :

f 3 x = 2 x 3

Como essa função é contínua, decrescente e positiva no intervalo 1,3 , ela terá seu maior valor em módulo em x = 1 , onde:

M n + 1 = f n + 1 x   = f 3 1 = 2 1 3 = 2

Como os valores de x são igualmente espaçados de h = 1 :

E x ≤ h n + 1 M n + 1 4 n + 1 = 1 3 ∙ 2 4 3 = 0.1667

Repare que usando essa forma, o resultado independe do valor x , ou seja, obtemos o valor máximo do erro no intervalo 1,3 .

Estimativa para o erro

No último item do nosso exemplo pede uma aproximação para o erro assumindo que f x não é conhecida. Veja bem, o problema vem agora. Geralmente não conhecemos nossa f x (daí a necessidade de encontrarmos uma aproximação), e o nosso ξ x nunca é conhecido, na maioria dos casos não podemos calcular o erro e nem um limitante para ele! Além disso, nem sempre a aproximação baseada em todos os pontos é a que se aproxima mais do valor verdadeiro.

Lembra que lá no começo, na hora de calcular a aproximação pelo método de Newton, eu falei para calcularmos d n + 1 ? Uma ordem acima da necessária para o polinômio? Então agora que ele entra em cena.

Bom, por sorte algum maluco percebeu que:

M n + 1 n + 1 ! ≈ d n + 1  

Onde d n + 1 são os operadores diferenças divididas de ordem n + 1 ! Nesse caso, dizemos que:

E x ≈ x - x 0 x - x 1 … x - x n d n + 1  

Voltando agora para o nosso exemplo:

Imaginamos que não conhecemos a f x e vamos calcular uma aproximação para o erro. O maior operador diferenças divididas de ordem 3 é:

d 3 = 0,0283

Aplicando agora a fórmula:

E x ≈ x - x 0 x - x 1 … x - x n d n + 1  

E 2.5 ≈ 2.5 - 1 2.5 - 2 2.5 - 3 0.0283 = 0.0106

Que é uma aproximação razoável para 0.0155 .

Pronto galera! Concluímos o exemplo. Partiu botar em prática agora!

Expandir

Exercício Resolvido #1

Márcia A. Gomes Ruggiero e Vera Lúcia da Rocha Lopes, Cálculo Numérico – Aspectos Teóricos e Computacionais, 2ª ed. São Paulo: MAKRON Books, 1996, pag 256, exercício 2

Verifique que na interpolação linear

E x ≤ h 2 M 2 8

onde h = x 1 - x 0 .

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

-

Como na interpolação linear nós só temos dois pontos, sempre podemos dizer que os pontos são igualmente espaçados haha. Logo, sempre é válida a fórmula:

E x ≤ h n + 1 M n + 1 4 n + 1

Substituindo n = 1 já que estamos usando interpolação linear,

E x ≤ h 2 M 2 8

Resposta

Exercício Resolvido #2

Márcia A. Gomes Ruggiero e Vera Lúcia da Rocha Lopes, Cálculo Numérico – Aspectos Teóricos e Computacionais, 2ª ed. São Paulo: MAKRON Books, 1996, pag 257, exercício 5

Queremos construir uma tabela que contenha valores de cos ⁡ x para pontos igualmente espaçados no intervalo I = 1,2 .

Qual deve ser o menor número de pontos desta tabela para se obter, a partir dela, o cos ⁡ x , usando interpolação linear com erro menor que 10 - 6 para qualquer x no intervalo 1,2 .

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Nesse caso usaremos o número de pontos como uma forma de “dimensionar o h ”. Em uma interpolação linear temos apenas dois pontos separados por uma distância h . Logo, sempre podemos dizer que:

E x ≤ h 2 M 2 8

Vamos começar encontrando M 2 . Precisamos da derivada segunda de cos ⁡ x :

f x = cos ⁡ x

f ' x = - sin ⁡ x

f ' ' x = - cos ⁡ x

Como o erro deve ser menor que 10 - 6 no intervalo 1,2 , usamos o valor máximo de - cos ⁡ x nesse intervalo como M 2 . E esse valor é em 1 , onde - cos ⁡ 1 ≅ 0.54 .

Passo 2

Agora precisamos escrever h em função do número de pontos. Então vamos montar uma tabelinha:

Com essa relação podemos substituir tudo na fórmula:

E x ≤ 1 n - 1 2 0.54 8 = 0.54 8 n 2 - 2 n + 1 = 10 - 6

n 2 - 2 n + 1 = 67.5 × 10 3

Resolvendo a equação de segundo grau, temos:

n = - 258.808   o u   260.808

Como não faz sentido termos um número de pontos negativo e nem quebrado, n = 261 pontos.

Resposta

n = 261

Exercício Resolvido #3

Lista 4 – Professor Mauro – UFRJ – Questão 5

Deseja-se construir uma tabela da função f x = e x no intervalo 0,1 com pontos x i igualmente espaçados. Seja h o passo. Qual o valor máximo de h para que o erro da interpolação linear em qualquer ponto do intervalo seja menor ou igual a ϵ = 10 - 2 .

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Em uma interpolação linear temos apenas dois pontos separados por uma distância h . Logo, sempre podemos dizer que:

E x ≤ h 2 M 2 8

Vamos começar encontrando M 2 . A derivada segunda de e x é ela mesma. Também sabemos que e x é crescente e positiva em 0,1 , logo tem seu maior valor em x = 1 , onde e 1 = 2.7183 .

Passo 2

Agora basta substituirmos tudo na fórmula:

E x ≤ h 2 ∙ 2.7183 8 = 0.34 h 2 = 10 - 2

h = ± 0.1715

Como a diferença entre os pontos é medida em módulo, h = 0.1715 .

Resposta

h = 0.1715

Exercício Resolvido #4

Lista 4 – Professora Angela – UFRJ – Questão 5

Seja a função f x = x + 1 - 1 , calcule uma aproximação para f 0.8 , utilizando o polinômio de Newton sabendo que f 0 = 1 ; f 0.5 = 0.6667 ; f 1 = 0.5 . Dar um limitante superior para o erro.

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Vamos começar montando a tabela de operadores diferenças divididas:

Como temos apenas 3 pontos, vamos encontrar um polinômio interpolador de grau 2 .

Passo 2

Definimos x 0 = 0 , x 1 = 0.5 e x 2 = 1 e tiramos da tabela que:

d 0 = 1

d 1 = - 0.6666

d 2 = 0.3332

Substituindo no polinômio temos:

p 2 x = d 0 + d 1 x - x 0 + d 2 x - x 0 x - x 1

p 2 x = 1 - 0.6666 x + 0.3332 x x - 0.5

p 2 x = 0.3332 x 2 - 0.8332 x + 1

Passo 3

Nossa aproximação será:

p 2 0.8 = 0.546688

Passo 4

Como os pontos estão igualmente espaçados, um limitante superior para o erro pode ser dado por:

E x ≤ h n + 1 M n + 1 4 n + 1

Temos que h = 0.5 e n = 2 . Só falta acharmos M 3 . Para isso, precisamos da derivada terceira de f x :

f x = x + 1 - 1

f ' x = - x + 1 - 2

f ' ' x = 2 x + 1 - 3

f ' ' ' x = - 6 x + 1 - 4

Como queremos o maior módulo de f ' ' ' x em 0,1 , basta acharmos o máximo de g x = 6 x + 1 - 4 . Como g x é decrescente e positiva em 0,1 , seu máximo está em x = 0 , onde temos g 0 = 6 .

Substituindo tudo na nossa equação:

E x ≤ 0.5 3 ∙ 6 12 = 0.0625

Resposta

p 2 0.8 = 0.546688

E x ≤ 0.0625

Exercício Resolvido #5

Márcia A. Gomes Ruggiero e Vera Lúcia da Rocha Lopes, Cálculo Numérico – Aspectos Teóricos e Computacionais, 2ª ed. São Paulo: MAKRON Books, 1996, pag 257, exercício 7

Sabendo-se que a equação x - e - x = 0 admite uma raiz no intervalo 0,1 , determine o valor desta raiz usando interpolação quadrática. Estime o erro cometido, se possível.

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Vamos começar montando uma tabela com alguns pontos:

O que vamos fazer agora é escrever x como função de y e não mais y como função de x . Ficamos com:

Assim nós não precisamos encontrar o zero do polinômio interpolador. Podemos jogar o zero direto no que vamos encontrar! Agora é só seguirmos o passo a passo de sempre ;)

Como ele quer uma função de interpolação quadrática, precisamos de 3 pontos. Vamos usar y 0 = - 1 , y 1 = - 0.1065 e y 2 = 0.6321 . Além disso para estimarmos a incerteza precisamos de um quarto ponto para obtermos um operador diferenças divididas de ordem 4 . Vamos usar então o y 3 = 1.2769 . A tabela fica:

Passo 2

Da tabela tiramos que:

d 0 = 0

d 1 = 0.5596

d 2 = 0.0719

Substituindo no polinômio:

p 2 y = d 0 + d 1 y - y 0 + d 2 y - y 0 y - y 1

p 2 y = 0.5596 y + 1 + 0.0719 y + 1 y + 0.1065

p 2 y = 0.0719 y 2 + 0.639157 y + 0.567257

Substituindo y = 0 ,

p 2 0 = 0.5673

Passo 3

Agora para estimar o erro usamos a fórmula:

E y ≈ y - y 0 y - y 1 y - y 2 max   ⁡ d 3

E 0 = 1 ∙ 0.1065 ∙ - 0.6321 ∙ 0.00032 = 0.2154 × 10 - 4

Resposta

x = 0.5673

E 0 = 0.2154 × 10 - 4

Exercício Resolvido #6

Márcia A. Gomes Ruggiero e Vera Lúcia da Rocha Lopes, Cálculo Numérico – Aspectos Teóricos e Computacionais, 2ª ed. São Paulo: MAKRON Books, 1996, pag 257, exercício 6

Consideremos o problema de interpolação para s e n x , numa tabela de pontos igualmente espaçados com intervalo h , usando um polinômio de 2 º grau. Fazendo x 0 = - h , x 1 = 0 , x 2 = h mostre que:

E x ≤ 3 27 h 3

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Temos que:

E x ≤ x - x 0 x - x 1 x - x 2 M n + 1 n + 1 !

Como estamos usando um polinômio interpolador de segundo grau, temos n = 2 , e precisamos da derivada terceira de s e n x :

f x = sen ⁡ x

f ' x = cos ⁡ x

f ' ' x = - sen ⁡ x

f ' ' ' x = - cos ⁡ x

E temos que o valor máximo que - cos ⁡ x assume em - h , h é 1 . Sendo assim, substituindo M 3 = 1 e os valores de x 0 , x 1 e x 2 dados:

E x ≤ x + h x x - h 1 3 ! = x x 2 - h 2 6 = x 3 - h 2 x 6

Passo 2

Não é isso que queríamos né? Po, mas se E x é sempre menor que x 3 - h 2 x 6 , então se acharmos o máximo do polinômio x 3 - h 2 x , então teremos um máximo geral para o erro! Vamos tentar isso!

O máximo de x 3 - h 2 x certamente é um ponto crítico de x 3 - h 2 x , então:

x 3 - h 2 x ' = 0

3 x 2 - h 2 = 0

x 2 = h 2 3

x = ± h 3

Substituindo esses valores na função:

h 3 3 - h 2 h 3 = - h 3 3 - h 2 - h 3 = 2 h 3 3 3

Logo,

max x ∈ - h , h ⁡ x 3 - h 2 x = 2 h 3 3 3

Substituindo, temos:

E x ≤ 2 h 3 3 3 ∙ 1 6 = h 3 9 3 = 3 27 h 3

Aê, agora sim! Esse era o valor que precisávamos!

Passo 3

-

Repare que aquela informação dos pontos serem igualmente espaçados era só pra te enganar mesmo haha! Se usasse a fórmula você ia chegar em:

E x ≤ h 3 12

que não é o resultado que ele quer haha.

Resposta

Exercício Resolvido #7

Lista 6 – Professora Susana – Questão 3

Suponha que f x = sin ⁡ x é aproximada em 0,1 por um polinômio interpolador em n + 1 pontos distintos equidistantes 0 = x 0 < x 1 < … < x n - 1 < x n = 1 . Determine n tal que o erro seja menor que 10 - 4   ∀ x ∈ 0,1

MOSTRAR SOLUÇÃO COMPLETA

Passo 1

Como temos pontos equidistantes podemos usar a fórmula:

E x ≤ h n + 1 M n + 1 4 n + 1 ≤ 10 - 4

Temos muitas incógnitas aí né? Vamos diminuir isso um pouco. Primeiro escrevemos h em função de n . Lembrando que aqui n é o número de partes em que o intervalo foi dividido e não o número de pontos!

Passo 2

Agora vamos dar um jeito nesse M n + 1 .

Bom, se n for ímpar, a derivada de ordem n + 1 de seno será um seno. O sinal do seno não importa já que estamos interessados no módulo dele. Nesse caso, M n + 1 = 0.8415 que é o valor de sin ⁡ 1 .

Se n for par, a derivada de ordem n + 1 de seno será um cosseno. Nesse caso, M n + 1 = 1 que é o valor de cos ⁡ 0 .

Então para cuidar desses dois casos vamos usar a variável k = 0,1 , 2,3 , … :

n = 2 k   n   p a r

n = 2 k - 1   n   i m p a r

Vamos substituir ambos os casos na nossa fórmula e achar o k mínimo que satisfaz a equação.

Passo 3

Caso n par:

1 2 k 2 k + 1 1 8 k + 4 ≤ 10 - 4

1 2 k 2 k + 1 ∙ 8 k + 4 ≤ 10 - 4

Se k = 1 , temos: