Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais...

67
Introdu¸ ao Interpola¸ ao polinomial Lagrange An´ alise de erro Splines Interpolac¸˜ ao Ricardo Biloti [email protected] alculo Num´ erico – UNICAMP 2S/2020 http://bit.ly/btl-BWyAn http://bit.ly/btl-BWyAn Ricardo Biloti Interpola¸ ao ´ E comum conhecermos alguns pontos de uma func¸˜ ao, mas n˜ ao a func¸˜ ao em si. O problema natural ´ e ent˜ ao como aproximar a func¸˜ ao a partir apenas destes pontos.

Transcript of Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais...

Page 1: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao

Ricardo [email protected]

Calculo Numerico – UNICAMP

2S/2020

http://bit.ly/btl-BWyAn

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

E comum conhecermos alguns pontos de uma funcao, mas nao a funcao em si. O problemanatural e entao como aproximar a funcao a partir apenas destes pontos.

Page 2: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Licenca

Este trabalho e licenciado sob os termos da Licenca InternacionalCreative Commons Atribuicao-NaoComercial-CompartilhaIgual 4.0.

Para ver uma copia desta licenca, visitehttp://creativecommons.org/licenses/by-nc-sa/4.0/.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Seus direitos e deveres sao:

• Voce e livre para copiar e redistribuir este material, em qualquer meio ou formato,para adapta-lo, transforma-lo ou utiliza-lo para construir seu proprio material.

• Voce deve dar os creditos apropriados, fornecendo link para a licenca e indicando sealteracoes foram feitas. Voce pode fazer isto de qualquer forma razoavel, porem semtentar passar a ideia ou sugerir que o autor endosse suas alteracoes ou seu uso domaterial.

• Voce nao pode utilizar este material para fins comerciais.

• Se voce alterar, transformar ou construir seu proprio material com base nestetrabalho, voce devera distribuı-lo sob a mesma licenca usada no original.

Page 3: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Problema v https://youtu.be/bGVFEzFBwtg

Dado um conjunto de pontos,

encontrar uma funcao que passe por esses pontos

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Vamos considerar o problema de encontrar uma funcao contınua que passe por um conjuntode pontos no plano, amostras de uma funcao desconhecida ou complexa o suficiente paravaler a pena aproxima-la por outra mais simples.

Page 4: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo

x 0 π/4 π/3 π/2

sin(x) 0√

22

√3

2 1

0

0.2

0.4

0.6

0.8

1

0 0.4 0.8 1.2 1.6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Como exemplo, vamos considerar a funcao seno. De fato, so conhecemos o valor destafuncao em alguns angulos notaveis, como o 0, π/4, π/3 e π/2 (e seus multiplos). Oproblema que se coloca entao e, partindo dos valores de seno nestes angulos, como aproximaros valores da funcao para outros pontos nao tabelados?

Podemos colocar nosso objetivo da seguinte maneira: desejo encontrar uma funcao contınuaque passe pelos pontos marcados no grafico. Sera que isto e suficientemente preciso?

De fato, apenas pedir uma funcao contınua ainda e muito vago (ou mal posto). Ha infinitaspossıveis solucoes para o problema quando colocado assim. Alem da curva em preto, a curvavermelha e outra possibilidade.

E necessario ser mais preciso.

Page 5: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao polinomial

Dado um conjunto de pontos,

encontrar um polinomio que passe por esses pontos

p(x) = a0 + a1x + · · ·+ anxn

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Vamos especificar que tipo de curva contınua nos interessa. Aqui lidaremos com o problema deinterpolacao polinomial apenas, ou seja, procuraremos um polinomio que passe pelos pontosprescritos.

Page 6: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Qual o polinomio p que passa pelos pontos abaixo?

xk −1 2 3

yk 6 3 10

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Antes de iniciarmos uma discussao teorica, vamos fazer um exercıcio. Dados tres pontostabelados, queremos determinar o polinomio que passa por esses tres pontos.

A primeira pergunta a fazer e qual o grau mınimo do polinomio para termos a chance deresolver o problema?

Depois de determinado o grau, devemos impor que o polinomio em cada um dos valores parax assume o valor y correspondente, e com isto determinar os coeficientes do polinomio.

Page 7: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio: resolucao

xk −1 2 3

yk 6 3 10

Se p(x) = a + bx + cx2, entao

p(−1) = a − b + c = 6p(2) = a + 2b + 4c = 3p(3) = a + 3b + 9c = 10

Resolvendo este sistema linear, descobrimos que

p(x) = 1− 3x + 2x2

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Neste caso, basta um polinomio de grau dois (com tres coeficientes a determinar). Comotemos tres condicoes (ditas condicoes de interpolacao), recairemos num sistema com tresincognitas (os coeficientes do polinomio) e tres equacoes (as condicoes de interpolacao).

Page 8: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio: resolucao alternativa

xk −1 2 3

yk 6 3 10

Se p(x) = α(x − 2) + β(x + 1) + γ(x + 1)(x − 2), entao

p(−1) = −3α = 6 ⇒ α = −2p(2) = 3β = 3 ⇒ β = 1p(3) = α + 4β + 4γ = 10 ⇒ γ = 2

Assim, descobrimos que

