Pensamentos Vividos

sexta-feira, maio 20, 2005

Interpolação de Lagrange

A funçao a seguir demonstrada foi desenvolvida em Matlab e permite fazer a Interpolaçao de Lagrange de um dado valor.

function [Lagrange]=lagrange()
%
% Este programa faz a Interpolaçao de Lagrange de um dado valor "z"
% para um qualquer vector de valores, desde que contenham o mesmo
% numero de elementos. Os dados devem ser inseridos dentro de parentesis
% rectos [], onde os valores devem ser separados por espaços, com excepçao
% do valor a interpolar que deve ser inserido normalmente.
%

x=input('Insira o vector x:');
y=input('insira o vector F(x):');
z=input('Insira o valor a interpolar:');

b=length(x); % Dimensão do Vector x.
d=length(y); % Dimensão do Vector F(x).
if (b==d) % Verifica as dimensões dos vetores.
Result=0;
i=1; k=1;
for (Cont=1:b) % Faz a interpolação de 1 até Nº de colunas do vetor.
f=1;
for(j=1:b) % Calcula todos os polinomios.
if (k~=j)
f=f*[(z-x(i,j))/(x(i,k)-x(i,j))];
end
end
Result=Result+f*y(1,Cont); %Guarda o Valor da Interpolação.
k=k+1; j=1;
end
disp (' ')
disp ('O resultado da interpolação é:')
disp (' ')
disp (Result)
else
disp ('OBS: Os vectores devem conter o mesmo numero de elementos')
end
end

Trabalho desenvolvido para a disciplina de Analise Numerica por:
Nuno Santos & David Silva e Pinto

1 Comments:

  • Drogas-te?
    Qual é que a minha nao faz esse efeito , e precisava pelo menos para um dia...

    By Blogger 1, at 1:20 da tarde  

Enviar um comentário

<< Home