Sei sulla pagina 1di 6

Objetivos

- Aproximarnumricamenteladerivadadeunafuncinapartirdevaloresconocidosde
lafuncin.

ComandosdeMatlab

eps

Eselepsilonmquina,suvalores2^(52),redondeando2.22e-16

Ejemplosresueltos

1

Diferenciaprogresiva: ( )
( ) ( )
'
f a h f a
f a
h
+
~

Aplicacin:Vamosaelegirunasucesindepuntos
n
h deformaque 0
n
h
yanalizarquocurrecon
( ) ( )
n
n
n
f a h f a
D
h
+
=
Tomar ( )
x
f x e = , 1 a = yutilizamos 10
n
n
h

= parandesde1hasta18.
Generarunatablaquemuestrelosvaloresdehylosvaloresde
n
D .Quse
observasihesmuypequeo?
Solucin:
Silosvaloresde ( )
n
f a h + y ( ) f a sonmuyprximoselvalorquedevuelvecomo
aproximacinescero.

rdenesMatlab
n=1:18;
h=10.^(-n);
a=1;
x=a+h;
valorfn=exp(x);

Prcticas Matlab
PR C TI C A D ERI V A C I N N UM RI C A
Prctica 5




P G INA 2 M A TLA B: DERIVA C I N NUM RIC A
numerador=valorfn-exp(a);
Dn=numerador./h;
format long
disp([' Incremento Numerador
Aproximacin'])
disp([h' numerador' Dn'])


2
(a)Launidaddedestello(flash)deunacmaraoperaporelalmacenamiento
decargaenuncapacitorysuliberacinrepentinaaldispararlaunidad.Los
datosdelatabladescribenlacargaQquequedaenelcapacitor(medidaen
microcoulombios)eneltiempot(medidoensegundos).Uselosdatospara
dibujarlagrficadeestafuncinyestimelapendientedelarectatangente
enelpuntodondet=0.04

T Q
0.0 100.0
0.02 81.87
0.04 67.03
0.06 54.88
0.08 44.93
0.10 36.76

(b)Unmodeloexponencialparalacargaes
4.6053 10.0055x
Q e

= .Laderivada
Q(t)representalacorrienteelctricaquefluyedelcapacitorhaciaelbulbode
lalmparadeldestello.Calculalacorrientecuandot=0.04seg.
c)Compararelresultadoconelobtenidoenelapartado(a)yrellenalatabla
paraverculeselporcentajedeerrorencadacaso:

Valor
aproximado
( )
( )
' 0.4
100
' 0.4
valor aproximado Q
Q


Dif.Progresiva
Dif.Regresiva
Dif.Central

Conqudiferenciaseconsigueunaaproximacinmejor?

Solucin:


P G INA 3 M A TLA B: PR C TIC A 5
a) CdigoMatlab

t=[0 0.02 0.04 0.06 0.08 0.1];
q=[100 81.87 67.03 54.88 44.93 36.76];
plot(t,q)
%Posicin de instante a estudiar en el vector t
num=3;
num1=num+1;
num2=num-1;
%Diferencia progresiva
disp('Diferencia progresiva')
difProgresiva=(q(num1)-q(num))/(t(num1)-t(num))
disp('Diferencia regresiva')
difRegresiva=(q(num)-q(num2))/(t(num)-t(num2))
disp('Diferencia central')
difCentral=(q(num1)-q(num2))/(t(num1)-t(num2))

b) CdigoMatlab
%Calculo de Q'(t)
syms x
derivada=subs(diff(exp(4.6053-10.055*x)),t(num))

Nota:Ajustededatos

%Ajuste a una funcin exponencial


coeficientes=polyfit(t,log(q),1)
%coeficientes es un vector con los coeficientes de la recta
%Si coeficientes=(m n) entonces la recta es log(q)=m*t+n
ye=exp(coeficientes(1)*t+coeficientes(2));
plot(t,ye,'g')

c) CdigoMatlab
%Comparacin
diferencias=[difProgresiva difRegresiva difCentral];
porcentaje=abs((diferencias-derivada)/derivada)*100;
disp('-------------------------------------')
disp('Comparacin')
titulos=['Progresiva Regresiva Central']
disp([ diferencias ; porcentaje])

