CÁLCULO NUMÉRICO AJUSTE DE CURVAS E INTERPOLAÇÃO INTERPOLAÇÃO POLINOMIAL INTRODUÇÃO A interpolação é outra das técnicas bem antigas e básicas do cálculo numérico. Muitas funções são conhecidas apenas em um conjunto finito e discreto de pontos de um intervalo [a, b], como, por exemplo, a tabela abaixo que relaciona calor específico da água e temperatura. Conhecemos os pontos tabelados, mas não conhecemos a função que gerou esses dados. TABELA 1 – Temperatura e calor específico da água A partir desses dados suponhamos que se queira calcular: (a) o calor específico da água a 32.5° C. (b) a temperatura para a qual o calor específico é 0.99837. Caso esses dados tenham sido obtidos em um experimento de laboratório, uma forma de responder as perguntas acima é voltar ao laboratório e fazer o experimento para os valores desejados. Mas a forma que nos interessa aqui é a interpolação, que tem o objetivo de nos ajudar na resolução deste tipo de problema sem que precisemos voltar ao laboratório. Em casos em que possuímos um conjunto de valores obtidos através de alguns experimentos, como é o exemplo anterior, podemos construir uma função através da interpolação, que aproximadamente se "encaixe" nestes dados pontuais, conferindo-lhes, então, a continuidade desejada, ou seja, de posse da função de interpolação, podemos calcular o valor da função para qualquer valor de entrada (x). Exemplo 2 - A tabela abaixo representa o número de habitantes da cidade de Belo Horizonte nos censos de 1950 a 1980. TABELA 2 – Número de habitantes de Belo Horizonte 1950 1960 1970 1980 Ano Nº de habitantes 352.724 683.908 1.235.030 1.814.990 Como saber o nº de habitantes de Belo Horizonte no ano de 1975 se a tabela não fornece essa informação, ou como saber em que ano Belo horizonte atingirá uma população de 2.500.000 habitantes? A interpolação se faz necessária em diversas situações, como por exemplo: 1- Quando são conhecidos somente os valores numéricos da função por um conjunto de pontos (não dispondo de sua forma analítica) e é necessário calcular o valor da função em um ponto não tabelado (por exemplo, o calor específico da água a 32,5 ºC no Exemplo 1 e o número de habitantes de BH em 1975, no Exemplo 2). 2- A aproximação de funções complicadas por funções mais simples. Por exemplo, quando a função em estudo tem uma expressão tal que operações como a diferenciação e a integração são difíceis (ou mesmo impossíveis) de serem realizadas. Neste caso, podemos procurar uma outra função que seja uma aproximação da função dada e cujo manuseio seja bem mais simples. Suponha que tenhamos uma função, mas que seja complicada demais para que seja possível avaliá-la de forma eficiente. Podemos, então, escolher alguns dados pontuais da função complicada e tentar interpolálos com uma função mais simples. Obviamente, quando utilizamos a função mais simples para calcular novos dados, normalmente não se obtém o mesmo resultado da função original, mas dependendo do domínio do problema e do método de interpolação utilizado, o ganho de simplicidade pode compensar o ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 2 erro. As funções que substituem as funções dadas podem ser de tipos variados, tais como: polinomiais, trigonométricas, exponenciais e logarítmicas. Exemplo 3 - Vamos supor que temos um conjunto de dados (xi, f(xi)) tal como na tabela abaixo TABELA 3 1.5 3.0 xi 0 f(xi) 0.001 0.016 0.028 4.5 6.0 0.046 0.057 Nosso problema é estimar o valor de f(x) para um valor de x que não tenha sido medido, como por exemplo, determinar o valor de f(x) para x = 2.0. A interpolação não encontrará de forma exata a função f(x). Interpolar uma função f(x) consiste em aproximar essa função f(x) por uma outra função P(x), escolhida entre uma classe de funções definida a priori e que satisfaça algumas propriedades. A função P(x) é então usada em substituição à função f(x). CONCEITO DE INTERPOLAÇÃO DEFINIÇÃO 1 - Considere a tabela abaixo que fornecem os pontos (xi, f(xi)) coletados. xi f(xi) x0 f ( x0 ) Consideremos (n + 1) pontos distintos x1 f ( x1 ) x2 f ( x2 ) ... ... xn f ( xn ) x0 , f ( x0 ) , x1 , f ( x1 ) , x2 , f ( x2 ) ,......, xn , f ( xn ) , acima. Deseja-se determinar o valor de f (x) , sendo dados pela tabela x( x0 , xn ) , com xi x, i 0,1, 2,, n . Neste caso, f (x) será solucionado por P(x) , onde P(x) será o polinômio que interpola os pontos tabelados. . A forma de interpolação de f(x) que veremos a seguir consiste em obter uma determinada função P(x) tal que: P(x0) = f(x0) P(x1) = f(x1) ........ P(xn) = f(xn) Ou seja, nos pontos tabelados, é necessário que a função f(x) e o polinômio P(x) sejam iguais, para do xi, i = 0, 1, . . . , n. OBSERVAÇÕES (a) x( x0 , xn ) , diz que x tem que está entre os valores da tabela, ou seja, x está entre x0 e x n . (b) Caso x ( x0 , xn ) faz-se uma extrapolação. Será estudado mais adiante em aproximações de curvas pelo Método dos Mínimos Quadrados. ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 3 Interpretação Geométrica . Observe pelo gráfico que o polinômio interpolador P(x) é uma aproximação da função f(x), onde os (n+1) pontos distintos x0 , f ( x0 ) , x1 , f ( x1 ) , x2 , f ( x2 ) ,......, xn , f ( xn ) são chamados nós da interpolação. Os nós são os pontos onde P( xi ) f ( xi ), i 0,1, 2, 3, ...., n . Além disso, conhecendo ( x0 , y0 ), ( x1 , y1 ), .... , ( xn , y n ) de uma função desconhecida poderemos calcular o valor numérico intermediário da função num ponto não tabelado com certo grau de erro, dado por: Erro = f ( x) P( x) f ( x) Ao buscar o polinômio P(x) que interpola f(x) nos pontos (xi, f(xi)), surgem três perguntas, que serão respondidas pelo Teorema 1 abaixo. 1. Sempre vai existir uma polinômio que interpola f(x)? 2. O polinômio P(x) que interpola f(x) é único? 3. Qual o grau desse polinômio? TEOREMA 1- Existe um único polinômio Pn ( x) de grau menor ou igual a n tal que Pn ( xk ) f ( xk ), para k = 0, 1, 2 . . , n, desde que x j xk , j k . Esse teorema afirma a existência do polinômio interpolador e sua unicidade. Além disso ele informa o grau do polinômio: Se temos (n+1) pontos distintos x0 , f ( x0 ) , x1 , f ( x1 ) , x2 , f ( x2 ) ,......, xn , f ( xn ) o grau do polinômio será de grau n. Por exemplo, se temos 5 pontos distintos, o grau será 4, um a menos do que a quantidade de pontos. FORMAS DE SE OBTER O POLINÔMIO INTERPOLADOR Existem várias formas de se obter o polinômio interpolador P(x). Estudaremos três metodologias para encontrar os polinômios que sejam aproximações de uma função f(x). 1. Interpolação polinomial por sistemas lineares. 2. Método de Lagrange. 3. Método de Newton. ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 4 1. POLINÔMIO INTERPOLADOR POR SISTEMAS LINEARES Utilizando o método por sistemas lineares, o polinômio interpolador de grau n é da forma Pn ( x) an x n an 1 x n 1 a2 x 2 a1 x a0 Obter o polinômio Pn ( x) é determinar os valores de a0 , a1 , a2 ,, an . Para isso, a condição de interpolação deve ser satisfeita, ou seja, f ( xk ) Pn ( xk ) , a0 a1 x0 a0 a1 x1 i=0,...,n a2 x02 a2 x12 an x0n an x1n a0 a1 xn a2 xn2 an xnn f ( x0 ) Pn ( x0 ) f ( x1 ) Pn ( x1 ) f ( xn ) Pn ( xn ) Substituímos x0 , x1 , x2 ,, xn no polinômio, um a um, e chegamos em um sistema linear, onde as incógnitas a serem encontradas são os valores de a0 , a1 , a2 ,, an . Como estudado em Álgebra linear, o sistema acima terá solução se a matriz dos coeficientes tiver determinante não nulo. 1 x0 x02 x0n 1 x1 x12 x1n A 1 x x 2 x n n n n O sistema pode ser resolvido pelo método de Eliminação de Gauss. Roteiro para encontrar o polinômio interpolador por resolução de sistemas lineares 1º passo – descobrir o grau do polinômio a ser encontrado (olhar Teorema 1); 2º passo - calcular, através de resolução de sistemas lineares, as constantes a0 , a1 , a2 ,, an do polinômio p(x) ; 3º passo - Montar o polinômio p(x) (isto é, substituir as constantes encontradas no 3º passo em p(x)) ; 4º passo - Calcular o valor do polinômio no valor de x pedido. Exemplo 1 – Encontrar o polinômio que interpola os pontos ( x, f ( x)) da tabela. i xi f ( xi ) 0 1 2 -1 0 2 f(-1) = 4 f(0) = 1 f(2) = -1 1º PASSO - grau do polinômio - Temos 3 pontos conhecidos: (-1, 4), (0,1) e (2,-1). Logo, pelo Teorema 1, o grau do polinômio é 2. Assim, o polinômio é da forma ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 5 p2 ( x) a2 x 2 a1 x a0 2º PASSO - Temos que encontrar os valores de a0 , a1 e a 2 . Pelo teorema 1, pn ( xk ) f ( xk ) , ou seja, p 2 (1) a 2 (1) 2 a1 (1) a 0 a 2 a1 a 0 4 p 2 (0) a 2 (0) 2 a1 (0) a 0 a 0 1 p (1) a (2) 2 a (2) a 4a 2a a 1 2 1 0 2 1 0 2 Agora, basta resolver o sistema e encontrar os valores de a0 , a1 e a 2 . Pela segunda equação, temos a0 1. Substituindo na primeira e na segunda equação temos que: a2 a1 1 4 a2 3 a1 4a2 2a1 1 1 Substituindo a 2 3 a1 na segunda equação, obtemos a1 7 7 . Substituindo a1 em a 2 3 a1 , temos 3 3 2 a2 . 3 3º PASSO – Montar o polinômio. O polinômio que interpola os pontos da tabela é o polinômio p2 ( x) 2 2 7 x x 1 3 3 4º PASSO - Calcular o valor do polinômio no valor de x pedido. Observe que na tabela, não temos o valor x = 1. Se quisermos saber o valor de f(x) neste valor, basta substituir no polinômio encontrado, pois pelo teorema 1, P(x) = f(x). Assim, f(1) = P2 (1) 2 2 7 2 7 1 (1) (1) 1 1 . 3 3 3 3 3 Logo, f(1) = - 1/3 OBSERVAÇÃO – Este exemplo foi de fácil resolução devido ao fato de termos obtido o valor de a 0 logo no início. Mas nem sempre isso acontece. Neste caso temos que resolver o sistema usando o MÉTODO DE ELIMINAÇÃO DE GAUSS, ou outro método que achar mais fácil. ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 6 2. MÉTODO DE LAGRANGE Considere um conjunto de (n + 1) pontos ( x0 , y0 ), ( x1 , y1 ), .... , ( xn , y n ) , onde yi f ( xi ) , i = 0, ...., n. No Método de Lagrange, o polinômio interpolador Pn ( x) de grau menor ou igual a n tal que Pn ( xk ) f ( xk ), k = 0, ..., n. é definido por: Pn ( x) L0 ( x) f ( x0 ) L1 ( x) f ( x1 ) Ln ( x) f ( xn ) onde os termos Lk ( x) são polinômios de grau n, tais que Pn ( xi ) f ( xi ) , o que mostra que o polinômio interpolador Pn ( x) passa exatamente sobre os pontos (xi, f(xi)), i = 0, ...., n. Os polinômios Lk ( x) são definidos da seguinte forma: Lk ( x) x x0 x x1 x x2 xk x0 xk x1 xk x2 x xk 1 x xk 1 xk xk 1 xk xk 1 x xn xk xn onde Lk x k 1 e Lk xi 0 se, i k Observe que o Polinômio Lk ( xi ) não possui o termo Se i = k, então, x xi quando i = k, pois o denominador vai zerar. xk xi x xk x xk , o que não existe. 0 xk xk De maneira compacta, podemos escrever o polinômio interpolador na Forma de Lagrange, como: x x j xj n pn x Li x f xi n Li x e i 0 j 0 j i x n j 0 j i i EXEMPLO 1 – Determinar o polinômio interpolador pelo método de Lagrange. i xi f ( xi ) 0 1 2 4 f(0) = 3.1 f(4) = 5.6 -SoluçãoTemos 2 pontos conhecidos: (2, 3.1) e (4, 5.6). Logo, pelo Teorema 1, o polinômio tem grau 1, ou seja, P(x) é da forma P1 ( x) L0 ( x) f ( x0 ) L1 ( x) f ( x1 ) . Os valores de f ( x0 ) e f ( x1 ) estão na tabela. Temos que encontrar apenas L0 ( x ) e L1 ( x ) . ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 7 x x1 L0 ( x) x0 x1 e x x0 L1 ( x) x1 x0 Assim, x x1 x x0 P1 x f x0 f x1 x0 x1 x1 x0 x4 x2 P1 x 3.1 5.6 1.55 x 4 2.8 x 2 24 42 P1 x 1.25 x 0.6 xx 0 Observe que o termo x x 0 0 não aparece em L0 ( x ) , pois neste caso o denominador é zero. O mesmo x x1 não aparece. x x 1 1 acontece em L1 ( x ) , onde o termo EXEMPLO 2 - Determinar o polinômio interpolador pelo método de Lagrange. i xi f ( xi ) 0 1 2 -1 0 2 f(-1) = 4 f(0) = 1 f(2) = -1 -SoluçãoTemos 3 pontos conhecidos: (-1, 4), (0,1) e (2,-1). Pelo Teorema 1, o grau do polinômio é 2.Assim, o polinômio é da forma P2 ( x) L0 ( x) f ( x0 ) L1 ( x) f ( x1 ) L2 ( x). f ( x2 ) . Temos que encontrar L0 ( x ) , L1 ( x ) e L2 ( x) . Os termos f ( x0 ) , f ( x1 ) e f ( x 2 ) são dados pela tabela. x x1 x x2 x0 x2 x2 2x . L0 ( x) . 3 1 0 1 2 x0 x1 x0 x2 x x0 x x 2 x 1 x 2 x2 x 2 . L1 ( x) . 2 x1 x0 x1 x2 0 1 0 2 x x0 x x1 x 1 x 0 x2 x . . L2 ( x) x x x x 2 1 2 0 6 2 0 2 1 Assim, x x1 x x2 P2 x x0 x1 x0 x2 x x0 x x2 . f x0 x1 x0 x1 x2 x x0 x x1 . f x1 . f x2 x2 x0 x2 x1 Substituindo os pontos x0 , x1 e x2 , além de f ( x0 ) , f ( x1 ) e f ( x 2 ) , temos: P2 x x2 2 x x2 x 2 x2 x .(4) .(1) .(1) 3 2 6 ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 8 Resolvendo as equações, encontramos o mesmo polinômio do exemplo utilizando sistemas lineares. P2 ( x) 2 2 7 x x 1 3 3 Conhecendo o polinômio interpolador, podemos calcular o valor da função f(x) para qualquer valor entre -1 e 2 que não esteja explícito na tabela acima. Por exemplo, qual o valor de f(x) para x = 1? Por definição de interpolação, sabemos que P( x) f ( x) . Assim, calcular f(1) é o mesmo que calcular P(1). Logo, 2 7 2 f(1) P(1) .(1) 2 .(1) 1 3 3 3 f (1) 2 3 EXERCÍCIOS 1.Qual a relação entre o número de pontos usados na interpolação e o grau do polinômio interpolador que pode ser calculado? 2. Se você tiver um conjunto de 5 dados ( x0 , f ( x0 )) , ( x1 , f ( x1 )) , ( x2 , f ( x2 )) , ( x3 , f ( x3 )) , ( x4 , f ( x4 )) e deseja fazer uma interpolação linear, isto é, encontrar uma reta que lhe permita obter o valor de f ( x ) x1 x2 . (a) Qual seria o grau do polinômio que você calcularia, isto é, quantos pontos você utilizaria? (b) E quais pontos da tabela você usaria? (ver Definição 1) 3- Ache o polinômio interpolador para os seguintes pontos, usando interpolação polinomial e o Método de Lagrange: X 0 1 2 f(x) 2 4 24 X f(x) 0 2 1 4 3 15 X f(x) 0 2 1 -1 2 2 4. A seguinte tabela informa o número de carros que passam por um determinado pedágio em um determinado dia: Horário Número (em mil) 10:00 2.69 10:30 1.64 11:00 1.09 11:30 1.04 12:00 1.49 12:30 2.44 (a) Estime o número de carros que passariam pelo pedágio às 11:10 h, usando Interpolação polinomial por sistemas lineares e a forma de Lagrange para encontrar um polinômio interpolador p(x) que estima o número de carros em função do tempo. Use uma reta como função interpoladora (ou seja, pegue apenas dois pontos). OBS: Transforme minutos para horas. 5. Na fabricação de determinadas cerâmicas é muito importante saber as condições de temperatura em que o produto foi assado no forno. Como não é possível medir a temperatura do forno a todo instante, ela é medida em ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 9 intervalos periódicos de tempo e esses dados são interpolados para o instante em que cada peça foi “queimada” a fim de se conhecer a temperatura do forno nesse instante. Em um dia de funcionamento do forno, os seguintes dados foram coletados: Horário 7:00 10:00 13:00 16:00 19:00 21:00 Temperatura (102 oC) 2.32 2.51 2.63 2.55 2.41 2.28 (a) Estime a temperatura do forno ás 14:30 usando a Forma de Lagrange para apenas 3 pontos. (b) A que horas se espera uma temperatura de 2.40? OBS: Transforme minutos para horas. 6. Um automóvel percorreu 145 Km numa rodovia que liga duas cidades e gastou, neste trajeto 120 minutos. A tabela abaixo dá o tempo gasto e a distância percorrida em função do tempo, em alguns pontos entre as duas cidades. Tempo (minutos) 0 10 30 60 90 120 Distância (Km) 0 8 27 58 100 145 Determinar: (a) Qual foi aproximadamente a distância percorrida pelo automóvel nos primeiros 25 minutos, considerando apenas 3 pontos da tabela? Utilizar interpolação por sistemas lineares. (b) Quantos minutos o automóvel gastou para chegar aos 35 Km da distância inicial do caminho? 7. Num experimento de laboratório, uma reação química liberou calor de acordo com as medições mostradas na tabela abaixo: 8:00 9:00 9:30 10:00 Horas 0 8 27 58 °C (a) Calcule a provável temperatura ocorrida às 9:45 h (transformar minutos em hora), utilizando apenas 3 pontos da tabela. Utilizar interpolação por sistemas lineares. 8. Usando os dados da tabela (a) Calcular arctg(1,5) usando interpolação linear (polinômio de grau 1). (b) Calcular arctg(1,2) ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 10 (a) Utilizando um polinômio de grau 2, calcule f(2,5). (b) Para que diâmetro a resistência é de 4? 12- Dada a tabela (a) Calcule o polinômio interpolador por sistemas lineares, utilizando apenas 3 pontos e calcule f(2,5). ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 11 13- Sabendo-se que os pontos a seguir são da função y e3x , pede-se estimar o valor de y para x = 0.65, utilizando interpolação de Lagrange. 14 - Uma barra de metal encontra-se presa em duas paredes separadas pela distância de 12m. A 5m da parede A (ver figura), um corpo apoiado sobre a barra faz com que esta toque no solo. Os pontos de engate nas duas paredes estão a 8m (parede A) e 3m (parede B) do solo, conforme mostra a figura a seguir. Usando interpolação polinomial por Lagrange, pede-se estimar: (a) a altura, em relação ao solo, de um ponto da barra localizado a 2m da parede A. 15- A integral elíptica completa é definida por: No cálculo, integrais elípticas originalmente surgiram em conexão com o problema do comprimento do arco de uma elipse e foram inicialmente estudadas por Giulio Carlo Fagnano dei Toschi e Leonhard Euler. Hoje, é amplamente utilizada na Física. Em geral, integrais elípticas não podem ser expressas em termos de funções elementares (exceto em alguns casos), o que impossibilita a resolução por métodos tradicionais de integração do Cálculo I. Neste caso é necessário recorrer aos métodos numéricos e que geralmente já possuem valores tabelados. Assim, podemos aproximar a função do integrando por um polinômio e resolver por interpolação. Suponha que são conhecidos 3 valores dessa integral, dados por: K(1) = 1.5708, K(2) = 1.5719 e K(3) = 1.5739. Determinar: (A) O polinômio interpolador pelo método de Lagrange, que interpola os pontos dados acima. (B) Calcular K(2.5). Resposta: (A) P2 ( x) 0,00045x 0,00025x 1,5706 2 ENGENHARIA– CÁLCULO NUMÉRICO - 2019/2 (B) K(2,5) = 1,5728 12