p(x) = −2(x − 2) + (x + 1) + 2(x + 1)(x − 2)= 1− 3x + 2x2

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Ter escrito um polinomio de grau dois geral como a + bx + cx2 foi uma escolha, porem outrassao possıveis. Alterar a maneira como p e representado tem o impacto no sistema linear aser resolvido. Uma boa escolha tem o potencial de tornar o sistema linear bem mais facil, ouate mesmo trivial.

Page 9: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Aproxime f por um polinomio, sabendo queI f (0) = a,I f ′(0) = b, eI f (L) = c

L

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Neste problema conhecemos o valor de uma funcao em dois pontos e sua derivada emum ponto e queremos novamente encontrar um polinomio que tenha estas mesmas trescaracterısticas. Este e um problema comum na area de otimizacao.

Neste exemplo, vale a pena chamar a atencao de que interpolacao alem de ser importantepor si so, tambem e um ingrediente de outros metodos numericos.

Page 10: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Encontre p tal que

x 1 2

p(x) 1 −2

p′(x) −1 −7

Para que haja solucao unica, qual deve ser o grau de p?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Como temos quatro informacoes, e facil perceber que precisamos ajustar um polinomio degrau 3 (com quatro coeficientes a determinar).

Page 11: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio: resolucao 1

Sep(x) = a0 + a1x + a2x2 + a3x3

entao

p(1) = a0 + a1 + a2 + a3 = 1p′(1) = a1 + a2 + a3 = −1p(2) = a0 + 2a1 + 4a2 + 8a3 = −2

p′(2) = a1 + 4a2 + 12a3 = −7

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

A representacao canonica para um polinomio geral de grau ate 3 leva a um sistema linear4× 4 para ser resolvido.

Page 12: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio: resolucao 2

Se

p(x) = b0(x − 1)2 + b1(x − 1)3 + b2(x − 2)2 + b3(x − 2)3

entao

p(1) = b2 − b3 = 1p′(1) = − 2b2 + 3b3 = −1p(2) = b0 + b1 = −2

p′(2) = 2b0 + 3b1 = −7

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Se na resolucao anterior, era necessario resolver um sistema linear 4 × 4, com essa escolhapara a representacao do polinomio interpolador, ficamos com dois sistemas lineares 2×2 pararesolver.

Page 13: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio: resolucao 3

Se

p(x) = [c0 + c1(x − 1)] (x − 2)2 + [c2 + c3(x − 2)] (x − 1)2

entao

p(1) = c0 = 1p′(1) = −2c0 + c1 = −1p(2) = c2 = −2

p′(2) = 2c2 + c3 = −7

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Com essa ultima escolha, a expressao do polinomio interpolador foi ainda mais convenientee todos os coeficientes podem ser determinados rapidamente.

As tres formas propostas sao validas e produzem o mesmo polinomio interpolador, apenasescrito ou representado de forma distinta.

Page 14: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Encontre o polinomio interpolador de grau 3 que satisfaz ascondicoes

p(−1) = α0, p(1) = α1,

p′(−1) = β0, p′(1) = β1.

Dica: represente p como combinacao linear de(x + 2)(x − 1)2

4, 1− (x + 2)(x − 1)2

4,

(x + 1)(x − 1)2

4,

(x + 1)2(x − 1)4

Faca o grafico destas funcoes. O que elas tem de especial?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Este exercıcio e similar ao anterior, porem agora propomos uma forma bem mais elaboradade representar o polinomio interpolador.

Siga o roteiro:1. Represente p como

p(x) = c0

[(x + 2)(x − 1)2

4

]+ c1

[1− (x + 2)(x − 1)2

4

]+

c2

[(x + 1)(x − 1)2

4

]+ c3

[(x + 1)2(x − 1)

4

]2. Imponha as condicoes de interpolacao e descubra os coeficientes c0, c1, c2 e c3.

Como ficou o sistema linear a ser resolvidos?3. Faca o grafico das quatro funcoes utilizadas na representacao de p e tente descobrir o

que elas tem de especial que facilitou o problema. Para isso, analise o comportamentodessas funcoes nos pontos de interpolacao.

Page 15: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Caracterısticas

I Pode ser resolvido sem qualquer tecnica especial

I Polinomio interpolador de baixa ordem

I Dificuldade depende de como o problema e formulado

I Interpolacao e ingrediente para outros metodos

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Com os exemplos e exercıcios anteriores podemos destacar as principais caracterısticas doproblema de interpolacao polinomial.

Em primeiro lugar, perceba que voce nao precisa saber qualquer tecnica especial para resolvero problema de interpolacao. No maximo, o problema recaira na resolucao de um sistema linear.

Em todos os exemplos procuramos polinomios interpoladores de baixa ordem. Em seus usosmais comuns, sao empregados polinomios de grau baixo (ate grau quatro, usualmente).

Como ja destacamos antes, interpolacao e uma tecnica importante tambem para a resolucaode subproblemas de outros metodos.

Page 16: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Formulacao v https://youtu.be/sjMqrdiEuvc

Dado Ω = (xk , yk) | xk−1 < xk, k = 0, 1, . . . , n, queremosencontrar um polinomio p, de grau no maximo n, definido em[x0, xn] tal que

