Derivadas de datos espaciados

Solo disponible en BuenasTareas
  • Páginas : 2 (307 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de enero de 2012
Leer documento completo
Vista previa del texto
Derivadas de Datos igualmente espaciados.
Formula de 3 puntos.
Suponiendo que tenemos x0, x1,… xn y son puntos en un intervalo y que cada uno tiene su correspondiente f(x).
Si partimos de laformula del polinomio interpolador de lagrange

entonces tenemos que al derivar esta expresión en algún punto Xj obtenemos:

Esta formula recibe el nombre de formula de (n+1) puntos para aproximarf’(Xj).
A partir de esta formula obtendremos la formula de tres.
Como los datos son igualmente espaciados entonces supondremos que:

Suponiendo que tenemos 3 puntos igualmente espaciados,aplicando la formula anterios con Xj= x0,x1,x2 respectivamente obtenemos las tres siguientes formulas:

Con estas tres formulas podemos sacar las derivadas de X0, X1, X2 respectivamente solo basta conaplicarlas.

ALGORITMO EN MATLAB

syms x;
funcion= input('Ingrese la funcion:');

xaux= input('Ingrese el primer valor de x:');

h= input('Ingrese el valor de h:');

if h==0

disp('Elvalor de h no puede ser cero')
h= input('Ingrese el valor de h:');

end;

vectorX=[0:0:3];

vectorX(1)=xaux;

vectorX(2)=vectorX(1)+h;

vectorX(3)=vectorX(2)+h;vectorFx=[0:0:3];

for i=1:3,
val= subs(funcion, x, vectorX(i));
vectorFx(i)=val;
end



%%subs(y, x, 2)

derivada=diff(funcion, x);

vectorVreales=[0:0:3];

for i=1:3,val= subs(derivada, x, vectorX(i));
vectorVreales(i)=val;
end

vectorAproximados=[0:0:3];


vectorAproximados(1)=(1/h)*((-(3/2)*(vectorFx(1)))+(2*vectorFx(2))-(1/2*(vectorFx(3))));vectorAproximados(2)=(1/h)*(((-1/2)*(vectorFx(1))) + ((1/2)*(vectorFx(3))));

vectorAproximados(3)=(1/h)*(((1/2)*(vectorFx(1)))+(-2*vectorFx(2))+(3/2*(vectorFx(3))));disp('Valores de X')
disp( vectorX)

disp('Valores de f(x)')
disp( vectorFx)

disp('Valores reales de las derivadas')
disp(vectorVreales)

disp('Valores aproximados de las derivadas')...
tracking img