sábado, 21 de mayo de 2011

chavos aqui les dejo el codigo en matlab para los mas vagos de

para la interpolación por "splines" de orden 1

espero que los disfruten

http://sites.google.com/site/matematicasingenieria/splines_orden_1

para aquellos que todavia no encontraron nada mas les dejo este link de Spline cúbico de interpolación de utilidad

http://translate.google.com/translate?hl=es&langpair=en%7Ces&u=http://www.akiti.ca/CubicSpline.html esprero que les sirva
aqui les dejo algo para alguunos vagos como yo .. SOBRE interpolacion spline
http://translate.google.com/translate?hl=es&langpair=en%7Ces&u=http://www.math.ucla.edu/~baker/java/hoefer/Spline.htm

simulador de interpolacion de NEWTON

bueno chicos les dejo aqui unos portales para que lo reviden sobre INTERPOLACIONES DE LAGRANGE y NEWTON donde solo necesitan solo meter los datos de X, Y ... espero que les sirva..
http://www.cidse.itcr.ac.cr/cursos-linea/NUMERICO/index.htm
http://www.uam.es/personal_pdi/ciencias/barcelo/cnumerico/recursos/interpolacion.html
interpolacion de newton y lagrange
http://www.cidse.itcr.ac.cr/revistamate/ContribucionesN32001/Ascheri-Pizarro1/pag3.htm

jueves, 12 de mayo de 2011

Diferencias divididas de Newton. Sólo tienes que digitar loas valores de las parejas X y Y en el archivo y este mostrará al final el polinomio de interpolación de Newton, su gráfica, y los puntos originales X y Y.
para mas informacion visiten el siguiente enlace....
http://www.mygnet.net/codigos/matlab/analisisnumericos/diferencias_divididas_de_newton.2506
---------------------------------------------------------------
clear;clc
x=[0 1 2 3];y=[1 2 2.5 4]; % entrada de datos

xa=x;ya=y;
% Formacion de las diferencias divididas
d=zeros(length(y));
d(:,1)=y';
for k=2:length(x)
for j=1:length(x)+1-k
d(j,k)=(d(j+1,k-1)-d(j,k-1))/(x(j+k-1)-x(j));
end
end
% Formacion del polinomio
for w=1:length(x)
ds=num2str(abs(d(1,w)));
if w>1
if x(w-1)<0 sg1='+'; else sg1='-'; end end if d(1,w)<0 sg2='-'; else sg2='+'; end if w==1 acum=num2str(d(1,1)); elseif w==2 polact=['(x' sg1 num2str(abs(x(w-1))) ')' ]; actual=[ds '*' polact]; acum=[acum sg2 actual]; else polact=[polact '.*' '(x' sg1 num2str(abs(x(w-1))) ')' ]; actual=[ds '*' polact]; acum=[acum sg2 actual]; end end % Presentacion de resultados fprintf(' n Valores de X y Y n '); disp(xa); disp(ya); fprintf('n Polinomio interpolación Newton : %s n',acum); x=input(' X interp = '); if x>max(xa)x fprintf('t Punto fuera de rango. El resultado puede ser equivocado n');
end
xinterp=x;
yinterp=eval(acum);
fprintf(' Y(%g) = %g n',x,yinterp);
% Grafica de los puntos
fprintf(' Pulse cualquier tecla para ver la grafica de los puntos n');
pause
xg=linspace(min(xa),max(xa));
x=xg;yg=eval(acum);
plot(xg,yg,xa,ya,'.r',xinterp,yinterp,'or');
grid

miércoles, 11 de mayo de 2011