Você está na página 1de 4

DIFERENCIA FINITA PROGRESIVA, REGRESIVA Y CENTRAL

Ejercicio de aplicacin:
Para un circuito con voltaje E(t) e inductancia L, la primera Ley de Kirchoff expresa:

EL

dI
RI
dt

Donde R es la resistencia del circuito, I la inductancia de corriente. En un circuito enn el cual R=2
y L=0.05H se ha medido la intensidad cada 01 segundos entre 1.00 y 1.4, obtenindose los valores

Datos de tiempo e intensidad:

Tiempo (t)
1.0
1.1
1.2
1.3
1.4

Intensidad (I)
8.2277
7.2428
5.9908
4.5260
1.9122

Algoritmo en MatLab:

function [derivacionumerica]=derivacion(t,I)
n=length(t);
dp=zeros(n,1);
dr=zeros(n,1);
dc=zeros(n,1);
% Diferencia progresiva
for i=1:(n-1)
dp(i)=(I(i+1)-I(i))/(t(i+1)-t(i));
end
% Diferencia regresiva
for i=2:n
dr(i)=(I(i)-I(i-1))/(t(i)-t(i-1));
end
% Diferencia central
for i=2:(n-1)
dc(i)=(I(i+1)-I(i-1))/((t(i+1)-t(i-1)));
end
disp('Comparacin')
titulos=[' tiempo intensidad Dprogresiva Dregresiva Dcentral']
derivacionumerica=[t I dp dr dc];

Para ejecutar desde el prompt del MatLab, y se ingresan las transpuestas de los datos de
la tabla:
>> x=[1.0 1.1 1.2 1.3 1.4]';
>> y=[8.2277 7.2428 5.9908 4.5260 2.912]';
>> derivacin (x, y)
Y el programa arroja el resultado siguiente:
Comparacin
titulos =
tiempo intensidad Dprogresiva

Dregresiva

Dcentral

ans =

1.0000

8.2277

-9.8490

1.1000

7.2428

-12.5200

-9.8490

-11.1845

1.2000

5.9908

-14.6480

-12.5200

-13.5840

1.3000

4.5260

-16.1400

-14.6480

-15.3940

1.4000

2.9120

-16.1400

Analizando los resultados y tabulndolos, se tienen los valores que aproximan al valor de la
derivada de la intensidad respecto al tiempo:

El siguiente algoritmo (al que se ha guardado como: Voltajes) es solo para calcular E, donde la
Inductancia va a multiplicar a la matriz de la intensidad + la resistencia por la intensidad:

L=0.05;
R=2;
% Diferencia progresiva
I1=[8.2277 7.2428 5.9908 4.5260]';
dpI=[-9.8490 -12.5200 -14.6480 -16.1380]';
E1=L.*dpI+R.*I1;
% Diferencia regresiva
I2=[ 7.2428 5.9908 4.5260 2.9122]';
drI=[-9.4890 -12.5200 -14.6480 -16.1380]';
E2=L.*drI+R.*I2;
% Diferencia central
I3=[7.2428 5.9908 4.5260]';
dcI=[-11.1845 -13.5840 -15.3930]';
E3=L.*dcI+R.*I3;
disp('Voltaje aproximado para diferencia progresiva')
disp(E1)
disp('Voltaje aproximado para diferencia regresiva');
disp(E2)
disp('Voltaje aproximado para diferencia central');
disp(E3)
Cuando se ejecuta, arroja los siguientes resultados:
>> Voltajes
Voltaje aproximado para diferencia progresiva
15.9630
13.8596
11.2492
8.2451
Voltaje aproximado para diferencia regresiva
14.0112
11.3556
8.3196
5.0175
Voltaje aproximado para diferencia central
13.9264
11.3024
8.2823

El dato 15.9630 de la diferencia progresiva no se va comparar con el primer dato de las diferencias
regresivas ni central, porque solo el primer dato de la diferencia progresiva se excluye, en cambio el
segundo dato 13.8596 si se va comparar con el 2do datp de la diferencia regresiva (11.3556) y el
1er dato de la diferencia central (13.9264), etc.
Otros datos ms:
>> x=[1.0 1.1 1.2 1.3 1.4]';
>> y=[8.2277 7.2428 5.9908 4.5260 2.912]';
>> [m,p]=difdivnewton(x,y)
m=
Columns 1 through 5

Column 6

1.0000

8.2277

NaN

NaN

NaN

NaN

1.1000

7.2428 -9.8490

NaN

NaN

NaN

1.2000

5.9908 -12.5200 -13.3550

NaN

NaN

1.3000

4.5260 -14.6480 -10.6400

9.0500

NaN

1.4000

2.9120 -16.1400 -7.4600 10.6000

p=

3.8750 -10.3250 -9.7038 29.8418 -4.7875


>> polyval(p,1.2)
ans =
7.2428
>> polyval(p,1.1)
ans =
8.2277
Ref.: https://www.youtube.com/watch?v=kSHSThB9YKU

3.8750

Você também pode gostar