Sei sulla pagina 1di 4

UNIVERSIDADE FEDERAL DE UBERLNDIA FACULDADE DE ENGENHARIA ELTRICA MTODOS COMPUTACIONAIS

JACSON HUDSON INCIO FERREIRA

Interpolao de Lagrange

Uberlndia 2013

Mtodo de Interpolao de Lagrange


Interpolao Seja uma funo y=f(x), conhecida por n+1 pontos isolados (xi,yi), i = 0,1,2,...,n. A interpolao consiste em estimar um valor para f(x) para qualquer x que est no intervalo (x0,xn). Se para fazer a estimativa do valor de f(x) for utilizado um polinmio que passa por todos os pontos conhecidos, ento est sendo feita uma interpolao polinomial. 2) Interpolao polinomial Consiste em determinar uma funo, que assume valores conhecidos em certos pontos. Para cada n pontos pode-se obter uma funo polinomial de grau at n-1. Assim para fazer interpolao de grau 1 precisamos de 2 pontos (xi,f(Xi)) e (xi+1, f(Xi+1), de modo que o valor de x para o qual se quer o valor de f( Xi) esteja no intervalo (xi, xi+1). 3) Interpolao de Lagrange Se x0, x1,..., xn so n + 1 nmeros distintos e f uma funo cujos valores nestes nmeros so dados, ento existe um nico polinmio P(x) de grau no mximo n com f (xk) = P(xk ; para k = 0; 1; :::; n. Este polinmio dado por:

onde, para cada k=0,1,...,n:

Exemplo: Utilize os polinmios de Lagrange para obter um polinmio de interpolao para os dados:
x -0.2 0.2 0.4 0.6 y 0,5 0.505 0.515 0.530

utilize o polinmio para estimar os valores de y quando x=0.3. Resposta: Utilizando a ferramenta computacional Matlab para resolver o exemplo e desenvolvendo o algoritmo abaixo para encontrar os polinmios de Lagrange, o polinmio interpolador e o valor para x=0.3 :
function [yi,pol]=lagrange(xs,ys,x) %interpolao pelo Polinmio de Lagrange %Obter o tamanho do vetor x n=length(xs); %Validar o tamanho de x igual de y if length (ys)~=n, error('x e y devem ter mesma longitude'); end yi=0; pol = '0'; %Calcular os n fatores de lagrange for i=1:n %cada fator o produto de (x-xj)/(xi-xj) produto= ys(i); termino= num2str(ys(i)); for j=1:n if i~=j produto = produto*(x-xs(j))/(xs(i)-xs(j)); termino=strcat(termino,'*(x-',num2str(xs(j)),... ')/(', num2str (xs(i)),'-', num2str(xs(j)), ')'); end end yi= yi + produto; pol = strcat(pol,'+',termino) end %Forma Simblica Matemtica pol=sym(pol); pol=simplify(pol); pol=inline(char(pol)); plot(xs,ys)

pol(x) = - 1.4693.10-39 x3 + 0.0625 x2 + 0.0125 x + 0.5 f(0.3) = 0.5094

O grfico da funo :
Polinmio de Lagrange 0.54 0.535 0.53 0.525

Eixo Y

0.52 0.515 0.51 0.505 0.5 -0.2

-0.1

0.1

0.2 Eixo X

0.3

0.4

0.5

0.6

Comentrios finais: Interpolao uma estratgia de clculo que permite determinar, por aproximao, um valor desconhecido que se encontra entre um intervalo de valores conhecidos. Quando se faz necessrio fazer vrias interpolaes, o mtodo do polinmio de Lagrange exigi uma quantidade excessiva de clculos, tornando o mtodo longo e extenso. Sendo assim, quando o mtodo de Lagrange exige apenas uma interpolao ou um nmero no to expressivo, ele to eficiente quanto qualquer outro mtodo.

Potrebbero piacerti anche