Logo Passei Direto

A maior rede de estudos do Brasil

Grátis
Hermite_n

Pré-visualização | Página 1 de 1

function Hermite_N(X,Y,DF)
%Hermite_N([1.3 1.6 1.9],[0.62009 0.4554 0.28182],[-0.52202 -0.56990 -0.58116])
%Hermite_N([0 1 4],[0 1 2],[1.1667 0.83333 -0.16669]) derivada lagrange
%Hermite_N([0 1 4],[0 1 2],[10 8 2]) derivadas professor
%x = [0 1 4]';
%y = [0 1 2]';
%dy= [1.1667 0.83333 -0.16669]
n=length(X);
Q=zeros(2,n);
for i=1:n
 z(2*i-1)=X(i);
 z(2*i)=X(i);
 Q(2*i-1,1)=Y(i);
 Q(2*i,1)=Y(i);
 Q(2*i,2)=DF(i);
 if i~=1
 Q(2*i-1,2)=(Q(2*i-1,1)-Q(2*i-2,1))/(z(2*i-1)-z(2*i-2));
 end
end
for i=3:2*n
 for j=3:i
 Q(i,j)=(Q(i,j-1)-Q(i-1,j-1))/(z(i)-z(i-j+1));
 end
end
%X = sym ('X');
pkg load symbolic
syms x %funca simbolica
Fx = Q(1,1);
for p=1:numel(X)-1
 L=1;
 for k=1:p
 L=L*((x-X(k)));
 end
 Fx=Fx+L*Q(p+1,p+1);
end
ezplot(Fx)
x1=1;
%x1=0;
val=double(subs(Fx,x1))
%plot(x1,val,'r' )
pretty(expand(Fx))
end