p(xk) = yk , k = 0, 1, . . . , n.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Vimos exemplos com diferentes condicoes de interpolacao: sobre o valor de funcao e sobreo valor de derivada primeira. Outras condicoes poderiam ainda ser impostas, como porexemplo, sobre derivadas de ordem superior, ou condicoes de suavidade.

Para a discussao analıtica que se segue, concentraremo-nos em resolver o problema classicode interpolacao polinomial, no qual um conjunto Ω de pontos no plano e conhecido, com apropriedade de que nao ha dois pares amostrados com a mesma abscissa, e o objetivo seraencontrar um polinomio de grau mınimo que passe por sobre estes pontos.

Nestas condicoes, se n + 1 for a quantidade de pontos de interpolacao, veremos que sempree possıvel encontrar um polinomio interpolador de grau n. Demonstramos isto de formaconstrutiva a seguir.

Page 17: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Formulacao canonica

1, x , x2, . . . , xn

p(x) = a0 + a1x + · · ·+ anxn

1 x0 x2

0 · · · xn0

1 x1 x21 · · · xn

1...

......

...1 xn x2

n · · · xnn

a0a1...

an

=

y0y1...

yn

Matriz de Vandermonde

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Quando escrevemos o polinomio interpolador na forma canonica, o problema de interpolacaorecai na resolucao de um sistema linear, cuja matriz de coeficientes e conhecida como Matrizde Vandermonde.

Saber se o problema de interpolacao admite solucao, passa a ser uma questao de analisarse o sistema linear obtido admite solucao. Da mesma forma, a unicidade pode ser estudadaatraves da unicidade de solucao para o sistema linear.

Entretanto, vamos reformular o problema e abordar estas duas questoes de uma forma maissimples e construtiva.

Page 18: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Formulacao alternativa

`0(x), `1(x), `2(x), . . . , `n(x)

p(x) = a0`0(x) + a1`1(x) + · · ·+ an`n(x)

`0(x0) `1(x0) `2(x0) · · · `n(x0)`0(x1) `1(x1) `2(x1) · · · `n(x1)

......

......

`0(xn) `1(xn) `2(xn) · · · `n(xn)

a0a1...

an

=

y0y1...

yn

Ainda temos que resolver um sistema linear...

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Ao inves de escrever o polinomio interpolador como combinacao linear dos monomios 1, x ,x2, . . ., xn, podemos escrever o polinomio como combinacao linear de (n + 1) polinomios degrau n, `0(x), `1(x), . . ., `n(x).

A vantagem em fazer isso e que podemos escolher os polinomios `k (x) de maneira que osistema linear fique simples de ser resolvido.

Page 19: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Poliomios de Lagrange

L =

`0(x0) `1(x0) `2(x0) · · · `n(x0)`0(x1) `1(x1) `2(x1) · · · `n(x1)

......

......

`0(xn) `1(xn) `2(xn) · · · `n(xn)

Se`j(xi ) =

1, i = j0, i 6= j

entao L = I e o sistema linear tem solucao trivial.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Lagrange escolheu os polinomios `k de maneira que o sistema ficasse trivial, ou seja, demaneira que a matriz do sistema linear fosse a identidade.

Page 20: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao na forma de Lagrange

`j sao polinomios de grau n que satisfazem

`j(xj) = 1 e `j(xi ) = 0, j 6= i .

p(x) = a0`0(x) + a1`1(x) + · · ·+ an`n(x)

p(xi ) = yi ⇒ ai = yi

p(x) = y0`0(x) + y1`1(x) + · · ·+ yn`n(x)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Em virtude das duas propriedades chave, o problema de interpolacao quando formulado emtermos dos polinomios de Lagrange e facilmente resolvido.

Suponha que o polinomio interpolador e escrito como combinacao linear dos polinomios deLagrange associados aos nos de interpolacao.

Impondo a condicao de interpolacao p(x) = yi , temos que

p(xi ) = a0`0(xi ) + a1`1(xi ) + · · ·+ an`n(xi )= a0 · 0 + a1 · 0 + · · ·+ ai · 1 + ·+ an · 0= ai

Logo ai = yi . Desta forma, construımos o polinomio interpolador explicitamente e porconseguinte, acabamos de mostrar a existencia do polinomio interpolador.

A unicidade do polinomio interpolador de grau no maximo n pode ser demonstrada utilizandoo Teorema Fundamental da Algebra, como se segue.

Suponha que dois polinomios p e q, ambos de grau no maximo n interpolem os mesmosdados. Sendo assim, r(x) = p(x) − q(x), define tambem um polinomio de grau no maximon, com pelo menos (n + 1) zeros, localizados nos nos de interpolacao. Porem o TeoremaFundamental da Algebra afirma que o unico polinomio de grau no maximo n com (n + 1)zeros distintos e o polinomio identicamente nulo. Sendo assim p = q.

Page 21: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo: polinomios de grau 4

-1

0

1

x0 x1 x2 x3 x4

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

A figura exibe cinco polinomios de grau 4. Observe o que ocorre nos pontos x0, x1, x2, x3, x42.Em cada um desses pontos, 4 dos 5 polinomios se anulam, enquanto que apenas um delesvale exatamente 1. Esses polinomios sao conhecidos como Polinomios de Lagrange.

Vamos nomear esses cinco polinomios por `4j , onde j = 0, 1, 2, 3, 4, da seguinte forma: `4

0 e opolinomio de grau 4 que vale 1 em x0, `4

