INTERPOLAÇÃO POLINOMIAL 1) O problema da interpolação: considerando uma função y = f(x), definida na tabela: x y = f(x) 3,0 5,5 3,5 9,8 5,0 15,0 7,3 21,4 9,0 32,0 11,5 53,0 f(6) = ? Problema de interpolação f(2) = ? Problemas de extrapolação f(13) = ? 2) Definição geral de interpolação: considerando-se a função y = f(x) definida pelos pontos (x0, y0), (x1, y1),..., (xn, yn). Interpolar a função f(x) significa escrever uma função g(x) tal que: g(x0) = f(x0) g(x1) = f(x1) g(xn) = f(xn) = y0 = y1 = yn 3) Interpolação polinomial: g(x) polinômio Motivação: teorema de weirtrass: “Qualquer função pode ser arbitrariamente aproximada por um polinômio”. Resultado: Para n+1 pontos de uma função, o polinômio interpolador tem grau n. Desta forma está garantida a existência do polinômio e sua unicidade. Ou seja: i 0 1 2 n xi yi x0 x1 x2 xn = f(xi) y0 y1 y2 yn Pn (x) a 0 a1x a 2 x 2 a n 1x n 1 a n x n Demonstração do resultado: Considerando-se uma “interpolação quadrática”. Isto é, serão considerados três pontos de uma função qualquer (a generalização é imediata): xi yi = f(xi) x0 y0 x1 y1 x2 y2 Então o polinômio interpolador para este conjunto de pontos tem grau 2: P2 (x) a 2 x 2 a1x a 0 Este polinômio deve ser tal que: P2 ( x 0 ) y0 P2 ( x1 ) y1 P2 ( x 2 ) y 2 (1) Ou, a 2 x 02 a1x 0 a 0 y0 a 2 x12 a1x1 a 0 y1 a 2 x a 1x 2 a 0 y 2 (2) 2 2 O último sistema tem como matriz dos coeficientes das variáveis: x 02 M x12 x 22 x 0 1 x1 1 x 2 1 que é conhecida como matriz de Vandermonde. Seu determinante é dado por: det(M) (x 0 x1 )(x 0 x 2 )(x1 x 2 ) mas, como x0, x1 e x2 são pontos de uma função, eles são distintos entre si. Assim det(M) ≠ 0. Como o determinante da matriz dos coeficientes das variáveis do sistema (2) não é zero, isto significa que este sistema tem uma única solução. Ou seja, apenas um trio de valores para a0, a1 e a2 que verifica as identidades (1). Exemplo: Escrever o polinômio interpolador para o conjunto de pontos de uma função y = f(x), dados na tabela a seguir. Estimar o valor de f(1), usando este polinômio. x y = f(x) -1 15 Resolução: 0 8 Deve 3 -1 ser escrito um polinômio de grau 2, P2 (x) a 2 x a1x a 0 , tal que: 2 P2 (1) 15 P2 (0) 8 P2 (3) 1 Isto é: a 2 (1) 2 a1 (1) a 0 15 a 2 a1 a 0 15 a 2 (0) 2 a1 (0) a 0 8 9a 2 3a1 a 0 1 a 2 (3) 2 a1 (3) a 0 1 Este sistema tem como solução: a 2 O polinômio interpolador é, então: P2 (x) x 2 6x 8 e a0 8 1, a1 6 e a 0 8 . P2 (1) 1 6 8 3 POLINÔMIO INTERPOLADOR DE LAGRANGE - Polinômio de Lagrange para uma interpolação considerando-se três pontos de uma função y = f(x). xi yi = f(xi) x0 y0 Proposta: independentes: x1 y1 quadrática: x2 y2 escrevendo-se p 02 ( x ) x x 1 x x 2 p12 ( x ) x x 0 x x 2 p 22 ( x ) x x 0 x x 1 os polinômios linearmente Obs.: cada polinômio pode ser representado pelo produtório: p i2 ( x ) x x j 2 j0 ( ji ) O espaço vetorial dos polinômios de grau 2 tem dimensão 3. Isto quer dizer que qualquer conjunto com 3 polinômios de grau 2, linearmente independentes, é uma base deste espaço vetorial. Assim, se o conjunto p 02 , p12 , p 22 representa uma base, todo polinômio de grau 2 pode ser escrito como combinação linear destes três polinômios: P2 (x) k 0 p02 (x) k1p12 (x) k 2 p22 (x) (1) Determinação de k0, k1 e k2: para que este seja o polinômio interpolador para os pontos da tabela: P2 (x 0 ) y0 k 0 p02 (x 0 ) k1p12 (x 0 ) k 2 p 22 (x 0 ) y0 y k 0 p 02 ( x 0 ) 0 0 y 0 k 0 0 0 p2 (x 0 ) P2 (x1 ) y1 P2 (x 2 ) y2 k 0p02 (x1 ) k1p12 (x1 ) k 2 p22 (x1 ) y1 y 0 k1p12 ( x1 ) 0 y1 k1 1 1 p 2 ( x1 ) k 0 p02 (x 2 ) k1p12 (x 2 ) k 2 p 22 (x 2 ) y 2 y 0 0 k 2 p 22 ( x 2 ) y 2 k 2 2 2 p2 (x 2 ) Substituindo-se em (1): p 02 ( x ) p12 ( x ) p 22 ( x ) P2 ( x ) y 0 0 y1 1 y2 2 p2 (x 0 ) p 2 ( x1 ) p2 (x 2 ) pi2 ( x ) P2 ( x ) yi i p2 (x i ) i 0 2 (2) Mas, sabe-se: p i2 ( x ) x x j E, assim: p ( x i ) x i x j 2 j0 ( ji ) 2 i 2 substituindo em (2): j0 ( ji ) x x 2 j 2 P2 ( x ) y i 0 j0 ( ji ) i 2 x i xj 2 2 i 0 j0 ( ji ) yi (x x j ) (x i x j ) j0 ( ji ) Este é o polinômio interpolador de lagrange de grau 2. Que também pode ser apresentado da seguinte maneira: Definindo-se a função Li(x): 2 Li ( x ) j0 ( ji ) (x x j ) (x i x j ) Escreve-se o polinômio de Lagrange de grau 2: 2 P2 ( x ) yi Li ( x ) i 0 GENERALIZAÇÃO: Sejam n+1 pontos de uma função y = f(x): xi yi = f(xi) x0 y0 x1 y1 x2 y2 ... ... xn yn O polinômio interpolador de Lagrange para este conjunto de pontos é: n Pn ( x ) yi Li ( x ) i 0 onde, n Li ( x ) j0 ( ji ) (x x j ) (x i x j ) EXEMPLO: um carro viajando ao longo de uma estrada reta é cronometrado em vários pontos. Os dados tirados das observações são fornecidos na tabela a seguir, onde o tempo é expresso em segundos, a distância em pés e a velocidade em pés por segundo. Tempo (s) Distância (ft) Velocidade (ft/s) 0 0 75 2 225 77 5 383 80 8 623 74 13 993 72 a) Estimar o valor da velocidade do carro após 4 segundos do início da cronometragem; b) Estimar a distância percorrida pelo carro no momento em que o cronômetro marcava 10 segundos. Em ambos os quesitos usar 4 pontos da tabela. Resolução: nos dois quesitos deve ser usado um polinômio de grau 3. O polinômio a ser usado é o polinômio interpolador de Lagrange. a) Neste quesito serão usados os primeiros 4 pontos da tabela: Tempo (s) Velocidade (ft/s) 0 75 2 77 5 80 8 74 Usando os termos usuais, variável independente x e y como variável dependente (y = f(x) ), esta tabela pode ser escrita: x 0 2 5 8 y = f(x) 75 77 80 74 E, assim, o objetivo aqui é estimar o valor de f(4), aproximando-o por um polinômio de grau 3: f(4)P3(4). Polinômio de lagrange para 4 pontos: 3 P3 ( x ) yi Li ( x ) i 0 P3 (x) y0 L0 (x) y1L1 (x) y2 L2 (x) y3L3 (x) P3 (x) 75L0 (x) 77L1 (x) 80L2 (x) 74L3 (x) Em x = 4: P3 (4) 75L0 (4) 77L1 (4) 80L2 (4) 74L3 (4) Determinação dos valores das funções L: ( x x1 ) ( x x 2 ) ( x x 3 ) L0 (x) (x x ) (x x ) (x x ) 0 1 0 2 0 3 (4 2) (4 5) (4 8) 0,10 L 0 (4) ( 0 2 ) ( 0 5 ) ( 0 8 ) (x x 0 ) (x x 2 ) (x x 3 ) L ( x ) 1 ( x1 x 0 ) ( x1 x 2 ) ( x1 x 3 ) (4 0) (4 5) (4 8) 0,44 L1 (4) ( 2 0 ) ( 2 5 ) ( 2 8 ) ( x x 0 ) ( x x1 ) ( x x 3 ) L 2 ( x ) ( x x ) ( x x ) ( x x ) 2 0 2 1 2 3 (4 0) (4 2) (4 8) 0,71 L 2 (4) ( 5 0 ) ( 5 2 ) ( 5 8 ) ( x x 0 ) ( x x1 ) ( x x 2 ) L ( x ) 3 ( x 3 x 0 ) ( x 3 x1 ) ( x 3 x 2 ) (4 0) (4 2) (4 5) 0,06 L3 (4) ( 8 0 ) ( 8 2 ) ( 8 5 ) Em (*): P3 (4) 75(0,10) 77(0,44) 80(0,71) 74(0,06) 78,74 Ou seja, a velocidade após 4 segundos era de 78,74 ft/s. (*) b) Neste quesito serão usados os últimos 4 pontos da tabela: Tempo (s) Distância (ft) 2 225 5 383 8 623 13 993 A tabela agora fica: x y = f(x) 2 225 5 383 8 623 13 993 O objetivo aqui, então, é estimar o valor de f(10), aproximando-o por um polinômio de grau 3: f(10)P3(10). O polinômio de lagrange para 4 pontos: 3 P3 ( x ) yi Li ( x ) i 0 P3 (x) y0 L0 (x) y1L1 (x) y2 L2 (x) y3L3 (x) P3 (x) 225L0 (x) 383L1 (x) 623L2 (x) 993L3 (x) Em x = 10: P3 (10) 225L0 (10) 383L1 (10) 623L2 (10) 993L3 (10) Determinação dos valores das funções L: ( x x1 ) ( x x 2 ) ( x x 3 ) L ( x ) 0 ( x 0 x1 ) ( x 0 x 2 ) ( x 0 x 3 ) (10 5) (10 8) (10 13) 0,15 L 0 (10) ( 2 5 ) ( 2 8 ) ( 2 13 ) (**) (x x 0 ) (x x 2 ) (x x 3 ) L ( x ) 1 ( x1 x 0 ) ( x1 x 2 ) ( x1 x 3 ) (10 2) (10 8) (10 13) 0,67 L1 (10) (5 2) (5 8) (5 13) ( x x 0 ) ( x x1 ) ( x x 3 ) L ( x ) 2 ( x 2 x 0 ) ( x 2 x1 ) ( x 2 x 3 ) (10 2) (10 5) (10 13) 1,33 L 2 (10) ( 8 2 ) ( 8 5 ) ( 8 13 ) ( x x 0 ) ( x x1 ) ( x x 2 ) L ( x ) 3 ( x 3 x 0 ) ( x 3 x1 ) ( x 3 x 2 ) (10 2) (10 5) (10 8) 0,18 L3 (10) (13 2) (13 5) (13 8) Em (**): P3 (10) 225(0,15) 383(0,67) 623(1,33) 993(0,18) 784,47 Ou seja, a distância percorrida após 10 segundos foi de 784,47 ft.