Professional Documents
Culture Documents
Ecuaciones Diferenciales
Ordinarias
Problemas de Valor
Inicial
Jess Abel Meja Marcacuzco, Ph.D.
Lima - Per
ECUACIONES DIFERENCIALES ORDINARIAS
El comportamiento dinmico de los sistemas implica
desplazamientos, velocidades y aceleraciones y sus
derivadas respecto al tiempo de estas cantidades. Una
ecuacin en la que intervienen una o ms derivadas
ordinarias de la funcin incgnita se denomina ecuacin
diferencial ordinaria (EDO). El orden de la ecuacin est
determinado por el orden de la derivada ms alta.
Los problemas de EDO se clasifican en problemas de valor
inicial y problemas de valor en la frontera, dependiendo de
cmo se especifican las condiciones en los extremos del
dominio. Todas las condiciones de un problema de valor inicial
se especifican en el punto inicial. El problema se convierte en
uno de valor en la frontera si las condiciones se extienden
entre los puntos inicial y final. Las EDO en el dominio del
tiempo son problemas de valor inicial, as que todas las
condiciones se especifican en el momento inicial, como t = 0.
PROBLEMAS DE VALOR INICIAL
EDO de Primer Orden
El problema de valor inicial de una EDO de primer orden puede
y1 y0 hy0' y0 hf y0 ,t0
Recursivamente la ecuacin
puede representarse como: y 2 y1 hf y1 ,t1
y3 y 2 hf y2 ,t 2
.
y n yn1 hf y n1 , t n1
Ejemplo:
Solucin
a) Los primeros dos incrementos de tiempo de los clculos
con h = 0.01 son:
t0 0, y0 y0 5
t1 0.01, y1 y0 hy0' 5 0.01 205 7 exp 0 4.07
t2 0.02, y2 y1 hy1' 4.07 0.01 204.07 exp 0.01 3.326
b) La solucin analtica se obtiene de resolver la ecuacin:
dy 20t dy 0.5t 20t
20 y 7e 0.5 t Multiplicando por e 20t e 20 ye 20t
7 e e
dt dt
d ye 20t
7e
19.5t ye 20t 7 19.5t
e C y
7 0.5t 90.5 20t
e e
dt 19 .5 19.5 19.5
C = 90.5/19.5 calculado para t = 0; y =5
k
y n 1
h
2
y n f y nk11 , t n 1 f y n , t n
yn01
k
Donde yn 1 es la k-sima aproximacin iterativa para yn 1 y
k
es una estimacin inicial de yn 1 . La iteracin termina cuando yn 1
es menor que k 1 para para una tolerancia especificada.
y n1
Si tomamos como estimacin inicial yn, el primer paso de la
iteracin ser idntico al mtodo de Euler hacia delante. Si slo
se emplean dos pasos de iteracin, el mtodo se convierte en el
mtodo de Runge-Kutta de segundo orden.
Ejemplo
Solucin
a) El esquema de Euler modificado se escribe:
yn 1 yn h / 2 yn 1 yn 2
1.5 1.5
y su solucin iterativa basada en sustituciones sucesivas es:
yn 1 yn h / 2 yn 1
k k 1
y
1.5
n
1.5
2
Donde k es el nmero de iteracin.
La iteracin para y1 comienza con la estimacin inicial y continua as:
y10 y0 10,
1
y1 10 0.1 / 2 10 10 2 6.93772
1.5 1.5
y12 10 0.1 / 2 6.93772 10 2 7.60517
1.5 1.5
y 10 0.1 / 2 7.60517
10 2 7.47020
3 1.5 1.5
1
...
y1 10 0.1 / 2 7.49326 10 2 7.49326
1.5 1.5
b) El clculo hasta t = 1.0, se muestra a continuacin:
Y(t=0) Y(t=0.1) Y(t=0.2) Y(t=0.3) Y(t=0.4) Y(t=0.5) Y(t=0.6) Y(t=0.7) Y(t=0.8) Y(t=0.9) Y(t=1.0)
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
10 7.49326 5.85864 4.73452 3.92990 3.33574 2.88599 2.53861 2.26584 2.04868 1.87382
6.93772 5.54207 4.54058 3.80434 3.25083 2.82650 2.49571 2.23413 2.02477 1.85545 1.71732
7.60518 5.91532 4.76584 3.94841 3.34730 2.89353 2.54371 2.26940 2.05124 1.87570 1.73304
7.47020 5.84832 4.72940 3.92714 3.33416 2.88502 2.53800 2.26543 2.04841 1.87362 1.73149
7.49800 5.86051 4.73535 3.93031 3.33596 2.88611 2.53868 2.26588 2.04871 1.87384 1.73165
7.49229 5.85830 4.73438 3.92983 3.33571 2.88597 2.53860 2.26583 2.04868 1.87382 1.73163
7.49346 5.85870 4.73454 3.92990 3.33575 2.88599 2.53861 2.26584 2.04869 1.87382 1.73163
7.49322 5.85863 4.73451 3.92989 3.33574 2.88599 2.53861 2.26584 2.04868 1.87382 1.73163
7.49327 5.85864 4.73452 3.92990 3.33574 2.88599 2.53861 2.26584 2.04868 1.87382 1.73163
7.49326 5.85864 4.73452 3.92990 3.33574 2.88599 2.53861 2.26584 2.04868 1.87382 1.73163
7.49326 5.85864 4.73452 3.92990 3.33574 2.88599 2.53861 2.26584 2.04868 1.87382 1.73163
t y
0.0 10.0
0.1 7.49326
0.2 5.85864
0.3 4.73452
0.4 3.92990
0.5 3.33574
0.6 2.88599
0.7 2.53861
0.8 2.26584
0.9 2.04868
1.0 1.87382
c) El Archivo-M para la solucin del problema en MATLAB y los
resultados, se muestran a continuacin. En el guin, la solucin
del mtodo de Euler hacia adelante se denota con yf, mientras
que la del mtodo modificado es ym. La ecuacin de Euler
modificada se resuelve iterativamente por el mtodo de
sustitucin sucesiva con el nmero de iteraciones limitado a 10
como mximo. Si el nmero de iteracin rebasa 9, se imprime
un mensaje.
6
-- Euler hacia adelante Euler modificado
y
1
0 0.2 0.4 0.6 0.8 1 1.2 1.4
t
Resultados de clculo
Mtodo de Euler hacia adelante y de Euler modificado
Mtodo de Euler hacia atrs
Se basa en la aproximacin de diferencia hacia atrs y tiene el
mismo grado de precisin que el mtodo de Euler hacia delante:
u ' f1 u, v, t , u 0 u0 f1 u, v, t v
Donde
v' f 2 u, v, t , v0 u '0 f 2 u, v, t av bu s
t h, u1 u0 hf1u0 , v0 ,0 hv0
v1 v0 hf2 u0 , v0 ,0 h av0 bu0 s0
u0 0
u' 0 1
donde k es la constante del resorte, igual
a 200 N/m, y B = 50 Ns2/m2.
u' v u 0 0
(B)
v' a v v cu v0 1
t 0, u0 u0 0
v0 u' 0 1
y' f y, t (C)
y u
y u f - ay v c
Donde
v y
y n 1 y n hf y n , t n
A continuacin se presenta el cdigo en MATLB para obtener
la solucin, cuyos resultados se muestran en la figura
% Archivo ejemplo
axis([0 5 -1 1])
clear, clf, hold off
plot(t,y(1,:),t,y(2,:),':')
h=0.05; t_max=5; n=1;
xlabel('tiempo (s)'); ylabel('Y y V')
y(:,1)=[0;1];
L=length(t);
t(1)=0;
text(t(L), y(1,L), 'Y, desplazamiento')
while t(n)<t_max
text(t(L), y(2,L), 'V, velocidad')
y(:,n+1)=y(:,n)+h*f_def(y(:,n),t);yb=y;
t(n+1)=t(n)+h;
n=n+1; 1
end
0.8
0.6
0.4
YyV
0.2
0 Y, desplazamiento
V, velocidad
-0.2
-0.4
-0.6
0 1 2 3 4 5 6
tiempo (s)
Mtodo de Runge-Kutta de Segundo Orden
En los mtodos de Runge-Kutta, la precisin se incrementa por
el uso del mtodo de integracin numrica y los errores se
reducen con mayor rapidez al reducirse h. As para la ecuacin
diferencial ordinaria siguiente:
y' (t ) f y, t y0 y0
Para calcular yn+1 con un valor conocido de yn, integramos la
ecuacin anterior en el intervalo tn t tn+1 para obtener:
f y, t dt
tn 1
y n 1 y n
tn
Integrando, mediante la regla trapezoidal, el trmino:
f y, t dt f yn , tn f yn 1 , tn 1
t n 1 h
tn 2
Donde h = tn+1 tn
yn 1 yn
h
f yn , tn f yn1 , tn1 yn h f yn , tn f y n1 , tn1
2 2
yn 1 yn hf yn , tn estimada por el mtodo
de Euler hacia delante
El esquema que se deduce de esta forma se denomina
mtodo de Runge-Kutta de segundo orden y se escribe as:
y n f y n , t n f y n 1 , t n 1
h
y n 1
2
En una forma ms convencional:
k1 hf yn , t n
k 2 hf yn k1 , t n h
yn 1 yn k1 k2
1
2
El mtodo de Runge-Kutta de segundo orden equivale al
mtodo de Euler modificado con slo dos pasos de iteracin.
Ejemplo
dI t
L RI t E I 0 0
dt
f I , t Donde:
dI
f I , t I 0.4 I 0.2
R E
dt L L
El mtodo de Runge-Kutta de segundo orden se convierte en:
k2 h 0.4I n k1 0.2 I n 1 I n k1 k2
1
k1 h 0.4I n 0.2
2
A continuacin los clculos para los dos primeros pasos:
t 0,
I0 0
t 0.0001,
k1 0.0001 0.40 0.2 0.02
k2 0.0001 0.40 0.02 0.2 0.0192
I1 I0 1 / 2k1 k2 0 1 / 20.02 0.0192 0.0196
t 0.0002,
k1 0.0001 0.40.0196 0.2 0.019216
k2 0.0001 0.40.0196 0.019216 0.2 0.018447
I 2 I1 1 / 2k1 k2 0.0196 1 / 20.019216 0.018447 0.038431
t k1 k2 I
0.0000 0.00000
0.0001 0.02000 0.01920 0.01960
0.0002 0.01922 0.01845 0.03843
0.0003 0.01846 0.01772 0.05653
0.0004 0.01774 0.01703 0.07391
0.0005 0.01704 0.01636 0.09061
0.0006 0.01638 0.01572 0.10666
0.0007 0.01573 0.01510 0.12208
0.0008 0.01512 0.01451 0.13689
0.0009 0.01452 0.01394 0.15113
0.0010 0.01395 0.01340 0.16480
0.0011 0.01341 0.01287 0.17794
0.0012 0.01288 0.01237 0.19057
0.0013 0.01238 0.01188 0.20270
0.0014 0.01189 0.01142 0.21435
0.0015 0.01143 0.01097 0.22555
0.0016 0.01098 0.01054 0.23631
0.0017 0.01055 0.01013 0.24664
0.0018 0.01013 0.00973 0.25658
0.0019 0.00974 0.00935 0.26612
. . . .
0.0200 0.00001 0.00001 0.49983
El resto del clculo se realiza con MATLAB:
% Archivo ejemplo13_5.m % Funcin fn13_5.m
clear, clf, hold off function f=fn13_5(I,RL,EL)
R=20; %ohmios f=-RL*I+EL;
L=50e-3; %Herz
E=10; %Voltios
y(1)=0; t(1)=0;
h=0.1e-3;
n=1;
y_rec(1)=y; t_rec(1)=0; t=0; 0.5
RL=R/L; EL=E/L; 0.45
while t(n)<0.02 0.4
k1=h*fn13_5(y(n),RL,EL); 0.35
k2=h*fn13_5(y(n)+k1,RL,EL); 0.3
y(n+1)=y(n)+0.5*(k1 + k2);
I (A)
0.25
t(n+1)=n*h; 0.2
n=n+1; 0.15
end 0.1
plot(t,y) 0.05
xlabel('tiempo (s)') 0
0 0.005 0.01 0.015 0.02
ylabel('I (A)') tiempo (s)
Ejemplo
dT
dt
A
CV
2974 T 4 hc 297 T ; T 0 473
t k1 k2 T
0.000 473.000
1.000 -6.664 -6.363 466.486
2.000 -6.370 -6.087 460.258
3.000 -6.093 -5.826 454.298
4.000 -5.832 -5.580 448.593
5.000 -5.585 -5.347 443.127
6.000 -5.352 -5.126 437.888
7.000 -5.131 -4.917 432.864
8.000 -4.922 -4.719 428.044
9.000 -4.723 -4.531 423.417
10.000 -4.535 -4.352 418.973
11.000 -4.356 -4.182 414.705
12.000 -4.185 -4.019 410.602
13.000 -4.023 -3.865 406.659
14.000 -3.868 -3.717 402.866
15.000 -3.720 -3.577 399.218
16.000 -3.579 -3.442 395.707
17.000 -3.445 -3.314 392.328
18.000 -3.316 -3.191 389.074
19.000 -3.193 -3.073 385.941
. . . .
180.000 -0.016 -0.015 297.469
Si el miembro derecho de la EDO es una funcin no lineal, como es el caso
en el presente problema, es recomendable escribir un archivo M de funcin
para calcular el miembro derecho. Los resultados de clculo y el cdigo en
MATLAB, se muestra a continuacin.
T (K)
380
Arcv=A/(ro*C*V); Epsg=epsi*sig;
360
while t(n)<180
k1=h*fn13_6(T(n),Arcv,Epsg,hc); 340
k2=h*fn13_6(T(n)+k1,Arcv,Epsg,hc); 320
T(n+1)=T(n)+0.5*(k1+k2); 300
t(n+1)=t(n)+h; 280
0 20 40 60 80 100 120 140 160 180
n=n+1; tiempo (s)
end
plot(t,T); xlabel('tiempo (s)'),ylabel('T (K)')
% Funcin fn13_6.m
function f=fn13_6(TB,Arcv,Epsg,hc)
f=Arcv*(Epsg*(297^4-TB^4)+hc*(297-TB));
Mtodo de Runge-Kutta de tercer orden
f y, t dt
El mtodo de Runge-Kutta de tercer orden se deduce tn 1
aplicando un esquema de integracin numrica de y n 1 y n
tn
orden superior al segundo trmino de la ecuacin:
y n 1 y n f y n , t n 4 f y n 1 / 2 , t n 1 / 2 f y n 1 , t n 1
h
6
y n 1 / 2 y n f y n , t n
y n1/ 2 estima yn 1/ 2 y se obtiene por el mtodo h
de Euler hacia adelante, as: 2
y n 1 estima y n 1 por: y n1 yn hf yn , tn
y n1 yn hf y n1/ 2 , tn1/ 2
y n1 yn hf yn , t n 1 f y n1/ 2 , t n1/ 2
o por una combinacin
lineal de ambas:
k1 hf yn , t n
h
y n k1 4k 2 k 3
1 k1
y n 1 2
k hf n
y , t n
6 2 2
k3 hf yn k1 1 k 2 , t n h
k1 hf yn , t n
k1 h
y n k1 4k 2 k 3
1
y n 1 k 2 hf yn , t n
6 2 2
k3 hf yn k1 2k 2 , t n h
Mtodo de Runge-Kutta de cuarto orden
Basada en la regla 1/3 de Simpson:
k1 hf yn , t n
k 2 hf yn k1 , t n h
2 2
y n 1 y n k1 2k 2 2k 3 k 4
1 k hf y k 2 , t h
6 3
n
2
n
2
k 4 hf yn k3 , t n h
Basada en la regla 3/8 de Simpson:
k1 hf yn , t n
k 2 hf yn k1 , t n h
3 3
y n k1 3k 2 3k 3 k 4
1
y n 1
8 k hf y k1 k 2 , t 2h
3
n
3 3
n
3
k 4 hf yn k1 k 2 k3 , t n h
Ejemplo: Calcule y(1) con el mtodo de Runge-Kutta de cuarto orden
con h = 1, para:
y 0 1
dy 1
y' ,
dt 1 y 2
f y, t
1
Solucin: Establecemos:
1 y2
con y0 =1 y t0 = 0. Puesto que slo tenemos un intervalo, la respuesta se
obtiene con:
k1 hf y0 , t 0 1/1 1 0.5
t k1 k2 k3 k4 y
0.0 1
1.0 -0.5000 -0.6400 -0.6838 -0.9091 0.32388
2.0 -0.9051 -0.9837 -0.9726 -0.7038 -0.59636
k 2 hf y0 1 , t1/ 2 1 / 1 0.75 0.64
k 2
3.0 -0.7377 -0.5177 -0.5776 -0.4205 -1.15448
2 4.0 -0.4287 -0.3480 -0.3617 -0.3031 -1.51301
5.0 -0.3040 -0.2651 -0.2697 -0.2393 -1.78183
k3 hf y0 2 , t1/ 2 1 / 1 10.68 0.6838
k 2 6.0
7.0
-0.2395
-0.2000
-0.2166
-0.1848
-0.2187
-0.1859
-0.1999
-0.1730
-2.00018
-2.18593
2
8.0 -0.1731 -0.1622 -0.1629 -0.1534 -2.34871
k 4 hf y 0 k 3 , t1 1 / 1 0.3161 0.9091
2 9.0
10.0
-0.1535
-0.1385
-0.1453
-0.1321
-0.1457
-0.1324
-0.1385
-0.1266
-2.49437
-2.62668
y1 y0
1
k1 2k2 2k3 k4 1 1 0.5 20.64 20.6838 0.9091 0.3238
6 6
Ejemplo: Resolver mediante el mtodo de Runge-Kutta de cuarto orden:
dy t y y 3et / 2 2 t
y(0) = 1; h = 0.25 0 t 3
Solucin
analtica
dt 2
ty
Solucin: Establecemos: f y, t
2
k1 hf ( yi , ti ) t k1 k2 k3 k4 y
y
%error
analtico
0.00 1 1.00000 0.00000
0.25 -0.1250 -0.1016 -0.1030 -0.0809 0.89749 0.89749 0.00008
k1 h
k 2 hf ( yi , ti ) 0.50 -0.0809 -0.0603 -0.0615 -0.0420 0.83640 0.83640 0.00016
2 2 0.75 -0.0421 -0.0238 -0.0249 -0.0077 0.81187 0.81187 0.00022
1.00 -0.0077 0.0084 0.0074 0.0226 0.81959 0.81959 0.00025
1.25 0.0226 0.0368 0.0359 0.0493 0.85579 0.85578 0.00026
k2 h
k3 hf ( yi , ti ) 1.50 0.0493 0.0618 0.0610 0.0729 0.91710 0.91710 0.00026
2 2 1.75 0.0729 0.0839 0.0832 0.0937 1.00059 1.00059 0.00025
2.00 0.0937 0.1034 0.1028 0.1121 1.10364 1.10364 0.00023
2.25 0.1120 0.1207 0.1201 0.1283 1.22396 1.22396 0.00020
k4 hf ( yi k3 , ti h) 2.50 0.1283 0.1359 0.1354 0.1426 1.35952 1.35951 0.00018
2.75 0.1426 0.1493 0.1489 0.1552 1.50852 1.50852 0.00016
3.00 0.1552 0.1611 0.1607 0.1663 1.66939 1.66939 0.00014
1
yi 1 yi ( k1 2k 2 2k3 k 4 )
6
Mtodo de Runge-Kutta de cuarto orden para un conjunto
de dos ecuaciones:
un 1 un k1 2k 2 2k 3 k 4
1
u ' f u , v, t 6
v n 1 v n m1 2m2 2m3 m4
1
v' g u , v, t 6
k1 hf un , vn , t n m1 hg un , vn , t n
k m h k1 m1 h
k 2 hf un 1 vn 1 , t n m2 hg un vn , t n
2 2 2 2 2 2
k2 m2 h k m h
k3 hf un vn , tn m3 hg un 2 vn 2 , t n
2 2 2 2 2 2
m3 m3
k 4 hf un k3 vn , tn h m4 hg un k3 vn , tn h
2 2
u f
Escribiendo la ecuacin y' f y,t y f
en forma vectorial: v g
De acuerdo al esquema de Runge-Kutta de cuarto orden:
y n 1 y n k1 2k 2 2k 3 k 4
1
6
k1 hf yn , tn
k1 h
k 2 hf yn , t n
2 2
k h
k 3 hf yn 2 , t n
2 2
k 4 hf yn k 3 , tn h
Ejemplo
Mu ' ' Bu ' ku 0
Resolver el problema del
Sistema de Resorte-Masa, con u 0 1
u' 0 0
Runge-Kutta de cuarto orden.
Solucin
u' f v u 0 1
un 1 un k1 2k 2 2k 3 k 4
1
6
v n 1 v n m1 2m2 2m3 m4
1
6
Para t = 0 Mu ' ' Bu ' ku 0
u0 u 0 1 u' f v u 0 1
v0 u ' 0 0 v' g B / M v k / M u 20v 200u v0 0
Para t = 0.025
k1 hf u0 , v0 , t0 hv0 0.0250 0
m1 hgu0 , v0 , t0 h 20v0 200u0 0.025 200 2001 5
m2 hg u0 k1 / 2, v0 m1 / 2, h / 2 h 20v0 m1 / 2 200u0 k1 / 2
0.025 200 5 / 2 2001 0 / 2 3.75
m3 hg u0 k 2 / 2, v0 m2 / 2, t0 h / 2 h 20v0 m2 / 2 200u0 k 2 / 2
0.025 200 3.75 / 2 2001 0.0625 / 2 3.9062
k4 hf u0 k3 , v0 m3 , t0 h hv0 m3 0.0250 5 / 2 0.09765
m4 hg u0 k3 , v0 m3 , t0 h h 20v0 m3 / 2 200 / u0 k3 / 2
0.025 200 3.90625 2001 0.046875 2.8125
k2 hf u1 k1 / 2, v1 m1 / 2, t1 h / 2 hv1 m1 / 2
0.025 3.8541666 2.809244 / 2 0.1314697
m2 hg u1 k1 / 2, v1 m1 / 2, t1 h / 2 h 20v1 m1 / 2 200u1 k1 / 2
0.025 20 3.85416 2.809244 / 2 2000.947266 0.96354 / 2 1.866054
k3 hf u1 k2 / 2, v1 m2 / 2, t1 h / 2 hv1 m2 / 2
u(m) y v(m/s)
-2
y(:,1)=[1;0]; t(1)=0; % condicin inicial -3
M=[0,1;-b,-a]; -4
Velocidad, V
while t(n)<=1 -5
-6
k1=h*M*y(:,n);
-7
k2=h*M*(y(:,n)+k1/2);
-8
k3=h*M*(y(:,n)+k2/2); 0 0.1 0.2 0.3
t(s)
0.4 0.5 0.6 0.7
k4=h*M*(y(:,n)+k3);
y(:,n+1)=y(:,n)+(k1+2*k2+2*k3+k4)/6;
t(n+1)=n*h;
n=n+1;
end
plot(t,y(1,:),'-',t,y(2,:),':');
xlabel('t(s)'); ylabel('u(m) y v(m/s)');
text(t(5),y(1,5)+0.3, 'Desplazamiento,
u','Fontsize',[10])
text(t(8),y(2,7), 'Velocidad, V','Fontsize',[10])
axis([0,0.7,-8,2])
Mtodo de Range-Kutta para EDO de segundo orden:
Similar al mtodo de Euler. As para la siguiente EDO de segundo orden:
k1 hf un ,t n
y n k1 k 2
1
y n 1
2 k 2 hf un ,k1 ,t n 1
Si a, b y q son constantes o funciones exclusivamente de t, la ecuacin
puede escribirse as:
0 1 0
y' Mf S M S
donde:
b a q
k1 hMy1 S
y n k1 k 2
1
y n 1
2 k 2 hM y1 k1 1 S
Ejemplo
Una caja rectangular de masa M = 0.5 kg se fija al extremo inferior de un
sistema de resorte-amortiguador sin masa, como se ilustra en la figura. El
amortiguador ejerce una fuerza de R = -Bdu/dt sobre la caja, siendo B la
constante de amortiguacin, u la velocidad y K la constante del resorte. La
ecuacin del movimiento es:
Mu ' ' Bu ' ku 0 (A)
u 0 1
u' 0 0
B = 10 k = 100
N.s/m2
a) Calcule u(t) para 0 < t 0.05 s N/m
u' f v u 0 1 v' g B / M v k / M u v0 0
a) Si sustituimos a = B/M = 20 y b = k/M = 200, el mtodo de Runge-Kutta de
segundo orden para la ecuacin (13.18), se convierte en:
Para t = 0 u0 u0 1 v0 u ' 0 0
Para t = 0.025
k1 hf u0 , v0 , t0 hv0 0.0250 0
m1 hgu0 , v0 , t0 h 20v0 20v0 20u0 0.025 200 2001 5
k2 hf u0 k1, v0 m1, t1 hv0 m1 0.0250 5 0.125
m2 hgu0 k1, v0 m1, t1 h 20v0 m1 200u0 k1 0.025 200 5 2001 0 2.5
u1 u0 1 / 20 0.125 0.9375
v1 v0 1/ 2 5 2.5 3.75
Para t = 0.05
u 0 1
y' Mf donde: y Mf
v -b a
El Archivo-M se elabora con base en la ecuacin. El cdigo en MATLAB y los
resultados del programa se presentan a continuacin:
% Archivo ejemplo13_7
plot(t,y(1,:),'-',t,y(2,:),':');
clear, clf, hold off
xlabel('t(s)'); ylabel('u(m) y v(m/s)');
M=0.5; k=100; B=10; a=B/M;
text(0.1,0.6, 'Desplazamiento,
b=k/M; n=1; h=0.025;
u','Fontsize',[8])
y(:,1)=[1;0]; t(1)=0; % condicin inicial
text(0.3,-1.8, 'Velocidad, V','Fontsize',[8])
M=[0,1;-b,-a];
while t(n)<=1
k1=h*M*y(:,n); 1
k2=h*M*(y(:,n)+k1); Desplazamiento, u
y(:,n+1)=y(:,n)+0.5*(k1+k2); 0
t(n+1)=n*h;
n=n+1; -1
end Velocidad, V
u(m) y v(m/s)
-2
-3
-4
-5
-6
-7
0 0.2 0.4 0.6 0.8 1
t(s)