Interpolação por Lagrange

Interpolação por Lagrange

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA

Interpolacao de Lagrange Contato: nibblediego@gmail.com

Escrito em 04/03/2016 e atualizado em 08/10/2017.

O que e?

Trata-se de uma tecnica para determinar uma funcao polinomial que passa por um determinado conjunto de pontos dados.

Para entender a Interpolacao de Lagrange repare bem nessas sequencias:

Note que em L0 nao e feito x−x0 no numerador muito menos x0−x0 no denominador, o que resultaria numa singularidade. Raciocınio semelhante ocorre para L1, L2 e assim por diante.

O que a interpolacao de Lagrange nos diz e que: dado um conjunto de pontos (x0, y0),...,(xn, yn) entao um polinomio que se ajusta a esses pontos e:

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA

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

Solucao: Os pontos dados sao:

Assim, o polinomio interpolador sera:

ou mais simplificadamente:

Na proxima pagina e apresentado uma implementacao do algoritmo in- 2

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA terpolador de Lagrange escrito em Portugol. Utilizando os pontos (1, 3); (2, 6); (4, 8) e (7, 12) como entrada e a variavel valor igual a um. O resultado sera aproximadamente igual a 3, que e o mesmo resultado que encon-

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA Interpolacao por Lagrange em VISUALG

1 ALGORITMO "Lagrange" 2 // Autor : Diego Oliveira 3 // Data : 07/10/2017 4 var 5 // Grau que a funcao tera 6 grau : INTEIRO 7 // Valor de x que sera calculado 8 valorX : REAL 9 // Variavel que contera a resposta 10 res : REAL 1 12 //Funcao que calcula p(valorX) por lagrange 13 FUNCAO lagrange(gr,vx: INTEIRO) : REAL 14 15 VAR 16 //Contadores 17 cont, cont1 : INTEIRO 18 Cordenadas X e Y dos pontos 19 // Para graus de polinomios diferente de 3 altere o valor dos vetores 20 X : vetor[0..3] DE INTEIRO 21 Y : vetor[0..3] DE INTEIRO 2 L : vetor[0..3] DE REAL 23 Px : REAL 24 25 INICIO 26 PARA cont <- 0 ATE gr FACA 27 ESCREVAL("Entre com x", cont) 28 LEIA(Y[cont]) 29 ESCREVAL("Entre com y",cont) 30 LEIA(X[cont]) 31 FIMPARA 32 3 //Calculo dos L’s 34 PARA cont <-0 ATE gr FACA 35 L[cont]<-1 36 FIMPARA 37 38 PARA cont <-0 ATE gr FACA 39 PARA cont1 <-0 ATE gr FACA 40 SE (cont <> cont1)ENTAO 41 L[cont] <-((vx -X[cont1])/(X[cont]-X[ cont1]))*L[cont] 42 SENAO 43 cont1 <-cont1+1 4 FIMSE

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA

45 FIMPARA 46 FIMPARA 47 48 //Escrevendo P(x) 49 Px <- 0 50 PARA cont <-0 ATE gr FACA 51 Px <- Y[cont]*L[cont]+Px 52 FIMPARA 53 54 // Retorna o valor de Px para a variavel global ’res’ 5 RETORNE Px 56 FIMFUNCAO 57 58 INICIO 59 grau <-3 60 valorX <-1 61 62 //Passa os valores para a funcao 63 res <- lagrange(grau,valorX) 64 //Exibe o resultado 65 ESCREVAL(res) 6 FIMALGORITMO

Calculo Numerico Diego A. Oliveira - Vitoria da Conquista/BA

Este trabalho esta licenciado com uma Licenca Creative Commons - Atribuicao-NaoComercial- CompartilhaIgual 4.0 Internacional.

Esse documento esta sujeito a constante atualizacao ou mesmo correcoes, por isso, certifique se que o que voce tem em maos e de fato a ultima versao do mesmo. Para saber, bem como ter acesso a varios outros exercıcios resolvidos de matematica, acesse: w.number.890m.com

E se alguma passagem ficou obscura ou se algum erro foi cometido por favor entre em contato para que possa ser feito a devida correcao.

nibblediego@gmail.com w.facebook.com/theNumberType

w.number.890m.com 6

Comentários