1 e o polinomio de grau 4 que vale 1 em x1, `42 e o

polinomio de grau 4 que vale 1 em x2, e assim por diante.

O que aconteceria se representassemos um polinomio de grau 4 como combinacao lineardesses cinco polinomios exibidos?

Page 22: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomios de Lagrange

Dado (n + 1) pontos distintos x0, x1, . . . , xn,

`j(x) = (x − x0) · · · (x − xj−1)(x − xj+1) · · · (x − xn)(xj − x0) · · · (xj − xj−1)(xj − xj+1) · · · (xj − xn)

`j(x) =∏k=0k 6=j

(x − xk)(xj − xk)

Waring, 1779

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Associados a cada um dos pontos de interpolacao distintos, podemos exibir explicitamente aexpressao dos polinomios de Lagrange.

O polinomio de grau n associado a xj sera `j . Perceba que `j e formado pelo produto dosmononios (x−xk ), para k = 0, 1, . . . , n, excluındo-se k = j. Desta forma, vemos diretamenteque `j e de fato um polinomio de grau n.

Page 23: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Propriedade

`j(x) = (x − x0) · · · (x − xj−1)(x − xj+1) · · · (x − xn)(xj − x0) · · · (xj − xj−1)(xj − xj+1) · · · (xj − xn)

`j(xj) = 1 e `j(xi ) = 0, j 6= i .

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Perceba que o denominador de `j e exatamente seu numerador avaliado em xj . Sendo assim,temos a primeira propriedade interessante dos polinomios de Lagrange: `j (xj ) = 1.

Outro fato digno de nota e que como `j e o produto de fatores (x − xk ) para k = 0, 1, . . . , n,excluındo-se k = j, `j (xi ) = 0, se j 6= i .

Page 24: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo v https://youtu.be/wrOCaxRY7eI

Considere f (x) =√

x e p o polinomio interpolador em 1, 2 e 4

p(x) = f (1) (x − 2)(x − 4)(1− 2)(1− 4) + f (2) (x − 1)(x − 4)

(2− 1)(2− 4) + f (4) (x − 1)(x − 2)(4− 1)(4− 2)

= (x − 2)(x − 4)3 −

√2 (x − 1)(x − 4)

2 + 2 (x − 1)(x − 2)6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Como temos tres pontos de interpolacao, estamos procurando por um polinomio interpoladorde grau 2.

Utilizando os polinomios de Lagrange, a solucao do problema de interpolacao e trivial.

Page 25: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo

1

1.5

2

1 2 3 4

f(x)p(x)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Observe o grafico da funcao √x (curva tracejada) e o grafico do polinomio interpolador(curva solida). Observe que poderıamos utilizar o polinomio interpolador como uma boaaproximacao para funcao.

Como, neste caso, estamos interpolando pontos de uma funcao conhecida, podemos nosperguntar tambem qual o erro de interpolacao, ou seja, se ao inves de computar √x com-putassemos p(x), por quanto estarıamos errando? Estudaremos esse problema a seguir.

Page 26: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Interpole os pontos (−3,−1), (3,−2) e (6, 10), construindo opolinomio na forma de Lagrange.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 27: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio v https://youtu.be/wrOCaxRY7eI

Aproxime o valor de sin(1), utilizando um polinomio interpoladorde grau 2 e os valores tabelados abaixo. Calcule o erro cometido.

x 0 π/4 π/3 π/2

sin(x) 0√

22

√3

2 1

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Repare que para uma interpolacao quadratica, apenas tres pontos sao necessarios. Logo, vocetem que decidir quais tres pontos dentre os quatro pontos fornecidos utilizar.

Page 28: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Encontre o ponto de interseccao das duas funcoes tabeladas,utilizando interpolacao quadratica.

x 0.000 0.600 1.200 1.800 2.400 3.000f (x) 1.300 1.383 1.223 0.919 0.626 0.435

x 0.400 0.900 1.400 1.900 2.400 2.900g(x) 0.615 0.810 1.079 1.425 1.786 1.993

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Para resolver este exercıcio, primeiro tente identificar aproximadamente onde deve estarlocalizado o ponto de interseccao. Por exemplo, perceba que antes de 1.2, f (x) aparentaser sempre maior que g(x). Claro que isto nao pode ser afirmado com certeza, uma vez quetemos apenas alguns pontos amostrados.

Para construir os polinomios interpoladores, selecione os pontos de interpolacao mais proximosda regiao onde voce acredita que esteja o ponto de interseccao. Mais a frente, veremos queesta estrategia ajuda a reduzir os erros de interpolacao.

Page 29: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Dificuldades

I Cara de avaliar (O(n2))

I overflow / underflow

Na verdade, estes nao sao problemas da interpolacao naforma de Lagrange, mas sim do algoritmo ingenuo utilizadopara calcular a interpolacao de Lagrange.

Salzer, 1972

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

No exercıcio anterior, onde foi pedido para aproximar o valor de sin(1), percebe-se que aavaliacao do polinomio interpolador na forma de Lagrange, quando feita de forma displicenteou ingenua, torna-se cara, do ponto de vista da quantidade de operacoes de ponto flutuanterealizadas.

Alem disso, tambem e comum encontrar em livros-texto de Calculo Numerico crıticas aforma de Lagrange, imputando a ela possıveis problemas de overflow e underflow.

Entretanto, quando implementada de maneira criteriosa, tais problemas sao todos evitaveis.

Page 30: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao Baricentrica de Lagrange

`j(x) = (x − x0) · · · (x − xj−1)(x − xj+1) · · · (x − xn)(xj − x0) · · · (xj − xj−1)(xj − xj+1) · · · (xj − xn)