Ejerciciospropuestos
1
ParauncircuitoconvoltajeE(t)einductanciaL,laprimeraleydeKirchhoff
expresalarelacin
dI
E L RI
dt
= +
dondeReslaresistenciadelcircuito,LlainductanciaeIlaintensidadde
corriente.Enuncircuitoenelcual 0.142 R = Oy 0.98 L H = sehamedidola




P G INA 4 M A TLA B: DERIVA C I N NUM RIC A
intensidadcada0.01segundosenelminuto1.00yel1.10,obtenindoselos
valores
t I
1.00 3.10
1.01 3.12
1.02 3.14
1.03 3.18
1.04 3.14
1.05 3.18
1.06 3.26
1.07 3.32
1.08 3.18
1.09 3.26
1.10 3.12

DeterminarnumricamenteelvaloraproximadodeE(t).

APNDICE

Diferenciaprogresiva:

( )
( ) ( )
'
f a h f a
f a
h
+
~

Paraacotarelerrorquesecometeenestaaproximacinhayquetenerencuentalafrmula
deTaylordegrado1,

( ) ( ) ( )
1
' f a h f a f a h R + = + +

Luego

( )
( ) ( ) +
=
1
'
f a h f a R
f a
h h

Como

( )
2
1
R O h = ,entonceselerrordetruncamiento

( )
( ) ( )
( )
+
= = '
f a h f a
Error f a O h
h

Unacotadelerrorpodraobtenerseconsiderandoque

( )
''
1
2!
f t R
h
h
= con
| |
e + , t a a h

P G INA 5 M A TLA B: PR C TIC A 5
SiMesunacotade ( )
''
f t

en

| | , a a h +

entoncesunacotadelerrores:

1
2!
R M
Error h
h
= s

Diferenciaregresiva:

( )
( ) ( )
'
f a f a h
f a
h

~

Paraacotar elerrorquesecometeen estaaproximacinhayquetenerencuentalafrmula


deTaylordegrado1,

( ) ( ) ( )
1
' f a h f a f a h R = +

Luego

( )
( ) ( )
= +
1
'
f a f a h R
f a
h h

Teniendoencuentaque
( )
2
1
R O h = setieneque
( )
( ) ( )
( )

= + '
f a f a h
f a O h
h

y,enconsecuencia,elerrordetruncamiento
( )
( ) ( )
( )

= = '
f a f a h
Error f a O h
h

Unacotadelerrorpodraobtenerseconsiderandoque

( )
''
1
2!
f t
R
h
h
= con
| | e , t a h a
SiMesunacotade ( )
''
f t

en

| |
, a h a

entoncesunacotadelerrores:

1
2!
R M
Error h
h
= s

Diferenciacentral: ( )
( ) ( )
'
2
f a h f a h
f a
h
+
~

Para acotar el error que se comete en esta aproximacin hay que tener en cuenta la frmula
deTaylordegrado2,ylasexpresiones

( ) ( )
( ) ( )
( )
2 3
' ''
1! 2!
f a f a
f a h f a h h O h + = + + +




P G INA 6 M A TLA B: DERIVA C I N NUM RIC A
( ) ( )
( ) ( )
( )
2 3
' ''
1! 2!
f a f a
f a h f a h h O h = + +
Restando
( ) ( ) ( ) ( )
3
' 2 f a h f a h f a h O h + = +
esdecir,
( )
( ) ( ) ( )
3
'
2 2
O h
f a h f a h
f a
h h
+
=
Luego,elerrordetruncamiento
( )
( ) ( )
( )
+
= =
2
'
2
f a h f a h
Error f a O h
h

Potrebbero piacerti anche