Buscar

tema4 Interpolacao Polinomial1

Prévia do material em texto

Métodos Numéricos I
Tema 4. Ajuste de Curvas. 
Interpolação Polinomial.
Prof. Dany S. Dominguez
dsdominguez@gmail.br
Sala 1 – NBCGIB
(73) 3680 5212 – ramal 30
ROTEIRO
• Introdução
• Polinômio de Taylor
• Polinômios de Lagrange
• Splines
• Comentários finais
Introdução
• Ajuste de curvas
• Dados com muito ruído:
– mínimos quadrados
• Dados precisos: 
– Interpolação polinomial
– Encontrar uma função (ou
várias funções) que
satisfaçam cada um dos
pontos
Conjunto de
Dados Discretos
Função
Analítica
Introdução
• Uma das classes de funções mais conhecidas e
úteis entre as que mapeiam o conjunto dos
números reais em si mesmos é a classe dos
polinômios algébricos,
• Os polinômios algébricos tem a forma:
onde a ordem do polinômio n é uma constante
não negativa e a0,...,an são constantes reais.
• Os polinômios algébricos aproximam de maneira
uniforme funções contínuas.
1
1 1 0( )
n n
n n nP x a x a x a x a

    
Introdução
• Dada uma função f(x), definida e contínua em
um intervalo limitado e fechado, existe um
polinômio Pn(x) que é tão “próximo” da função
quanto desejado,
• Teorema de Weierstrass: Suponha que f(x)
esteja definida e seja contínua no intervalo [a,b].
Para cada ε>0, existe um polinômio P(x) com a
seguinte propriedade:
( ) ( ) , para todo em [ , ].f x P x x a b 
Introdução
• Teorema de Weierstrass . . .
• Entre os motivos para utilizar polinômios na
aproximação de funções (contínuas e discretas)
‒ as derivadas e integrais são de fácil determinação,
‒ e também são polinômios
x
y
( )y f x
( )y P x
( )y f x  
( )y f x  
ROTEIRO
• Introdução
• Polinômio de Taylor
• Polinômios de Lagrange
• Splines
• Comentários finais
Polinômio de Taylor
• O polinômio de Taylor de grau n no ponto x0 é
definido como:
‒ Um polinômio P é idêntico com uma função f no
número x0 quando P(x0)=f(x0),
‒ O polinômio P tem a mesma “direção” que a função f
no ponto (x0,y0) se P’(x0)=f’(x0),
‒ O polinômio de Taylor de n-ésimo grau tem n
derivadas que concordam com a função f em x0.
    
 
 
 
 
0 0 0
2
0 0
0 0
( )
 
2! !
n
n
n
P x f x f x x x
x x x x
f x f x
n
   
 
  
Polinômio de Taylor
• O erro da aproximação do polinômio de Taylor
pode ser estimado pela expressão:
• Na maioria dos casos obtemos uma cota
superior para o erro aproximando f(n+1)(ζ) pelo
máximo da derivada no intervalo
   
   
 
 
1
1
0( )
1 !
n
n
n n
f
P x f x R x x x
n
 
   

 0 ,x x 
Polinômio de Taylor
• Exemplo 1:
a) Calcule o polinômio de Taylor do terceiro grau em
torno de x0=0 para f(x)=(1+x)
1/2
b) Use o polinômio para obter f(0,1) calcule o erro
relativo e encontre um limite para o erro envolvido,
c) Use o polinômio para calcular a integral
calcule o erro relativo da aproximação.
 
0,1
1 2
0
1 x dx
Polinômio de Taylor
• Exemplo 1 . . . (a)
      
 
 
 
2 3
0 0
3 0 0 0 0 0( )
2 6
x x x x
P x f x f x x x f x f x
 
      
   
   
   
   
1 2
1 2
3 2
5 2
1
1
1
2
1
1
4
3
1
8
f x x
f x x
f x x
f x x



 
  
   
  
 
 
 
 
0
0
0
0
1
1
2
1
4
3
8
f x
f x
f x
f x

 
  
 
2 3
3 ( ) 1
2 8 16
x x x
P x    
Polinômio de Taylor
• Exemplo 1 . . . (b)
31,1 (0,1) 1,0488125
1,1 1,0488088
P 

 ( ) 3,70 6a ne P x f x E   
 
   
 
     
 
 
