Anda di halaman 1dari 6

PRIMER CLASE DEL TERCER PACIAL DE METODOS NUMERICOS

Las frmulas de derivacin numrica son importantes en el desarrollo de


algoritmos para resolver problemas de contorno
de ecuaciones diferenciales ordinarias y ecuaciones en derivadas
parciales.

La derivacin numrica evala numricamente la derivada de una funcin a


partir de valores numricos de dicha funcin, sin necesidad por tanto de
conocer la expresin analtica de dicha derivada.

La derivacin numrica de funciones es muy sensible, por su definicin, a


pequeas perturbaciones en los datos o a la precisin de estos.
Mientras que la integracin produce en los resultados un efecto de
amortiguacin de los efectos de las oscilaciones en los datos, la
derivacin todo lo contrario.
Las dos funciones de la figura tienen integrales muy parecidas mientras
que sus derivadas en distintos puntos pueden diferir muchsimo.
Si se necesita derivar funciones cuyos valores se conocen slo en un
conjunto dado de puntos concretos, lo ms aconsejable es ajustar alguna
funcin continua a esos puntos y derivar luego la funcin obtenida.

Si los datos de ese conjunto tienen un cierto patrn de continuidad, se


puede interpolar una funcin.

Si se sabe que tienen ruido, lo ms probable es que se requiera una


aproximacin mediante mnimos cuadrados o splines.

Se busca aproximar numricamente la derivada de f(x):


f'(x) = lim h0 (f(x + h) f(x))/h

Mtodo:
Se elige una sucesin {hk} tal que hk 0 y se calcula el lmite de la
sucesin
Dk = (f(x + hk ) f(x))/hk;

para k = 1, 2......

Los trminos de la sucesin {Dk }se calculan hasta que


|DN+1 DN| |DN DN1| ;
la intencin es tratar de determinar la mejor aproximacin antes de que
los trminos empiecen a alejarse del lmite.

DIFERENCIACION NUMERICA
2 1 () () () ()
= = = =
2 1

Aproximacin hacia adelante; atrs; central

( + 1) () () ( + 1) ( + 1) ( 1)
= ; = ; =
2


() = sin( + ) ; = 2 ( ) ; = ()

Programacin
clc; clear all; close all
Fs=50;
t=(1/Fs):(1/Fs):1;
y=sin(2*pi*t);
h=(1/Fs);
plot(t,y)
hold on

%aproximacion hacia adelante


for i=1:Fs-1
d1(i)=(y(i+1)-y(i))/h;
end
plot(t(2:end),d)

%aproximacion hacia atras


for i=1:Fs-1
d2(i)=(y(i)-y(i+1))/h;
end
plot(t(2:end),d)

%aproximacion central
for i=1:Fs-1
d3(i)=(y(i+1)-y(i-1))/2*h;
end Grafica der. Delante, atrs y central
plot(t(2:end),d)
Segunda Derivada

%Segunda derivada hacia adelante


for i=1:Fs-2
d2=(f(xi+2)-2f(xi+1)+f(xi))/h^2;
end
plot(t(2:end),d)

%Segunda derivada hacia atrs


for i=1:Fs-3
d2=(f(xi)-2f(xi+1)+f(x1-2))/h^2;
end
plot(t(2:end),d)

%Segunda derivada aprox central


for i=1:Fs-1
d2=(f(xi+1)-2f(xi)+f(xi-1))/h^2;
end
plot(t(2:Fs-1),d)
Para la funcion f(x)=e^(sen(x))

a) calcule el valor exacto de la primera y segunda derivada en x=pi


b) Estime la primera derivada (3 aprox.) con h=0.2, 0.05 y 0.002
c) Realizar lo mismo con la segunda derivada
d) Calcule el error absoluto en ambas estimaciones

SOLUCION
a) calcule el valor exacto de la primera y segunda derivada en x=pi

clc, clear all


syms x
f=inline('exp(sin(x))');
v1=subs(diff(exp(sin(x))),pi);
v2=subs(diff(diff(exp(sin(x)))),pi);
h=0.2; xi=pi;

% a delante
d1=(f(xi+h)-f(xi))/h
e1=abs(v1-d1)
d2=(f(xi+2*h)-2*f(xi+h)+f(xi))/h^2
e2=abs(v2-d2)

d1 = -0.9009; e1 =0.0991; d2 =0.9452; e2 = 0.0548

b) Estime la primera derivada (3 aprox.) con h=0.2, 0.05 y 0.002

clc; clear all; close all


Fs=pi;
t=(1/Fs):(1/Fs):1;
y=exp(sin(t));
h=0.2;
plot(t,y)
hold on

%aproximacion hacia adelante


for i=1:Fs-1
d(i)=(y(i+1)-y(i))/h
end
plot(t(2:end),d)

cambiamos el valor de h por 0.2, 0.05 y 0.002 y en funcin delante,


Atrs y central.
VALOR 1 - 0.2 VALOR 2 - 0.05 VALOR 3 - 0.002
Delante -0.9009 -0.9750 -0.9990
Atrs -1.0989 -1.0250 -1.0010
Central -0.0400 -0.0025 -0.000004
c) Realizar lo mismo con la segunda derivada

VALOR 1 - 0.2 VALOR 2 - 0.05 VALOR 3 - 0.002


Delante 0.9452 0.9959 1
Atrs 0.9141 0.9954 1
Central 0.9900 0.9994 1

d) Calcule el error absoluto en ambas estimaciones

PRIMERA DERIVADA:

ERROR 1 - 0.2 ERROR 2 - 0.05 ERROR 3 - 0.002


Delante 0.0991 0.0250 0.0010
Atrs 0.0989 0.0250 0.0010
Central 0.9600 0.9975 1

SEGUNDA DERIVADA:

ERROR 1 - 0.2 ERROR 2 - 0.05 ERROR 3 - 0.002


Delante 0.05480 0.0041 0.0000069
Atrs 0.08590 0.00460 0.0000070
Central 0.01000 0.00062505 0.0000010

Anda mungkin juga menyukai