Se

`(x) = (x − x0)(x − x1) · · · (x − xn), wj = 1∏k=0k 6=j

(xj − xk)

entao`j(x) = `(x) wj

x − xj

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

A interpolacao Baricentrica nada mais e que um algoritmo eficiente e computacionalmenteadequado para a interpolacao de Lagrange.

O primeiro passo e perceber que os fatores constantes que aparecem em cada polinomio deLagrange podem ser todos pre-computados, de maneira a reduzir o custo computacionaldurante a avaliacao do polinomio interpolador.

Depois, note tambem que todos os polinomios de Lagrange diferente entre si apenas por umunico monomio, uma das parcelas do produto que os definem.

Page 31: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao Baricentrica de Lagrange

p(x) = y0`0(x) + y1`1(x) + · · ·+ yn`n(x)

= y0`(x) w0x − x0

+ y1`(x) w1x − x1

+ · · ·+ yn`(x) wnx − xn

p(x) = `(x)(

y0w0

x − x0+ y1

w1x − x1

+ · · ·+ ynwn

x − xn

)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Utilizando os coeficientes wk e o polinomio ` de grau (n + 1), o polinomio interpolador podeser reescrito de forma muito compacta.

Page 32: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Caracterısticas

p(x) = `(x)n∑

j=0yj

wjx − xj

, wj = 1∏nk=0k 6=j

(xj − xk)

I wj nao depende de y0, y1, . . . , yn

I Barata de calcular (O(n2))

I Barata de avaliar (O(n))

I Sem problemas de overflow ou underflow

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Quando o polinomio e reescrito na forma baricentrica, todos os problemas alardados dainerpolacao de Lagrange sao dirimidos.

Page 33: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Qualidade da interpolacao

Se interpolamos as amostras de uma funcao, quao boa sera aaproximacao da funcao pelo polinomio?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Se estivermos interpolando uma tabela de ponto apenas, nao faz sentido perguntar qual oerro de interpolacao, visto que o polinomio interpolador, por construcao, honra exatamenteos pontos tabelados, e para outros pontos nao ha qualquer informacao.

Porem, quando interpolamos amostras de uma funcao, podemos nos perguntar se o polinomiointerpolador e uma boa aproximacao para a funcao, nos pontos que nao foram usados nainterpolacao.

Page 34: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo:√

x

1

1.5

2

1 2 3 4

f(x)p(x)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

No exemplo anterior, quando interpolamos a funcao f (x) = √x vimos que de fato o polinomiointerpolador se aproxima muito bem da funcao, no intervalo de interpolacao.

Page 35: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Hipoteses

I f tem (n + 1) derivadas contınuasI p tem grau no maximo nI p interpola f em x0, x1, . . . , xn ⊂ [a, b]

Erro de interpolacao:

E (x) ≡ f (x)− p(x)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Para investigar o erro de interpolacao, vamos fazer algumas hipoteses sobre a funcaointerpolada.

A intencao e estimar E(x), o erro num ponto x , que nao tenha sido utilizado na interpolacao.

Page 36: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Funcao auxiliar

Suponha que queremos analizar o erro em x ∈ (a, b), com x 6= xk .Considere a funcao

g(z) ≡ E (x)ω(z)− E (z)ω(x)

onde ω(z) ≡ (z − x0)(z − x1) · · · (z − xn).

I Quantas derivadas contınuas g possui?I Quantos zeros a funcao g possui?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Toda funcao polinomial, como p e w , e infinitamente diferenciavel. Como f tem (n + 1)derivadas contınuas e E(x) = f (x)−p(x), entao E tambem tera (n + 1) derivadas contınuas.

Com isso temos que g tem (n + 1) derivadas contınuas.

Observe ainda que g(z) = 0 para z ∈ x0, x1, . . . , xn, x. Ou seja, g tem pelo menos (n + 2)zeros distintos.

Page 37: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Resultado de Calculo

a bc

f (a) = f (b)

f ′(c) = 0

Teorema de RolleSeja f diferenciavel em [a, b]. Se f (a) = f (b), entao existec ∈ (a, b) tal que f ′(c) = 0.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Teorema do Valor MedioSeja f diferenciavel em [a, b]. Entao, existe c ∈ (a, b) tal que

f ′(c) = f (b)− f (a)b − a

.

O Teorema de Rolle e um caso particular do Teorema do Valor Medio, quando f (a) = f (b).

Com o Teorema de Rolle podemos garantir a existencia de pelo menos um zero da derivadade uma funcao, se conhecermos dois pontos onde a funcao tem o mesmo valor.

Page 38: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

g e seus zerosPor exemplo, para n = 3, os zeros de g sao x0, x1, x2, x3 e x .

g tem 5 zeros

g tem 5 zeros