4
4
3 0
7 24
3
3
4!
15
1
16
0;0,1 max max, 0,1
0,1 3,91 6
f
R x x x
f
R
R E

 
  

 
  
  
 
Polinômio de Taylor
• Exemplo 1 . . . (c)
   
0,10,1
1 2 3 2
00
2
1 1 0,102459822
3
x dx x   
0,1 0,1 2 3
3
0 0
0,12 3 4
0
( ) 1
2 8 16
 0,102459896
4 24 64
x x x
P x dx dx
x x x
x
 
    
 
    
 
( ) ( )
0,7222 8
( )
r
f x P x
e E
f x

  
 

Polinômio de Taylor
• Exemplo 1 . . .
2 3
3( ) 1
2 8 16
x x x
P x    
 
1
2( ) 1f x x 
Polinômio de Taylor
• Exemplo 2: Considerando o polinômio de
Taylor P3(x) obtido em torno de x0=0 para
f(x)=(1+x)1/2 calcule uma estimativa para f(2,5).
Calcule o erro da estimativa.
• O erro no cálculo da estimativa é muito grande.
Por que?
2 3
3 (2,5) 1 2,445313
2 8 16
x x x
P     
   
1 2
2,5 1 1,870829f x  
3 100% 30,71r
P f
e
f

 
Polinômio de Taylor
• Exemplo 2 . . .
2 3
3( ) 1
2 8 16
x x x
P x    
 
1
2( ) 1f x x 
Polinômio de Taylor
• Ao utilizarmos expansão polinomial é desejável
uma aproximação relativamente precisa ao
longo de um intervalo,
• Os polinômios de Taylor geralmente NÃO
conseguem isso,
• O uso dos polinômios de Taylor esta limitados
aos valores de x próximos de x0,
• Outra das desvantagens de utilizar os polinômios
de Taylor é a necessidade de conhecer as
derivadas de f no ponto x0,
Polinômio de Taylor
• Qual o motivo do fracasso da aproximação com
polinômios de Taylor?
‒ Constrói a aproximação apenas com informações de
um único ponto x0
• Aproximações precisas em intervalos largos
devem utilizar informações de um conjunto de
pontos
• A aproximação de Taylor é útil:
‒ Intervalos pequenos na vizinhança de um ponto
‒ Aproximação de funções “complexas”
ROTEIRO
• Introdução
• Polinômio de Taylor
• Polinômios de Lagrange
• Splines
• Comentários finais
Polinômio de Lagrange
• Definimos o problema de interpolação polinomial
na forma
− Seja uma função f(x), conhecida por n+1 pontos
isolados (xi, yi) i = 0:n
− Determinar o valor para f(x) para qualquer valor de x
no intervalo [x0, xn]
− Devemos encontrar o polinômio interpolador
que satisfaz todos os pontos (xi, yi).
1
1 1 0( )
n n
n n nP x a x a x a x a

    
Polinômio de Lagrange
• Considere o problema de interpolação polinomial
para dois pontos (x0, y0) e (x1, y1),
1 1 0( )P x a x a 
x
y
( )f x
0x 1x
0 0( )y f x
1 1( )y f x ( )P x
( ) ?f x 
Polinômio de Lagrange
• Definimos o polinômio interpolante como
onde
• Para o polinômio proposto:
   1 0 0 1 1( ) ( ) ( )P x L x f x L x f x 
01
0 1
0 1 1 0
( ) e ( )
x xx x
L x L x
x x x x

 
 
‒ Quando x=x0, L0(x0)=1, L1(x0)=0, P1 (x0)=f(x0)
‒ Quando x=x1, L0(x1)=0, L1(x1)=1, P1 (x1)=f(x1)
‒ Então é o único
polinômio de primeira ordem que passa pelos pontos
(x0 ,y0) e (x1 ,y1).
   0 0 1 1( ) ( ) ( )P x L x f x L x f x 
Polinômio de Lagrange
• Generalizamos os conceitos de interpolação lineal
• Para isso, consideremos um polinômio de grau n que
passe por n+1 pontos
     0 0 1 1, ( ) , , ( ) , , , ( )n nx f x x f x x f x
