Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Interpolação por Lagrange, Notas de estudo de Matemática

Explicação com exercício resolvido de interpolação polinomial através de Lagrange.

Tipologia: Notas de estudo

2018

Compartilhado em 02/05/2018

sr-diego-oliveira-5
sr-diego-oliveira-5 🇧🇷

4.6

(150)

71 documentos

1 / 6

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Cálculo Numérico Diego A. Oliveira - Vitória da Conquista/BA
Interpolação Por Lagrange
Escrito por Diego Oliveira - Publicado em 04/03/2016 - Atualizado em 24/11/2017
O que é?
Trata-se de uma forma de determinar uma função polinomial que passa por um
determinado conjunto de pontos dados.
Como funciona?
Para entender a Interpolação de Lagrange repare bem nessas sequencias:
L0=1
01
·
2
02
·
3
03
... n
0n
L1=0
10
·
2
12
·
3
13
... n
1n
L2=0
20
·
1
21
·
3
23
... n
2n
.
.
.
Ln=0
n0
·
1
n1
·
3
n2
... n1
nn1
Note que em L0não é feito 0no numerador muito menos 00no denom-
inador, o que resultaria numa singularidade. Raciocínio semelhante ocorre para L1,
L2e assim por diante.
O que a interpolação de Lagrange nos diz é que: dado um conjunto de pontos
(x0, y0),...,(xn, yn) então um polinômio (de grau n) que se ajusta a esses pontos é:
p() = y0L0() + y1L1() + y2L2() + y3L3() + ···+ynLn()
1
pf3
pf4
pf5

Pré-visualização parcial do texto

Baixe Interpolação por Lagrange e outras Notas de estudo em PDF para Matemática, somente na Docsity!

Interpolação Por Lagrange

Contato: [email protected] Escrito por Diego Oliveira - Publicado em 04/03/2016 - Atualizado em 24/11/

O que é? Trata-se de uma forma de determinar uma função polinomial que passa por um determinado conjunto de pontos dados.

Como funciona? Para entender a Interpolação de Lagrange repare bem nessas sequencias:

L 0 =

 0 −  1^ ·^

 0 −  2^ ·^

 0 −  3^...

n  0 n

L 1 =

 1 −  0^ ·^

 1 −  2^ ·^

 1 −  3^...

n  1 n

L 2 =

 2 −  0^ ·^

 2 −  1^ ·^

 2 −  3^...

n  2 n ...

L n = (^) ^ ^ ^0 n ^ 0

· ^ −^ ^1

n ^ 1

· ^ −^ ^3

n ^ 2

... ^ ^ n ^1 n ^ n 1 Note que em L 0 não é feito 0 no numerador muito menos 0 0 no denom- inador, o que resultaria numa singularidade. Raciocínio semelhante ocorre para L 1 , L 2 e assim por diante.

O que a interpolação de Lagrange nos diz é que: dado um conjunto de pontos (x 0 , y 0 ), ... ,(x n , y n ) então um polinômio (de grau n) que se ajusta a esses pontos é:

p ( ) = y 0 L 0 ( ) + y 1 L 1 ( ) + y 2 L 2 ( ) + y 3 L 3 ( ) + · · · + ynLn ( )

Exemplo 1: Dado os pontos (1, 3); (2, 6); (4, 8) e (7, 12) encontre um polinômio interpolador de grau 3 por meio de Lagrange.

Solução: Os pontos dados são:

(x 0 , y 0 ) = (1, 3); (x 1 , y 1 ) = (2, 6); (x 2 , y 2 ) = (4, 8); (x 3 , y 3 ) = (7, 12);

Com base neles calculamos L 0 , L 1 , L 2 e L 3.

L 0 =

1 − 2 ·^

1 − 4 ·^

1 − 7 =^ −^

L 1 =  2^ −−^^11 ·  2^ −−^^44 ·  2^ −−^^77 = 101 ( ^3 − 12 ^2 + 39  − 28 )

L 2 =

4 − 1 ·^

4 − 2 ·^

4 − 7 =^ 

L 3 =

7 − 1 ·^

7 − 2 ·^

7 − 4 =^

Assim, o polinômio interpolador será:

p ( ) = 3 L 0 ( ) + 6 L 1 ( ) + 8 L 2 ( ) + 12 L 3 ( )

p ( ) = 3



 + 6



+ 8 ^3 − 10 ^2 + 23  − 14 ^ + 12



ou mais simplificadamente:

p ( ) =

3 −^2579

2 +^3014

15 ^ −^

Interpolação por Lagrange em Pascal

1 {A constante N marca o numero de pontos que serao utilizados. E a variavel valor contem o valor utilizado para x} 2 3 Program Lagrange; 4 //Total de pontos que serao usados 5 Const N = 4; 6 var px, valor: Real; 7 8 var L: array [0..(N-1)] of real; 9 var x: array [0..(N-1)] of real; 10 var y: array [0..(N-1)] of real; 11 12 var i, j: integer; 13 Begin 14 WriteLn (’Entre com os valores de x:’); 15 for i:=0 to (N-1) do 16 begin 17 ReadLn (x[i]); 18 end ; 19 WriteLn (’Entre com os valores de y:’); 20 for i:=0 to (N-1) do 21 begin 22 ReadLn (y[i]); 23 end ; 24 25 {Calcula p(1). Para calcular p(n) mude o valor desta linha para n} 26 valor:=1; 27 28 for i:=0 to (N-1) do 29 begin 30 L[i] :=1; 31 end ; 32 33 for i:=0 to (N-1) do 34 Begin 35 for j:=0 to (N-1) do 36 begin 37 if (i <> j) then 38 begin 39 L[i]:=(valor-x[j])/(x[i]-x[j])L[i]; 40 end ; 41 end ; 42 j := 0; 43 end ; 44 45 //Calculando o polinomio 46 px:=0; 47 for i:=0 to (N-1) do 48 begin 49 px:=y[i]L[i] + px;

50 end ; 51 52 //Imprimindo resultado 53 WriteLn (); 54 WriteLn (px); 55 End.