g ′ tem 4 zeros

g ′ tem 4 zeros

g ′′ tem 3 zeros

g ′′ tem 3 zeros

g ′′′ tem 2 zeros

g ′′′ tem 2 zeros

ξ

g (4)(ξ) = 0

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 39: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Analise de g

Existe ξ ∈ (a, b) tal que g (n+1)(ξ) = 0.

g (n+1)(z) = E (x)ω(n+1)(z)− E (n+1)(z)ω(x)= E (x)(n + 1)!− f (n+1)(z)ω(x)

Para z = ξ,

E (x)(n + 1)! = f (n+1)(ξ)ω(x)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Ja sabemos que g tem pelo menos (n + 2) zeros. Pelo Teorema de Rolle, g ′ tera pelo menos(n + 1) zeros. Novamente, pelo Teorema de Rolle, agora aplicado a g ′, podemos assegurarque g ′′ tera pelo menos n zeros.

Continuando com esse raciocınio, pode-se assegurar que g (n+1) tera pelo menos um zero,digamos ξ.

Como ω(x) = xn+1 + q(x), onde q e um polinomio de grau no maximo n, temos queω(n+1) = (n + 1)!. Alem disso, p(n+1) ≡ 0 pois p e polinomio de grau menor que (n + 1).

Page 40: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Erro de interpolacao

TeoremaSe f tem (n + 1) derivadas contınuas e o polinomio p, de grau nomaximo n, interpola f em x0, x1, . . . , xn ⊂ [a, b], entao

f (x)− p(x) = f (n+1)(ξ)(n + 1)! ω(x), x 6= xk ,

onde ω(x) = (x − x0)(x − x1) · · · (x − xn) e ξ ≡ ξ(x) ∈ (a, b).

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Observe que a formula obtida para o erro de interpolacao e exata, porem depende de umvalor ξ desconhecido. Alem disso, ξ depende de x tambem.

Portanto, na pratica, nao temos como avaliar o erro de interpolacao por esta formula. Pode-mos porem utiliza-la como um majorante para o erro de interpolacao.

Page 41: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo

I f (x) =√

x

I p polinomio interpolador em 1, 2 e 4Qual o erro maximo?

Emax = max∣∣∣∣ f ′′′(ξ)

3! ω(x)∣∣∣∣ ≤ M3

6 max |ω(x)|,

com M3 = max1≤x≤4 |f ′′′(x)| e ω(x) = (x − 1)(x − 2)(x − 4)

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Nesse caso, n = 2. PortantoE(x) = f ′′′(ξ)

3!ω(x).

LogoEmax ≤

M36

max |ω(x)|.

Precisamos estimar entao M3 e max |ω(x)|.

Page 42: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo

M3 = max 38

1√x5

= 38 ,

max |ω(x)| =∣∣∣∣∣ω(

7 +√

73

)∣∣∣∣∣ = 2.1126

Portanto

|E (x)| ≤ 3/8 · 2.11263! = 0.13204, para todo x ∈ [1, 4]

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Com efeito, f ′′′(x) = 38

1√x5 . Como essa funcao e decrescente, seu maximo e assumido no

extremo esquerdo do intervalo, ou seja, para x = 1. Logo M3 = 3/8.

Para encontrar o maximo de |ω(x)|, impomos a condicao de que ω′(x) = 0. Dois pontossatisfazem essa condicao:

x1,2 = 7±√

73

.

Ambos os pontos estao dentro do intervalo de interesse, mas |ω(x2)| > |ω(x1)|. Nao enecessario verificar se o maximo de |ω(x)| esta nos extremos do intervalo pois, por construcao,a funcao ω se anula nos extremos.

Page 43: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Com que grau de precisao podemos aproximar√

115 usandointerpolacao quadratica sobre os pontos 100, 121 e 144?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Resolucao:

Da formula de erro para interpolacao temos que:

|E(115)| =∣∣∣ f ′′′(ξ)

3!ω(115)

∣∣∣ ≤ M33!|ω(115)|,

onde M3 = max100≤x≤144

|f ′′′(x)| = max100≤x≤144

38

x−5/2 = 38

10−5.

Como ω(x) = (x − 100)(x − 121)(x − 144), temos que ω(115) = 2610. Logo

|E(115)| ≤ 3/8 · 10−5 · 26106

= 1.631 · 10−3.

Page 44: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

x 1 2 3 4 5 6 7f (x) 0.91 1.43 1.58 1.55 1.44 1.30 1.18

I Obtenha uma aproximacao para o valor maximo de f usandointerpolacao quadratica.

I Usando interpolacao aproxime a solucao de f (x) = 1.15.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 45: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Reduzindo o erro

0

0.1

0.2

0.3

0.4

0 1 2 3 4

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Suponha que uma funcao foi interpolada apenas em dois pontos. Obviamente, nem sempreessa interpolacao sera precisa o suficiente. O que fazer entao?

Page 46: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Reduzindo o erro

0

0.1

0.2

0.3

0.4

0 1 2 3 4

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Podemos ver que a medida que mais pontos sao utilizados para interpolar a funcao,aparentemente, melhor o resultado fica. Observe por exemplo os polinomios p2, p3 e p4, queinterpolam a funcao em 3, 4 e 5 pontos igualmente espacados, respectivamente.