x
y
( )f x
0x 2x
( )P x
1x nx
  
     ,0 0 ,1 1 ,( ) ( ) ( ) ( )n n n n n nP x L x f x L x f x L x f x   
Polinômio de Lagrange
• Precisamos construir para cada ponto k=0, 1, ... ,n uma
função Ln,k(x) que cumpra as seguintes propriedades:
• Para satisfazer a propriedade 1 o numerador de Ln,k(x)
deve ter a forma
• Para satisfazer a propriedade 2 o denominador deve ser
igual ao numerador para x=xk isto é
,
,
1. ( ) 0 para 
2. ( ) 1 
n k i
n k k
L x i k
L x
 

      0 1 1 1k k nx x x x x x x x x x      
         0 1 1 1k k k k k k k nx x x x x x x x x x      
Polinômio de Lagrange
• Finalmente a função Ln,k(x) é escrita na forma
• Uma vez conhecidos as funções o polinômio
interpolador pode ser construído facilmente
• O polinômio é chamado Polinômio de
Lagrange de n-ésimo Grau e é definido pelo
seguinte teorema
        
       
0 1 1 1
,
0 1 1 1
( ) k k nn k
k k k k k k k n
x x x x x x x x x x
L x
x x x x x x x x x x
 
 
    

    
 
 
       
        
 
 
0 1 1 1
,
0 1 1 1
0
( )
 , 0 : .
k k n
n k
k k k k k k k n
n
i
i k i
i k
x x x x x x x x x x
L x
x x x x x x x x x x
x x
k n
x x
 
 


    

    

 


 
 
Polinômio de Lagrange
• Teorema: Se x0, x1, ... ,xn são (n+1) números
distintos e f é uma função cujos valores são
dados nesses números, então existe um único
polinômio P(x) de grau máximo n com a
propriedade:
Este polinômio é dado por
onde
    para 0 :k kf x P x k n 
,0 0 , ,
0
( ) ( ) ( ) ( ) ( ) ( ) ( )
n
n n n n n n k k
k
P x L x f x L x f x L x f x

   
Polinômio de Lagrange
• Exemplo 3: Mostre que dado 3 pontos de
dados o polinômio interpolador de Lagrange de
segundo grau é único. Usando os valores x0=2,
x1=2.5 e x3=4 achar o polinômio interpolante de
segundo grau para f(x)=1/x. Utilize o polinômio
interpolante para estimar f(2.2) e f(3.5), calcule
os erros relativos e comente os resultados.
Polinômio de Lagrange
• Exemplo 3 . . .
2 2,0 0 2,1 1
2,2 2
( ) ( ) ( ) ( ) ( )
 ( ) ( )
P x L x f x L x f x
L x f x
 

,
0
( ) ( ) ( )
n
n n k k
k
P x L x f x

 
 
 , 0
( ) 
n
i
n k
i k i
i k
x x
L x
x x





1 3 2n n   
  
  
  
  
  
  
1 2
2,0
0 1 0 2
0 2
2,1
1 0 1 2
0 1
2,2
2 0 2 1
( )
( )
( )
x x x x
L x
x x x x
x x x x
L x
x x x x
x x x x
L x
x x x x
 

 
 

 
 

 
Polinômio de Lagrange
• Exemplo 3 . . .
• O polinômio P2 é único.
x0 x1 x2
L0(x) 1 0 0
L1(x) 0 1 0
L2(x) 0 0 1
2 2,0 0 2,1 1 2,2 2( ) ( ) ( ) ( ) ( ) ( ) ( )P x L x f x L x f x L x f x  
2 0 0
2 1 1
2 2 2
( ) ( )
( ) ( )
( ) ( )
P x f x
P x f x
P x f x



Polinômio de Lagrange
• Exemplo 3 . . .
2 2,0 0 2,1 1 2,2 2( ) ( ) ( ) ( ) ( ) ( ) ( )P x L x f x L x f x L x f x  
 
0
0
2
0,5
x
f x

  
1
1
2,5
0,4
x
f x

  
2
2
4
0,25
x
f x


  1f x x
  
  
  
  
 
   
   
 
