PUC-GOIÁS - Departamento de Computação Fundamentos IV/Enfase Clarimar J. Coelho Goiânia, 28/05/2014
O que é interpolação polinomial? Ideia básica Permite construir um novo conjunto de dados a partir de um conjunto discreto de dados pontuais conhecidos Em ciências, dispomos de dados pontuais obtidos a partir de uma amostragem ou experimento Através da interpolação podemos construir uma função que se ajusta as estes dados pontuais
Como funciona Permite fazer a aproximação de uma função conhecendo algumas das suas abscissas e ordenadas A função resultante passa nos pontos fornecidos Em relação aos outros pontos, pode ser um mero ajuste
Interpolação linear
Interpolação polinomial de grau superior a 1
Abordagem prática da interpolação polinomial Abordagem prática O polinômio f n (x) = a n x n +a n 1 x n 1 +...+a 2 x 2 +a 1 x +a 0 pode ser usado para estimar uma função f(x) desconhecida ou complicada Não temos a função, o que temos são alguns pontos
Exemplo 1 Seja o conjunto de pontos tabelado x y 0 1 1.5 2.15
Dois pontos no gráfico
Intuitivamente Olhando para os dois pontos já sabemos que por ai passa uma reta
A reta
Polinômio Podemos ver que tem um polinômio que passa por estes dois pontos Temos que descobrir que polinômio é esse Em geral, precisamos de n+1 pontos para determinar um polinômio de n
Interpolação linear No caso específico da interpolação linear, vamos ter um polinômio f(x) = ax +b Precisamos encontrar os valores de a e b Os valores de a e b do polinômio aplicado a x1 nos da y 1, f(x 1 ) = y 1, e o polinômio aplicado a x 2 nos da y 2, f(x 2 ) = y 2
Encontrando a e b Temos que encontrar um polinômio que passe por estes dois pontos Podemos encontrar a e b pelo sistema { ax1 +b = y 1 ax 2 +b = y 2 [ x1 1 x 2 1 ][ a b ] = [ y1 A última coluna é o vetor de constante é igual a 1 y 2 ]
Encontrando a e b [ x1 1 x 2 1 ][ a b ] [ = x y 0 1 1.5 2.15 1 2,15 [ ][ ] [ 0 1 a 1 = 1.5 1 b 2,15 { 0a+b = 1 1.5a+b = 2.15 ] ]
Resolvendo o sistema Usando Jacobi ou Gauss-Seidel encontramos a = 0.76667 e b = 1 Logo, o polinômio f(x) = 0.76667x +1
Para que serve isso? Fazer previsões de valores que não estão na tabela Qual será o valor de y(0.5)? y(0.5) f(0.5) = 0.76667 0.5+1 = 1.3833 x y 0 0.5 1 1.5 1.3833 2.15 1.5 1.48 1.46 1.44 1.42 1.4 0.56 0.58 0.6 0.62 0.64 0.66
Interpolação polinomial A fórmula geral para um polinômo do n ésimo grau é definido por f(x) = a 0 +a 1 x +a 2 x 2 +...+a n x n (1) dados n+1 pontos, existe somente um polinômio de grau n que passa por os todos pontos
Interpolação de Newton em diferenças divididas Introdução Existe uma grande variedade de formas alternativas para expressar uma interpolação polinomial A interpolação polinomial de Newton em diferenças diferenças divididas é uma das formas mais populares e úteis Antes de apresentar a equação geral de primeiro e segundo graus vamos ver sua interpretação visual
Interpolação polinomial Exemplos a) primeiro grau (linear), que une dois pontos b) segundo grau (quadrática ou parabólica), que liga três pontos c) terceiro grau (cúbico), que liga quatro pontos
Interpolação linear Pontos ligados por uma reta A forma mais simples de interpolação é a ligação de dois pontos com uma linha reta Esta técnica, denominada a interpolação linear é ilustrado na Figura
Tiângulos semelhantes Equação geral Reescrevendo, temos f 1 (x) f(x 0 ) x x 0 = f(x 1) f(x 0 ) x 1 x 0 f 1 (x) = f(x 0 )+ f(x 1) f(x 0 ) x 1 x 0 (x x 0 ) (2) Que é uma fórmula de interpolação linear
Quem é f 1 A notação f 1 (x) indica que esta é uma interpolação polinomial de primeiro grau O termo [f(x 1 ) f(x 0 )]/(x 1 x 0 )] Representa a inclinação dos pontos de ligação da reta É uma aproximação em diferenças divididas finitas para a primeira derivada
Melhor aproximação Reta Em geral, quanto menor o intervalo entre os dados/pontos, melhor a aproximação Quando o intervalo diminui, uma função contínua é melhor aproximada por uma reta
Exemplo 1 Planejamento do problema Estimar o logaritmo natural de 2 por interpolação linear Faça o cálculo por interpolação entre ln1 = 0 e ln6 = 1,791759 Use um intervalo menor de ln1 a ln4 = 1,386294 O valor verdadeiro de ln2 = 0.6931472
Solução Encontrando f 1 Usamos a Equação (2) e uma interpolação linear para ln2 a partir de x 0 = 1 até x 1 = 6, para obter f 1 (2) = 0+ 1.791759 0 (2 1) = 0.3583519 6 1 Com um erro R f1 = 0.6931472 0.3583519 0.6931472 = 48, 3% Com o menor intervalo de x 0 = 1 até x 1 = 4, temos f 1 (2) = 0+ 1.386294 0 (2 1) = 0.4620981 4 1 Em função da percentagem de erro relativo menor o intervalo é reduzido para R f1 = 0.6931472 0.4620981 0.6931472 = 33, 3%
Estimativas lineares Aproximações As interpolações são mostrados na Figura, juntamente com a função adequada
Interpolção quadrática No Exemplo 1, o erro vem da aproximação a uma curva usando uma reta Uma estratégia para melhorar a estimativa é introduzir alguma curvatura na linha que liga os pontos Se você tem três pontos como dados, eles podem ser ajustados a um polinômio de segundo grau (polinômio quadrático ou parábola)
Interpolção quadrática, cont. Uma forma particularmente conveniente é fazer f 2 (x) = b 0 +b 1 (x x 0 )+b 2 (x x 0 )(x x 1 ) (3) Mesmo que a Equação (3) parece diferir da Equação geral (1), as duas equações são equivalentes Isto é demonstrado pela multiplicação dos termos da Equação (3) f 2 (x) = b 0 +b 1 x b 1 x 0 +b 2 x 2 +b 2 x 0 x 1 b 2 xx 0 b 2 xx 1
Agrupando os termos f 2 (x) = a 0 +a 1 x +a 2 x 2 Onde a 0 = b 0 b 1 x 0 +b 2 x 0 x 1 a 1 = b 1 b 2 x 0 = b 2 x 1 a 2 = b 2
Fórmulas equivalentes As equações (1) e (3) são formas alternativas, equivalentes do único polinômio de grau que une liga os três pontos Um procedimento simples pode ser usado para determinar os valores dos coeficientes
Encontrando b 0 e b 1 Para encontrar b 0, na Equação (3) fazemos x = x 0 para obter b 0 = f(x 0 ) (4) A Equação (4) é substituído na Equação (3) e em seguida, faz-se x = x 1 para obter b 1 = f(x 1) f(x 0 ) x x 0 (5)
Encontrando b 2 Finalmente, as Equações (4) e (5) são substituídas em (3) para x = x 2 e (depois de algumas manipulações algébricas) é resolvido para b 2 = f(x 2 ) f(x 1 ) x 2 x 1 f(x 1) f(x 0 ) x 1 x 0 x 2 x 0 (6)
Os termos Como no caso de interpolação linear, b 1 representa a inclinação da reta que une os pontos x 0 e x 1 Os dois primeiros termos da Equação (3) é equivalente ao da interpolação linear para x 0 a x 1, conforme especificado antes na Equação (2) O último termo, b 2 (x x 0 )(x x 1 ) determina a curvatura de segundo grau na fórmula
Aparência de uma série de Taylor Antes mostrar como usar a equação (3) Podemos observar que o coeficiente b 2 é semilar a aproximação em diferença dividida finita da segunda derivada A Equação (3) tem uma estrutura semelhante a expansão de uma série de Taylor Isso será estudado quando a interpolação de polinômios relacionar Newton com a série de Taylor
Exemplo 2 Defina um polinômio de grau 2 para os três pontos do Exemplo 1 x 0 = 1,f(x 0 ) = 0 x 1 = 4,f(x 1 ) = 1.386294 x 2 = 6,f(x 2 ) = 1.791759 Usando o polinômio calcule ln2
Solução Aplicando a Equação (4), obtemos b 0 = 0 A Equação (5) da b 1 = 1.386294 0 4 1 = 0.4620981 Com a Equação (6) obtemos b 2 = 1.791759 1.386294 6 4 04620981 6 1 = 0.0518731
Encontrando f 2 Substituindo estes valores na Equação (3) a fórmula quadrática é obtida f 2 (x) = 0+0.4620981(x 1) 0.0518731(x 1)(x 4) Que é avaliada para x = 2 para f 2 (2) = 0.5658444 Representando um erro relativo R f2 = 18,4%
Intuição gráfica A curva determinada pela fórmula quadrática de interpolação melhora em comparação com o resultado obtido com interpolação linear
Exercícios 1. Estime o logaritmo natural de 10 por interpolação linear a) Interpole entre log8 = 0.9030900 e log12 = 1.0791812 b) Interpole entre log9 = 0.9542425 e log11 = 1.0413927 Para cada uma das interpolações calcular o erro relativo por cento com base no valor real 2. Defina uma interpolação polinomial de Newton de segunda ordem para estimar log10, com os dados do Item 1 com x = 8,9 e 11 Calcule a verdadeira percentagem de erro relativo 3. Defina uma interpolação polinomial de Newton de terceiro grau para estimar o log10, com os dados do Item 1