Claramente p4 e o polinomio interpolador que mais se aproximou da funcao original.

Sera que essa estrategia de acrescentar pontos a interpolacao vai continuar produzindopolinomios interpoladores de ordem mais alta que gradativamente se aproximarao da funcaointerpolada?

Page 47: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Fenomeno de Runge

0

1

-4 -2 0 2 4

Pontos equidistantesNuma malha de pontos regularmente espacados, os polinomiosinterpoladores em geral divergem, mesmo se f for analıtica.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Apesar de contra-intuitivo, nao ha garantia de que o erro de interpolacao reduzira amedida que mais pontos de interpolacao sao acrescentados. De fato, usualmente o errode interpolacao aumenta a medida que o grau do polinomio interpolador, em pontosregularmente espacado.

Esse fenomeno e conhecido como Fenomeno de Runge.

Na figura podemos observar o polinomio interpolador de grau 6 (interpola a funcao em 7pontos – quadrados) e o polinomio interpolador de grau 10 (interpola a funcao em 11 pontos– circulos). Pela figura, fica claro que o erro maximo de interpolacao observado no polinomiode grau 10 e maior.

Page 48: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Fenomeno de Runge

0

1

-4 -2 0 2 4

Pontos adequados (Chebyshev)Numa malha construıda adequadamente, os polinomiosinterpoladores convergem mesmo para funcoes Lipschitz contınuas.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Entretanto, e possıvel garantir que o polinomio interpolador de fato convirja a funcao, amedida que mais pontos sao utilizados na interpolacao, desde que os pontos de interpolacaosejam cuidadosamente escolhidos.

Na figura, para efeito de comparacao, observamos a interpolacao em 11 pontos igualmenteespacados (com erro grande), e mais duas interpolacoes, com 11 pontos e com 15 pontos,criteriosamente escolhidos. Na interpolacao com 15 pontos ja fica difıcil distinguir visual-mente a funcao original do polinomio interpolador.

Esses pontos magicos, que garantem a convergencia do polinomio interpolador, sao os zerosde polinomios especiais, os polinomios de Chebyshev.

Em resumo, se a interpolacao fosse feitas nos pontos de Chebyshev seria possıvel garantirque o erro reduziria a medida que mais pontos fossem utilizados.

A dificuldade em escapar do Fenomeno de Runge e que na maioria em problemas praticosnao ha como escolher quais sao os pontos de interpolacao. De fato, e muito comum que ospontos disponıveis para interpolacao estejam igualmente distribuıdos.

Page 49: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomios de grau 1

0

10

20

0 2 4 6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Neste exemplo, ao inves de tentar construir um unico polinomio interpolador de grau 6, acada dois pontos foi construıdo um polinomio interpolador de grau 1. Desta forma, foramutilizados todos os 7 pontos, porem o grau do polinomio interpolador permaneceu baixo,evitando o Fenomeno de Runge.

A funcao de interpolacao nao e mais um polinomio mas sim uma funcao definida de formadiferente em cada subintervalo. Em cada um dele a funcao e um polinomio de grau diferente.Uma funcao definida desta forma e dita um polinomio de grau 1 por partes.

Como a condicao de interpolacao em cada ponto e satisfeita tanto para o segmento de retaa esquerda e a direita de cada ponto, naturalmente a funcao total e contınua.

Page 50: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomios de grau 2

0

10

20

0 2 4 6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Neste caso, os pontos foram tomados tres a tres, de maneira que foram construıdos trespolinomios interpoladores, cada um de grau 2.

A funcao iterpoladora e um polinomio interpolador de grau 2 por partes. Novamente, apenaspela natural imposicao da condicao de interpolacao, a funcao interpoladora e contınua.

Entretanto, tambem pode-se observar que um polinomio interpolador por partes nao seradiferenciavel em cada ponto onde ha a juncao entre dois polinomios.

Page 51: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomios de grau 3

0

10

20

0 2 4 6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Por fim, tomando pontos de quatro em quatro, foram construıdos dois polinomios interpo-ladores, cada um de grau 3.

Apesar de nao ser visualmente evidente na figura, a funcao nao e diferenciavel em x = 3,onde os dois polinomios de grau tres sao colados.

Page 52: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao por partes

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Na interpolacao por partes o conjunto de pontos de interpolacao deve ser fracionado emporcoes menores. Dependendo do grau do polinomio interpolador de interesse.

Page 53: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao por partes

I0 I1 I2 I3

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Por exemplo, suponha que se deseje interpolar por polinomios de grau no maximo 2. Entaoos pontos devem ser tomados tres a tres.

Sejam os pontos de interpolacao originais (x0, y0), (x1, y1), . . . , (xn, yn), ordenados de modoque xk > xj se k > j. O intervalo de interpolacao I = [x0, xn], pode entao ser escrito comoI = I0 ∪ I1 ∪ · · · Im (como na figura).

Page 54: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Interpolacao por partes

I0 I1 I2 I3

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Desta forma precisamos resolver m problemas de interpolacao, um para cada subintervalo.Digamos que pj e o polinomio interpolador no intervalo Ij .

Page 55: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomio interpolador por partes

A funcao interpoladora e definida como

s(x) = pk(x), se x ∈ Ik

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