1 2 2
2,0
0 1 0 2
0 2 2
2,1
1 0 1 2
0 1 2
2,2
2 0 2 1
( ) 6,5 10
4
( ) 6 8
3
1
( ) 4,5 5
3
x x x x
L x x x
x x x x
x x x x
L x x x
x x x x
x x x x
L x x x
x x x x
 
   
 
 
    
 
 
   
 
Polinômio de Lagrange
• Exemplo 3 . . .
− Calculo do erro x=2,2 e x=3,5
− Porque o erro para o ponto x=2,2 é inferior ao erro
para o ponto x=3,5?
2
2
17 23
( )
20 40 20
x x
P x   
P(x) f(x) er
x=2,2 0,457000 0,454545 5,40E-3
x=3,5 0,275000 0,285714 3,75E-2
Polinômio de Lagrange
• Exemplo 3 . . .
2
2
17 23
( )
20 40 20
x x
P x   
( ) 1f x x
Polinômio de Lagrange
• Ao calcularmos estimativas utilizando em MN é
desejável alternativas para avaliar o erro envolvido,
• Útil quando o valor exato é desconhecido
• Podemos calcular uma cota máxima para o erro de
interpolação do polinômio de Lagrange
• Teorema: Suponha que x0, x1, ... ,xn sejam números
distintos no intervalo [a,b] e que f  Cn+1[a,b]. Sendo ξ
o máximo de f(n+1) em [a,b] se cumpre:
onde P(x) é o polinômio interpolador de Lagrange.
 
 
   
( 1)
0( ) ( ) ( )
1 !
n
n
f
R x f x P x x x x x
n

    


Polinômio de Lagrange
• Exemplo 4: Calcule uma cota máxima do erro
do polinômio de Lagrange que foi construído no
Exemplo 3. Utilize os pontos calculados (x=2,2 e
x=3,5) para verificar a expressão.
 
    0 1 2( )
3!
f
R x x x x x x x

   
2
1
( )
1
( )
f x
x
f x
x

  
3
4
2
( )
6
( )
f x
x
f x
x
 
  
(2) 0,3750
(4) 0,2344
( ) monotona
( ) (2) 0,3750
f
f
f x
f f
  
  
 
  
Polinômio de Lagrange
• Exemplo 4 . . .
 
    0 1 2( )
3!
f
R x x x x x x x

   
   
0,3750
( ) 2 2,5 4
6
R x x x x   
 3 2( ) 0,0625 8,5 23 20R x x x x   
(2,2) 6,75E-3 > 5,40E-3
(3,5) 4,69E-2 > 3,75E-2
R
R


Algoritmo do Polinômio de Lagrange
ENTRADA: Pontos: (x0,f(x0)), (x1,f(x1)), ... , (xn,f(xn))
Ordem do polinômio n, Valor de x*
SAÍDA: Polinômio de Lagrange Avaliado em x*
,
0
( *) ( *) ( )
n
n k k
k
P x L x f x

 
 
 , 0
*
( *) 
n
i
n k
i k i
i k
x x
L x
x x





Algoritmo do Polinômio de Lagrange
PASSO 1:Faça sum = 0, k=0
PASSO 2:Enquanto k<=n siga os passos 3-7
PASSO 3:Faça prod = 1, i = 0
PASSO 4:Enquanto i<k
prod = prod * (x-xi)/(xk-xi) , i = i+1
PASSO 5:Faça i=k+1
PASSO 6:Enquanto i<=n
prod = prod * (x-xi)/(xk-xi) , i = i+1
PASSO 7:Faça sum = sum + prod*f(xk)
PASSO 8:Saída (sum), FIM
Polinômio de Lagrange
• Custo computacional
‒ Cálculo do Ln,k
‒ n termos no produtório
‒ Para um termo
‒ 2 subtrações
‒ 1 divisão
‒ 1 produto
‒ Total: 4n operações
‒ São calculados (n+1) termos Ln,k
‒ 4n(n+1) operações
Polinômio de Lagrange
• Custo computacional . . .
‒ Cálculo do somatório Pn(x)
‒ Para cada um dos n+1 termos
‒ 2 subtrações
‒ 1 soma
‒ 1 produto
‒ Total: 2(n+1) operações
‒ Operações do algoritmo
‒ Custo quadrático O(n2)
   4 1 2 1n n n  
