PRCT13_DIFERENCIAS_DIVIDIDAS
-
Upload
gerardo-d-aguilar -
Category
Documents
-
view
216 -
download
0
Transcript of PRCT13_DIFERENCIAS_DIVIDIDAS
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
1/10
1ANLISIS NUMRICO
PRCTICA 13Diferencias divididas de Newton
Fecha de entrega del reporte:16
/
5/2013
. Grupo:_ 3AV3____
Nombre del Alumno ____Gerardo Daniel Aguilar Jurez_ Boleta__2012302343__
Nombre del Profesor __Miguel Jimnez Guzmn _
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
2/10
2 DIFERENCIAS DIVIDIDAS DE NEWTON
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
3/10
3ANLISIS NUMRICO
NDICE1 Objetivos2 Anlisis del mtodo
3 Aplicaciones del mtodo4 Programacin en MATLAB
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
4/10
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
5/10
5ANLISIS NUMRICO
Las evaluaciones de las funciones puestas entre corchetes (f[x1, x0], por
ejemplo) son diferencias divididas finitas.
La primera diferencia dividida finita se representa como:
La segunda diferencia dividida finita, la cual representa la diferencia de las
dos primeras diferencias divididas, se expresa como:
La nsima diferencia dividida finita es:
3 APLICACIN DEL MTODOCon este ejemplo se ver mas claramente de lo que se habla:
x f(x) _ _ _
-3 2 _
7 -1 _
17 9 _ _ _
27 11 _
http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_n+,x_{n+-+1}+,+/ldots+,x_1+,x_0+]+=+{{f[x_n+,x_{n+-+1}+,+/ldots+,x_1+]+-+f[x_{n+-+1}+,x_{n+-+2}+,+/ldots+,x_0+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+,x_k+]+=+{{f[x_i+,x_j+]+-+f[x_j+,x_k+]}+/over+{x_i+-+x_k+}}http://aprendeenlinea.udea.edu.co/lms/moodle/filter/tex/displaytex.php?f[x_i+,x_j+]+=+{{f(x_i+)+-+f(x_j+)}+/over+{x_i+-+x_j+}} -
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
6/10
6 DIFERENCIAS DIVIDIDAS DE NEWTON
Los valores de b se encuentran en las celdas que tienen borde rojo.
Una vez obtenidos dichos valores simplemente se sustituyen en la ecuacion
general, se simplifica dicha ecuacion y se tiene una cuya curva pasa casi
exactamente por todos los puntos especificados.
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
7/10
7ANLISIS NUMRICO
4 PROGRAMACIN EN MATLAB Cdigo en MATLAB
%Interpolacion de newton
clear;clc;
disp('metodos numericos');
disp('interpolacion');
disp('interpolacion');
n=input('ingrese el grado del polinomio, n=');
fprintf('Se necesitan %.0f puntos\n',n+1);
disp('ingrese los puntos');
for i=1:n+1
fprintf('x%.0f=',i-1);
X(i)=input(' ');
fprintf('y%.0f=',i-1);
Y(i)=input(' ');
end
DD=zeros(n+1);
DD(:,1)=Y;
for k=2:n+1
for J=k:n+1
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
8/10
8 DIFERENCIAS DIVIDIDAS DE NEWTON
DD(J,k)=[DD(J,k-1)-DD(J-1,k-1)]/[X(J)-X(J-k+1)];
end
end
disp('La matriz de diferencias divididas es:');
disp(DD);
disp('El polinomio de newton es');
syms x;
polnew=DD(1,1);
P=1;
for i=1:n
P=P*(x-X(i));
polnew=polnew+P*DD(i+1,i+1);
end
polnew=expand(polnew);
pretty(polnew);
x=input('ingrese el valor de x a interpolar,\nx=');
vi=eval(polnew);
fprintf('el valor interpolado es %9.6f\n',vi);
hold on;
ezplot(polnew,[X(1) X(n+1)]);
plot(x,vi,'r+');
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
9/10
9ANLISIS NUMRICO
Capturas
-
8/12/2019 PRCT13_DIFERENCIAS_DIVIDIDAS
10/10
10 DIFERENCIAS DIVIDIDAS DE NEWTON