O grau de cada polinomio interpolador depende de quantos pontos de interpolacao ha emcada subintervalo Ik . Se todos os polinomios tiverem o mesmo grau, digamos q, diremos quea funcao s e um polinomio por partes de grau q.

Page 56: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Erro de interpolacao

O erro de interpolacao e limitado pelo erro em cada subintervalo.Para interpolacao linear por partes (splines lineares)

|E (x)| ≤ M2h2

8onde h = max |xk − xk−1|.

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

O erro maximo em cada subintervalo e dado por

maxx∈Ik|E(x)| ≤ 1

2maxx∈Ik|f ′′(x)| max

x∈Ik|(x − xk−1)(x − xk )|

Verifique que maxx∈Ik |(x − xk−1)(x − xk )| = 14 h2

k , onde hk = (xk − xk−1).

Como maxx∈Ik |f′′(x)| < M2, temos que

Emax ≤M2h2

8,

onde h = max hk .

Desta forma, perceba que ao acrescentar mais ponto, mesmo que regularmente espacados,e possıvel reduzir h e portanto reduzir o erro maximo, preservando o grau do polinomiointerpolador.

Page 57: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Splines lineares

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Temos a tendencia a achar que o resultado da interpolacao linear por partes e muitogrosseiro, mas na verdade o resultado anterior garante que ele pode ser tao bom quanto sequeira, desde que pontos suficientes sejam utilizados.

De fato, praticamente todos os graficos de funcao exibidos no computador tem apenas aimpressao de serem curvos, mas sao na verdade lineares por partes com uma quantidadegrande de pontos.

Page 58: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exemplo

Em quantos pontos regularmente amostrados em [0, 2] devemostabelar a funcao f (x) = (2x + 1)/(x − 3) de maneira a garantirum erro inferior a 10−4 com splines lineares?

M2 = max[0,2]|f ′′(x)| = max

[0,2]

∣∣∣∣ 14(x − 3)3

∣∣∣∣ = 14

Logo,

|E (x)| ≤ 14h2

8 = 74h2 ≤ 10−4

Portanto h ≤ 2√

77 10−2, como h = 2/n, n ≥ 265

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 59: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Exercıcio

Em quantos pontos e necessario tabelar a funcao cossenopara que a sua aproximacao por splines lineares tenha sempreerro inferior a 10−4?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Em primeiro lugar, observe que para conhecer a funcao cosseno, basta conhece-la nointervalo [0, π/2]. Para computar cosseno em qualquer outro intervalo basta utilizar relacoestrigonometricas para retornar ao problema de computar cosseno neste intervalo.

Como E < 18 M2h2, e M2 = max |(cos x)′′| = 1, temos que

h2

8≤ 10−4 ⇒ h ≤ 2 · 10−2√2.

Como h = π/2n , entao n ≥

π√

28

102 ≈ 55.5, ou seja sao necessarios pelo menos 57 pontos.

Page 60: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Resumo

I E possıvel construir uma funcao que interpole uma grandequantidade de pontos, sem incorrer no Fenomeno de Runge,desde que trabalhando por partes.

I Porem, a funcao interpolante nao sera diferenciavel nospontos de contato entre intervalos adjacentes.

I E se realmente precisarmos de uma funcao interpolantediferenciavel?

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 61: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Splines cubicos

Dado um conjunto de pontos x0 < x1 < · · · < xn, uma splinecubica e uma funcao s satisfazendoI s ∈ C 2

I s|[xk−1,xk ] ∈ P3([xk−1, xk ])

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Splines cubicos sao polinomios de grau 3 por partes com a condicao adicional de terem pelomenos duas derivadas contınuas.

Page 62: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Spline cubico interpolante

Dado um conjunto de pontos (xk , yk) | xk−1 < xk,k = 0, 1, . . . , n, uma spline cubica interpolante e uma funcao ssatisfazendoI s ∈ C 2

I s|[xk−1,xk ] ∈ P3([xk−1, xk ])

I s(xk) = yk , para k = 0, 1, . . . , n

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Na interpolacao por splines cubicos, um polinomio de grau 3 e utilizado a cada dois pontos,e nao a cada 4 pontos, como no caso da interpolacao polinomial de grau tres por partes.Mas como apenas as duas condicoes de interpolacao nao sao suficientes para determinaros 4 coeficientes do polinomio cubico, os dois graus de liberdade restantes sao justamenteutilizados para impor a restricao de suavidade.

Page 63: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Spline cubico

0

10

20

0 2 4 6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Essa e a spline cubica interpolante para os mesmos pontos dos exemplos anteriores.

Page 64: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Polinomios de grau 3

0

10

20

0 2 4 6

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Para efeito de comparacao, esta e novamente a interpolacao polinomial de grau 3 por partes.

Page 65: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Spline – A regua

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 66: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Spline – A regua

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao

Page 67: Interpolac¸˜ao - ime.unicamp.brbiloti/an/interp.pdf · valer a pena aproxim´a-la por outra mais simples. Introdu¸c˜ao Interpola¸c˜ao polinomial Lagrange An´alise de erro Splines

Introducao Interpolacao polinomial Lagrange Analise de erro Splines

Spline – Boeing

http://bit.ly/btl-BWyAn Ricardo Biloti Interpolacao