24 6 2LAGNOP n n  
Polinômio de Lagrange
• O algoritmo avalia o polinômio em um ponto x
• Para avaliar em outro ponto os coeficientes Ln,k
devem ser recalculados
• Muito eficiente para interpolar em um ponto
(valores intermediários não precisam ser
armazenados)
• Muito ineficiente para várias interpolações
• Quando um novo ponto é adicionado (xi, fi) todos
os cálculos devem ser repetidos
Polinômio de Lagrange
• A formulação dos polinômios de Lagrange pode
ser modificada para uma formulação recursiva
• Esta modificação se conhece como interpolação
de Neville
• A formulação de Neville permite obter um
algoritmo mais eficiente
• Caso vc for a utilizar interpolação de Lagrange e
o desempenho for um fator crítico implemente a
formula iterativa de Neville
ROTEIRO
• Introdução
• Polinômio de Taylor
• Polinômios de Lagrange
• Splines
• Comentários finais
Interpolação por Spline Cúbico
• A interpolação polinomial:
‒ Aproxima funções (ou dados) arbitrários em intervalos
fechados
‒ O polinômio satisfaz todos os pontos do intervalo
‒ Para satisfazer (n+1) pontos o polinômio tem grau n
‒ Aparecem polinômios de alta ordem com natureza
oscilatória
‒ Eventualmente, o polinômio não reproduz o
comportamento dos dados
Interpolação por Spline Cúbico
• Como construir um polinômio interpolador para
muitos pontos sem fortes oscilações?
‒ Dividir o intervalo em subintervalos
‒ Construir um polinômio interpolador para cada
subintervalo‒ Exigir condições de continuidade e diferenciabilidade
‒ Interpolação polinomial por partes
Interpolação por Spline Cúbico
• A interpolação por partes mais simples =
interpolação linear por partes
‒ Os pontos (x0, f0), (x1, f1), ... (xn, fn), são unidos por
segmentos de reta
‒ A função interpoladora não é diferenciável em todo o
intervalo, não reproduz curvaturas
Interpolação por Spline Cúbico
• A interpolação por splines cúbicos é a interpolação por
partes mais utilizada
‒ Utiliza um polinômio cúbico entre cada par de pontos
sucessivos
‒ Função interpoladora contínua e diferenciável em [x0 , xn]
‒ A segunda derivada da função é contínua
Interpolação por Spline Cúbico
• Definição: Dada a função f definida em [a, b] e um
conjunto de pontos a = x0, x1, ..., xn = b um spline
cúbico interpolador S é uma função que satisfaz as
seguintes condições
a) S(x) é um polinômio cúbico, Sj(x) no subintervalo
[xj, xj+1] para j = 0:n
b) Sj(xj) = f(xj) e Sj+1(xj+1) = f(xj+1) para j = 0:n-1
c) Sj+1(xj+1) = Sj(xj+1) para j = 0:n-2
  2 3( ) ( ) ( )j j j j j j j jS x a b x x c x x d x x      
Interpolação por Spline Cúbico
• Definição ...
d) S’j+1(xj+1) = S’j(xj+1) para j = 0:n-2
e) S’’j+1(xj+1) = S’’j(xj+1) para j = 0:n-2
f) Condições de contorno
1. S’’(x0) = S’’(xn)= 0 (contorno livre ou natural)
2. S’(x0) = f’(x0) e S’(xn)= f’(xn) (contorno fixado)
• Qual condição de contorno oferece uma melhor
aproximação?
Interpolação por Spline Cúbico
• Condições de contorno – Spline natural
− Aproximação menos precisa
− Não são necessárias informações sobre a
derivada da função nos extremos
• Condições de contorno – Spline fixado
− Aproximação mais precisa
− Inclui maiores informações sobre o problema
− Precisa da derivada da função nos extremos
Interpolação por Spline Cúbico
• Para calcularmos as constantes aj, bj, cj, e dj de
cada Spline Sj(x) devemos aplicar as condições
(a-f) da definição em
• Aplicando a condição (b) Sj(xj) = f(xj)
• Aplicando a condição (c) Sj+1(xj+1) = Sj(xj+1)
  2 3( ) ( ) ( )j j j j j j j jS x a b x x c x x d x x      
   j j j jS x a f x 
     
2 3
1 1 1 1j j j j j j j j j j ja a b x x c x x d x x         
Interpolação por Spline Cúbico
• Para simplificar a notação, definimos hj = xj+1-xj
• Calculamos a derivada do splibe cúbico Sj(x)
• Avaliando a derivada em xj
• Aplicando a condição (d) S’j+1(xj+1) = S’j(xj+1)
  22 ( ) 3 ( )j j j j j jS x b c x x d x x     
2 3
1 para 0 : -1 (1)j j j j j j j ja a b h c h d h j n     
 j j jS x b 
2
1 2 para 0 : -1 (2)j j j j j jb b c h d h j n    
Interpolação por Spline Cúbico
• Calculamos a segunda derivada do splibe Sj(x)
• Avaliando a segunda derivada em xj
• Aplicando a condição (e) S’’j+1(xj+1) = S’’j(xj+1)
• Isolando dj na equação anterior
  2 6 ( )j j j jS x c d x x   
  2j j jS x c 
1 3 para 0 : -1j j j jc c d h j n   
 1
1
 (3)
3
j j j
j
d c c
h
 
Interpolação por Spline Cúbico
• Substituindo eq. (3) na eq. (1)
• Substituindo eq. (3) na eq. (2)
• Isolamos bj na eq. (4)
• Reduzindo índice j→ j-1 na equação anterior
 
2
1 12 (4)
3
j
j j j j j j
h
a a b h c c    
 1 1 (5)j j j j jb b h c c   
   1 1
1
2 (6)
3
j
j j j j j
j
h
b a a c c
h
    
   11 1 1
1
1
2 (7)
3
j
j j j j j
j
h
b a a c c
h

  

   
Interpolação por Spline Cúbico
• Reduzindo índice j→ j-1 na eq. (5)
• Substituindo as eqs. (6 e 7) na eq. (8)
• A eq. (9) pode ser escrita para cada um dos
pontos internos x1, x2, ..., xn-1
• Precisamos incluir os extremos usando as
condições de contorno
 1 1 1 (8)j j j j jb b h c c    
     1 1 1 1 1 1 1
1
3 3
2 (9)j j j j j j j j j j j
j j
h c h h c h c a a a a
h h
      

      
Interpolação por Spline Cúbico
• Condição de contorno, natural S’’(x0) = S’’(xn)= 0
• Considerando que e a condição (e) da
definição obtemos
• As condições de contorno eqs. (10) em conjunto
com as eqs. (9) formam um sistema de ordem
(n+1) que pode ser utilizado para calcular cj,
j=0:n na forma
  2j j jS x c 
   0 0 0 10, 0, (10)n n nc S x c S x    
Ax b
Interpolação por Spline Cúbico
• SELA
Interpolação por Spline Cúbico
• Exemplo 5: Utilize splines cúbicos naturais Sj(x)
para aproximar a função f(x) = ex considerando
os pontos x0=0, x1=1, x2=2 e x3=3. Utilize a
função interpolante para calcular a integral de
f(x) no intervalo [0, 3], calcule o erro da
estimativa.
Interpolação por Spline Cúbico
• Exemplo 5 . . .
3, 0 : 3n i 
i 0 1 2 3
xi 0,0 1,0 2,0 3,0
fi 1 e e
2 e3
 
 
 
2 3
0 0 0 0 0 0 0 0 1
2 3
1 1 1 1 1 1 1 1 1 2
2 3
2 2 2 2 2 2 2 2 2 3
( ) ( ) ( ) , 
( ) ( ) ( ) , 
( ) ( ) ( ) , 
jS x a b x x c x x d x x x x x
S x a b x x c x x d x x x x x
S x a b x x c x x d x x x x x
        
        
        
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Construímos o sistema
• Usando a eq. (9) para x1
• Usando a eq. (9) para x2
• Considerando as condições de contorno para x0 e x3
, 0 : 2i ia f i 
Ax b
0 30, 0c c 
     0 0 1 0 1 2 2 2 1 1 0
1 0
3 3
2h c h h c h c a a a a
h h
      
     1 1 2 1 2 3 3 3 2 2 1
2 1
3 3
2h c h h c h c a a a a
h h
      
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Construímos o sistema
• Usando a eq. (9) para x1
• Usando a eq. (9) para x2
• Considerando as condições de contorno para x0 e x3
, 0 : 2i ia f i 
Ax b
0 30, 0c c 
     0 0 1 0 1 2 2 2 1 1 0
1 0
3 3
2h c h h c h c a a a a
h h
      
     1 1 2 1 2 3 3 3 2 2 1
2 1
3 3
2h c h h c h c a a a a
h h
      
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Considerando
• Resolvendo
0 1 2 1h h h  
   
   
0
2
1
3 2 2
2
3
01 0 0 0
3 3 11 4 1 0
0 1 4 1 3 3
0 0 0 1 0
c
e e ec
c e e e e
c
   
                    
      
0
1
2
3
0,000
0,757
5,830
0,000
c
c
c
c
   
   
   
   
   
  
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Usando a eq. (6)
• Usando a eq. (3)
0
1
2
1, 466
2,223
8,810
b
b
b
   
      
      
   1 1
1
2 , 0 : 2
3
j
j j j j j
j
h
b a a c c j
h
     
 1
1
, 0 : 2
3
j j j
j
d c c j
h
  
0
1
2
0,252
1,691
1,943
d
d
d
   
      
      
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Resultados
i 0 1 2
ai 1 e e
2
bi 1,466 2,223 8,810
ci 0,000 0,757 5,830
di 0,252 1,691 -1,943
 
 
 
3
0
2 3
1
2 3
2
1 1, 466 0,252
2,718 2,223( 1) 0,757( 1) 1,691( 1)
7,389 8,810( 2) 5,830( 2) 1,943( 2)
S x x x
S x x x x
S x x x x
  
      
      
Interpolação por Spline Cúbico
• Exemplo 5 . . .
( ) xf x e
Interpolação por Spline Cúbico
• Exemplo 5 . . .
( ) xf x e
0S 1S 2S
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Calculo da integral
3
3
0
0
19,086x xeI e dx e  
1 2 3
0 1 2
0 1 2
( ) ( ) ( )aI S x dx S x dx S x dx    
1 1
1
2 3
2 3 4
( )( ) ( ) ( )
 ( ) ( ) ( ) ( )
2 3 4
j j
j j
j
j
x x
j j j j j j j j
x x
x
j j j
j j j j j
x
S x dx a b x x c x x d x x dx
b c d
a x x x x x x x x
 

        
       
 
Interpolação por Spline Cúbico
• Exemplo 5 . . .
• Calculo da integral . . .
19,552aI 
100% 2,4%e ar
a
I I
e
I

 
• Como pode ser aprimorada a interpolação
anterior?
− Incluindo maiores informações sobre a função
− Splines fixados
− Aumentar o número de pontos
Interpolação por Spline Cúbico
• Entrada: n, (x0, f0), (x1, f1), . . . , (xn, fn)
• Saída: aj, bj, cj, e dj para j=0:n-1
1. aj= f(xj)=fj
2. Calcular cj usando o sistema de equações
3. Calcular bj
4. Calcular dj
  2 3( ) ( ) ( )j j j j j j j jS x a b x x c x x d x x      
   1 1
1
2 (6)
3
j
j j j j j
j
h
b a a c c
h
    
 1
1
 (3)
3
j j j
j
d c c
h
 
Considerações Finais
• Interpolação polinomial
− Função que satisfaz os pontos (xi, fi)
• Aproximação por polinômio de Taylor
− Válido na vizinhança de um ponto
− Insatisfatório para intervalos largos
• Interpolação de Lagrange
− Válido em intervalos largos
− Alto custo computacional para diversos valores de x
− Oscilatório com polinômios de alta ordem (muitos
pontos)
Considerações Finais
• Alternativas
− Fórmula iterativa de Neville
− Polinômios de Newton
− Interpolação polinomial por partes
• Splines cúbicos
− Cada subintervalo é aproximado por uma função
cúbica
− Funções pertencem a C2[x0, xn]
− Naturais ou fixados

Continue navegando