Está en la página 1de 35

Departamento de Automtica

Mtodos numricos para la


solucin de ecuaciones diferenciales
ordinarias (EDO)
Prof. Vctor M. Alfaro
Febrero de 22
!e". Diciembre de 2#
Mtodos numricos para la solucin de EDO
$A%&A D' ()*$'*+D)
,. +ntroduccin........................................................................................,
,., Planteamiento del problema....................................................................,
2. Mtodos del tipo !un-e./utta..........................................................0
2., Mtodo de 'uler (!un-e./utta de ,er orden).......................................0
2.2 Mtodo de 'uler modificado (!un-e./utta de 21 orden).....................#
2.0 Mtodo de 'uler.(auc23 modificado (!un-e./utta de 21 orden).......4
2.5 Mtodo de la re-la de 6impson (!un-e./utta de 0er orden)...............7
2.# Mtodo de 8eun (!un-e./utta de 0er orden).......................................7
2.4 !un-e./utta de 51 orden (9clsico:).......................................................;
2.7 !un-e./utta.6impson de 51 orden..........................................................<
2.; Mtodos !un-e=/utta de paso "ariable.................................................<
2.;., !un-e./utta.Fe2lber- de 21 orden ,
2.;.2 !un-e./utta.Fe2lber- de 51 orden ,,
2.< 'rror por truncamiento 3 error por redondeo....................................,2
2., 6istemas r-idos.....................................................................................,2
2.,, 'fecto del paso de inte-racin sobre la e>actitud de la solucin......,0
0. Mtodos de inte-racin numrica...................................................,#
0., Frmulas directas? Mtodos de Adams.%as2fort2..............................,#
0.,., Mtodo de se-undo orden ,4
0.,.2 Mtodo de cuarto orden ,4
0.2 Frmulas implcitas? Mtodos de Adams.Moulton..............................,4
0.2., Mtodo de se-undo orden ,4
0.2.2 Mtodo de cuarto orden ,4
0.0 Mtodos predictor . corrector...............................................................,4
0.0., Mtodo trape@oidal modificado (21 orden) ,7
0.0.2 Mtodo de Adams.%as2fort2.Moulton de 51 orden ,7
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO
0.0.0 Mtodo de Milne de 51 orden ,;
0.0.5 Mtodo de Milne de 41 orden ,;
0.5 Al-oritmo de solucin.............................................................................,;
5. 'Bemplos del uso de al-unos mtodos.............................................2
5., Mtodo de la re-la de 6impson en MA$&A%......................................2
5.2 Mtodo de Adams.%as2fort2 de 21 orden en 6cilab............................2,
5.0 6olucin de una ecuacin diferencial de se-undo orden.....................20
5.5 9)D' 6ol"ers: en MA$&A% 3 6imulinC.............................................2#
5.5., Mtodos de paso "ariable 2#
5.5.2 Mtodos de paso fiBo (solo en 6imulinC) 24
5.5.0 'Bemplo 24
5.# 9)D' 6ol"ers: en 6cilab........................................................................27
5.4 Mtodos de inte-racin en Vis6im........................................................2<
#. (omparacin de los mtodos de solucin de 'D)........................0
%iblio-rafa.............................................................................................02
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 1
,. +ntroduccin
El estudio de los procesos dinmicos y sus sistemas de control, debe iniciarse con la obtencin de
una representacin matemtica de las relaciones existentes entre las diferentes variables involu-
cradas en el proceso a controlar, a la que usualmente se denomina modelo del sistema.
El proceso de modelado de un sistema dinmico, puede llevar a la obtencin de una representa-
cin para el mismo por medio de una ecuacin diferencial de orden alto, o por un conjunto de
ecuaciones diferenciales de primer orden no lineales, cuya solucin se debe obtener para conocer
la respuesta temporal del sistema, a partir un conjunto de condiciones iniciales y una entrada
dada.
La solucin analtica de una ecuacin diferencial lineal puede ser fcil, de varias ya presenta difi-
cultades y de muchas es prcticamente imposible. i las ecuaciones diferenciales son no lineales,
el resolver una sola es muy difcil y varias o muchas es imposible por medios analticos.
!omo es normal que el modelo obtenido para el sistema que se desea anali"ar, est# constituido
por varias ecuaciones diferenciales no lineales, este solamente puede resolverse con la ayuda de
un pro$rama de simulacin di$ital.
%ara el desarrollo de un pro$rama de simulacin de sistemas dinmicos, es necesario entonces
contar con un m#todo de solucin de ecuaciones diferenciales.
e presentarn adelante en forma breve, al$unos de los m#todos num#ricos de solucin de ecua-
ciones diferenciales ordinarias &EDO', ms empleados en la simulacin di$ital de los sistemas
dinmicos.
,., Planteamiento del problema
e requiere solucionar la ecuacin diferencial de primer orden
dy
dt
=f ( y , t ) , y(t
(
)=y
(
&)'
para encontrar y en una secuencia de valores de la variable independiente t *t
i
+ dentro de un in-
tervalo de solucin ,t
(
, t
f
-, donde f ( y , t ) es una funcin no lineal cualquiera.
La obtencin de la solucin de &)' es conocida como el problema del valor inicial en la solucin
de ecuaciones diferenciales y para esto, se dispone de dos tipos de m#todos de solucin.
). /#todos en los cuales f ( y , t ) ser evaluada solamente en los puntos &y
i
, t
i
', donde y
i
es el
valor de y en t 0 t
i
y que se denominan Mtodos de integracin numrica
1. /#todos en los cuales f ( y , t ) ser evaluada adems, en puntos distintos de &y
i
, t
i
' y que se
denominarn Mtodos del tipo Runge-Kutta.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 2
i se define a Y&t' como la solucin exacta de &)' y a y&t' como la solucin calculada, entonces
Y
n
=Y (t
n
) ,

Y
n
=
(
dY
dt
)
t=t
n
=f (Y
n
, t
n
) &1'
y
n
=y(t
n
) ,

y
n
=f ( y
n
, t
n
) &2'
At=t
n+)
t
n
&3'
!omo Y es la solucin verdadera, f&Y
n
, t
n
' es i$ual a dY4dt5
t0tn
, sin embar$o y&t' solamente existe en
los instantes n 0 ), 1, 2, ...
El intervalo de tiempo entre dos instantes consecutivos de la solucin, denominado usualmente
paso de integracin At , puede permanecer constante sobre un determinado n6mero de interva-
los de la solucin, o variarse cuando consideraciones de error lo ha$an deseable.
En la obtencin de los m#todos num#ricos para la solucin de de las ecuaciones es importante
considerar entonces.
). cuanto error se comete en cada paso del clculo y como afecta este los pasos si$uientes, esto
es, cmo se propa$a el error
1. la habilidad del m#todo para estimar el error en una etapa de clculo, en funcin de los resulta-
dos obtenidos
2. la iniciacin del m#todo &se conoce la condicin inicial y
(
pero como se ver, al$unos m#todos
num#ricos requieren conocer adems, los valores de y en ms de un punto anterior para calcu-
lar el si$uiente' y
3. la velocidad del m#todo.
En la presentacin si$uiente de los diferentes m#todos de solucin de ecuaciones diferenciales, se
considerar la solucin de una sola ecuacin diferencial no lineal de primer orden, sin embar$o
todos ellos son fcilmente extensibles al caso de un conjunto de ecuaciones diferenciales de pri-
mer orden no lineales simultneas, considerando a todas las variables y ecuaciones como vecto-
res. i el modelo est representado por una ecuacin diferencial de orden alto, es necesario
convertirla primero en un conjunto de ecuaciones diferenciales de primer orden simultneas para
su solucin.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 3
2. Mtodos del tipo !un-e./utta
La base de todos los m#todos del tipo 7un$e-8utta es expresar la diferencia entre los valores de y
en t
n9)
y t
n
como
y
n+)
y
n
=

i=)
m

i
k
i
&:'
donde los
i
son constantes y los
k
i
=At f
(
y
n
+

j=)
i)

ij
k
j
, t
n
+o
i
At
)
&;'
con o
)
=( . <adas las constantes
i
, o
i
y
ij
, la solucin es directa.
Los m#todos del tipo 7un$e-8utta se caracteri"an por
). ser auto-iniciables
1. requerir solamente informacin del punto n para calcular la solucin en el punto n9)
2. evaluar en cada iteracin la funcin &derivada' tantas veces como el orden del m#todo, y
3. por no poseer forma de estimar en error cometido, a menos que se utilicen simultneamente
dos m#todos de distinto orden.
En los m#todos del tipo 7un$e-8utta el n6mero de veces que es necesario evaluar la ecuacin di-
ferencial es i$ual al orden del m#todo, lo cual repercute directamente sobre su velocidad. in
embar$o a medida que aumenta el orden del m#todo, este tiene una mayor exactitud para un paso
de inte$racin dado, por lo que ser posible utili"ar un paso de inte$racin mayor para un $rado
de exactitud deseado.
2., Mtodo de 'uler (!un-e./utta de ,
er
orden)
9+nte-racin rectan-ular:
e puede calcular el valor de la inte$ral de y en el instante t
n+)
=t
n
+At , mediante la expansin
de la ecuacin &)' en una serie de =aylor
y
n+)
=y
n
+At
dy
dt
+
At
1
1!
d
1
y
dt
1
+
At
2
2!
d
2
y
dt
2
+.+
At
p
p!
d
p
y
dt
p
+. &>'
ustituyendo &)' en &>' se obtiene que
y
n+)
=y
n
+At f ( y
n
, t
n
)+
At
1
1!
d f
dt
+
At
2
2!
d
1
f
dt
1
+.+
At
p
p!
d
p)
f
dt
p)
+. &?'
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 4
i se reduce sustancialmente el valor del paso de inte$racin At , se pueden despreciar los
t#rminos con
At
1
y superiores con lo que se obtiene que
y
n+)
=y
n
+At f ( y
n
, t
n
) &@'
el cual es el conocido m#todo de integracin rectangular o mtodo de Euler.
La ecuacin &@' se puede reescribir para expresarla en la forma $eneral de los m#todos del tipo
7un$e-8utta dada por &:' y &;' quedando esta entonces como
k
)
=At f ( y
n
, t
n
)
y
n+)
=y
n
+k
)
&)('
Este m#todo se dir que es de primer orden por haberse truncado los t#rminos que contenan ms
all de la primera potencia de At . La omisin de estos t#rminos dar el error por truncamiento
inherente del m#todo, el cual se dir en este caso que es O(At
1
) o del orden de At
1
.
El m#todo de Euler estima el valor de la solucin en el instante n 9 ) a partir de la extrapolacin
del valor de la ecuacin diferencial en el instante n, tan$ente de la solucin, por un paso de inte-
$racin At como se muestra en la Ai$ura 1.).
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
k
1
= t f(f
n
, t
n
)
y
n+1
= y
n
+ k
1
t
t
n
t
n+1
t
y(t)
y
n
y
n+1
f(y
n
, t
n
)
Fig. 2.1 - Integracin rectangular
0
1
y(t)
k
1
Mtodos numricos para la solucin de EDO 5
2.2 Mtodo de 'uler modificado (!un-e./utta de 21 orden)
El m#todo de Euler es un m#todo de un paso y el ms simple de los m#todos del tipo 7un$e-8ut-
ta. Bn m#todo de se$undo orden o de dos pasos, est dado por las si$uientes ecuaciones
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+
)
1
k
)
, t
n
+
)
1
At)
y
n+)
=y
n
+k
1
&))'
Este m#todo coincide con la serie de =aylor &?' hasta el t#rmino At
1
por lo que su error por
truncamiento ser O(At
2
) .
El mtodo de Euler modificado utili"a el valor de la ecuacin diferencial al centro del paso de in-
te$racin, extendi#ndolo a todo su ancho se$6n se aprecia en la Ai$ura 1.1.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
k
1
= t f(y
n
, t
n
)
k
2
= t f(y
n
+k
1
/2, t
n
+t/2)
y
n+1
= y
n
+ k
2
f(y
n
+k
1
/2, t
n
+t/2)
t
n
+t/2 t
n
t
n+1
t
y(t)
y
n
y
n+1
f(y
n
, t
n
)
Fig. 2.2 - Mtodo de Euler modificado
0
1
2
y(t)
k
2
Mtodos numricos para la solucin de EDO 6
2.0 Mtodo de 'uler.(auc23 modificado (!un-e./utta de 21 orden)
9+nte-racin trape@oidal:
Este es otro m#todo de se$undo orden y sus ecuaciones son
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+k
)
, t
n
+At)
y
n+)
=y
n
+
)
1
|k
)
+k
1

&)1'
El mtodo de integracin trapeoidal utili"a un promedio del valor de la ecuacin diferencial al
inicio &n' y final &n9)' del paso de inte$racin, como se indica en la Ai$ura 1.2.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
k
1
= f(y
n
, t
n
)
k
2
= f(y
n
+k
1
, t
n
+t)
y
n+1
= y
n
+ [k
1
+k
2
]/2
t
n
t
n+1
t
y(t)
y
n
y'
n+1
f(y
n
, t
n
)
Fig. 2. - Integracin tra!e"oidal
0
1
y(t)
2
f(y'
n+1
, t
n+1
)
y
n+1
#f(y
n
, t
n
) + f(y'
n+1
, t
n+1
)$%2
(k
1
+k
2
)/2
Mtodos numricos para la solucin de EDO 7
2.5 Mtodo de la re-la de 6impson (!un-e./utta de 0
er
orden)
Este es un m#todo de tres pasos dado por
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+
)
1
k
)
, t
n
+
)
1
At)
k
2
=At f ( y
n
k
)
+1k
1
, t
n
+At )
y
n+)
=y
n
+
)
;
|k
)
+3k
1
+k
2

&)2'
con un error por truncamiento O(At
3
) .
2.# Mtodo de 8eun (!un-e./utta de 0
er
orden)
Este es otro m#todo de tres pasos y est dado por
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+
)
2
k
)
, t
n
+
)
2
At)
k
2
=At f ( y
n
+
1
2
k
1
, t
n
+
1
2
At)
y
n+)
=y
n
+
)
3
|k
)
+2 k
2

&)3'
con un error por truncamiento O(At
3
)
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 8
2.4 !un-e./utta de 51 orden (9clsico:)
El mtodo de !unge-"utta de cuarto orden, es el utili"ado con ms frecuencia en la simulacin de
los sistemas dinmicos y sus ecuaciones son
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+
)
1
k
)
, t
n
+
)
1
At)
k
2
=At f ( y
n
+
)
1
k
1
, t
n
+
)
1
At)
k
3
=At f ( y
n
+k
2
, t
n
+At)
y
n+)
=y
n
+
)
;
|k
)
+1k
1
+1 k
2
+k
3

&):'
El error por truncamiento de este m#todo es O(At
:
) , siendo adems mucho ms estable que
los anteriores.
Existen varios m#todos 7un$e-8utta de 3C orden. Ddems del anterior, cuyos coeficientes se atri-
buyen a 8utta, existe el 7un$e-8utta-Eill en que se minimi"a la memoria utili"ada, el 7un$e-8u-
tta-7alston en el que se minimi"a el error por truncamiento, el 7un$e-8utta-/erson que es una
extensin para hacerlo de paso variable, esto a costa de una evaluacin adicional de las ecuacio-
nes del sistema para poder estimar el error y tomar decisiones sobre el tamaFo del paso y otros
ms.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 9
2.7 !un-e./utta.6impson de 51 orden
Este es otro m#todo de cuarto orden con un error por truncamiento O(At
:
) , cuyas ecuaciones
son
k
)
=At f ( y
n
, t
n
)
k
1
=At f ( y
n
+
)
2
k
)
, t
n
+
)
2
At)
k
2
=At f ( y
n

)
2
k
)
+k
1
, t
n
+
1
2
At )
k
3
=At f ( y
n
+k
)
k
1
+k
2
, t
n
+At)
y
n+)
=y
n
+
)
?
|k
)
+2 k
1
+2k
2
+k
3

&);'
2.; Mtodos !un-e=/utta de paso "ariable
Los m#todos del tipo 7un$e-8utta no tienen forma de evaluar el error cometido en cada iteracin,
sin embar$o es posible combinar dos m#todos orden diferente o utili"ar un m#todo con dos pasos
de inte$racin diferentes, para estimar el error y en base a este, decidir si es necesario o no
cambiar el tamaFo del paso de inte$racin &reducirlo o incrementarlo', teni#ndose entonces un
m#todo de paso variable.
%or ejemplo, los m#todos 7un$e-8utta-Aehlber$ son m#todos del tipo 7un$e-8utta en los cuales
se combinan dos m#todos de diferente orden, para poder estimar el error cometido en cada itera-
cin de la solucin.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 10
2.;., !un-e./utta.Fe2lber- de 21 orden
Este m#todo est dado por las si$uientes ecuaciones
k
)
=At # f
(
y
n
, t
n
)
k
1
=At # f
(
y
n
+
)
1
k
)
, t
n
+
)
1
At #
)
k
2
=At # f
(
y
n
+
)
1:;
k
)
+
1::
1:;
k
1
, t
n
+At #
)
y
n+)
=y
n
+
)
:)1
k
)
+
1::
1:;
k
1
+
)
:)1
k
2
&)>'
donde At # es el paso de inte$racin variable, el cual debe dividirse a la mitad si el
Error>Err$bs+Err!ely
n+)
&)?'
y puede duplicarse si el
Error(Err$bs+Err!ely
n+)
)/)(( &)@'
donde
Error=

(k
)
k
2
)
:)1

&1('
es el error por truncamiento estimado y Err$bs y Err!el son el error absoluto y relativo utili"ados
para controlar el paso de inte$racin.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 11
2.;.2 !un-e./utta.Fe2lber- de 51 orden
En este m#todo se utili"a un m#todo de quinto orden para estimar el error cometido por un m#to-
do de cuarto orden y tomar decisiones sobre el tamaFo del paso de inte$racin y est dado por las
si$uientes ecuaciones
k
)
=At # f
(
y
n
, t
n
)
k
1
=At # f
(
y
n
+
)
3
k
)
, t
n
+
)
3
At #
)
k
2
=At # f
(
y
n
+
2
21
k
)
+
@
21
k
1
, t
n
+
2
?
At #
)
k
3
=At # f
(
y
n
+
)@21
1)@>
k
)

>1((
1)@>
k
1
+
>1@;
1)@>
k
2,
t
n
+
)1
)2
At #
)
k
:
=At # f
(
y
n
+
32@
1);
k
)
?k
1
+
2;?(
:)2
k
2

?3:
3)(3
k
3,
t
n
+At #
)
k
;
=At # f
(
y
n

?
1>
k
)
+1k
1

2:33
1:;:
k
2
+
)?:@
3)(3
k
3

))
3(
k
:,
t
n
+
)
1
At #
)
&1)'
donde At # es el paso de inte$racin variable.
e calcula
!=
)
At #

)
2;(
k
)

)1?
31>:
k
2

1)@>
>:13(
k
3
+
)
:(
k
:
+
1
::
k
;

&11'
siendo este
!=
At #
1

y
n+)(:)
y
n+)( 3)

&12'
y 6=(.?3(%olE/ !)
)/3
&13'
i !%olE , donde %olE es la tolerancia o error permitido en la solucin, se calcula el nuevo
punto de la solucin
y
n+)
=y
n
+
1:
1);
k
)
+
)3(?
1:;:
k
2
+
1)@>
3)(3
k
3

)
:
k
:
&1:'
y el nuevo paso de inte$racin como At #=6At # , si 63 el paso solo se cuadruplica
(At # =3At # ) , y se continua con la solucin a partir del punto n9).
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 12
i !>%olE , se calcula el nuevo paso de inte$racin como At #=6At # , si 6(.) el paso
se reduce solo a su d#cima parte (At # =(.)At # ) , y se parte del punto n anterior.
2.< 'rror por truncamiento 3 error por redondeo
e indic anteriormente que el error producido cuando el paso de inte$racin At no es sufi-
cientemente pequeFo para representar la solucin de la ecuacin diferencial en forma exacta, se
denomina error por truncamiento, al haber truncado la serie de =aylor y no incluir t#rminos ms
all de un cierto At
k
. in embar$o, por otra parte consideraciones num#ricas as como el
tiempo total de solucin, requieren que el At no se ha$a demasiado pequeFo. La ra"n para
esto es que el error por redondeo es mayor para pasos de inte$racin pequeFos debido al $ran n6-
mero de iteraciones requeridas para obtener la solucin. El error por redondeo es el error re-
sultante de la imposibilidad del computador di$ital de representar un n6mero con ms de un
n6mero de cifras si$nificativas y esto depender del Glar$o de palabraH utili"ado para la represen-
tacin num#rica.
!uando el paso de inte$racin es $rande el error dominante es el error por truncamiento, mientras
que para pasos pequeFos, es ms importante el error por redondeo.
2., 6istemas r-idos
e dice que un sistema es Gr&gidoH cuando presenta caractersticas dinmicas lentas y rpidas en
forma simultnea, esto es que contiene unos elementos dinmicos con constantes de tiempo pe-
queFas y otros con constantes de tiempo $randes, como podra ser el caso de un sistema electro-
mecnico en donde las constantes de tiempo de los componentes el#ctricos, pueden ser muy
pequeFas en comparacin con las constantes de tiempo de los componentes mecnicos.
La presencia de dinmicas lentas y rpidas dentro del mismo sistema de ecuaciones diferenciales,
introduce dificultades al momento de obtener su solucin num#rica.
%ara $aranti"ar la estabilidad y exactitud de la solucin de las ecuaciones de la parte dinmica r-
pida, se puede requerir un paso de inte$racin pequeFo, el cual puede ser demasiado pequeFo
para la solucin de la parte dinmica lenta, extendiendo innecesariamente la obtencin de la solu-
cin en todo el intervalo de solucin deseado, si el paso se mantiene constante.
Bna posible solucin al problema planteado por la presencia de constantes de tiempo muy dife-
rentes, puede ser la utili"acin de m#todos de paso variable, los cuales pueden ajustar el paso de
inte$racin de acuerdo a los requerimientos del sistema, utili"ando pasos pequeFos inicialmente y
lue$o que la parte de dinmica rpida haya desaparecido, utili"ando entonces paso de inte$racin
mayor, sin embar$o esto tiene un costo extra por la necesidad de efectuar evaluaciones adiciona-
les de las ecuaciones diferenciales y comparaciones para determinar el ajuste del paso.
%ara la solucin de los sistema r$idos son usualmente preferidos los m#todos num#ricos de solu-
cin de ecuaciones diferenciales basados en las frmulas de diferencias retr$radas implcitas.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 13
2.,, 'fecto del paso de inte-racin sobre la e>actitud de la solucin
El tamaFo del paso de inte$racin utili"ado para la solucin de la ecuacin diferencial, afecta di-
rectamente la exactitud de la misma. Iormalmente se desea emplear el paso de inte$racin ma-
yor posible para obtener una solucin rpida, pero no tan $rande que introdu"ca errores
apreciables en esta. Dl utili"ar los m#todos de inte$racin de paso fijo, es responsabilidad del
usuario la seleccin del paso de inte$racin adecuado.
En la Ai$ura 1.))-) se muestra la solucin de la ecuacin diferencial
d y
d'
=cos(')( y(()=( utili-
"ando el m#todo de Euler &7un$e-8utta de primer orden', con cuatro pasos de inte$racin dife-
rentes, uno lo suficientemente pequeFo para considerar la solucin como GexactaH. e puede
apreciar fcilmente como se deteriora la solucin a medida que se aumenta el paso de inte$racin
y la necesidad de utili"ar pasos suficientemente pequeFos para tener una solucin con un error
mnimo.
Ai$ura 1.))-) Efecto del paso de inte$racin J m#todo de Euler
En la Ai$ura 1.))-1 se muestra la solucin de la misma ecuacin diferencial anterior pero
utili"ando ahora el m#todo de impson &7un$e-8utta de tercer orden' y los mismos pasos de
inte$racin empleados anteriormente. En este caso se puede apreciar que para un mismo tamaFo
de paso, la solucin con el m#todo de impson es mucho ms exacta que la obtenida con el
m#todo de Euler.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
0 2 4 6 8 10 12 14 16 18
-1
-0.5
0
0.5
1
1.5
2
Solucin de py(x)=cos(x) por el mtodo de Euler (RK-1)
x
y
(
x
)


exacta
paso = 0,5
paso = 1,0
paso = 2,0
Mtodos numricos para la solucin de EDO 14
Dunque el m#todo de impson requiere reali"ar tres veces ms evaluaciones de la ecuacin dife-
rencial en cada paso de inte$racin que el m#todo de Euler, normalmente permite emplear pasos
de inte$racin bastante mayores, reduci#ndose incluso el tiempo total requerido para la solucin.
El tamaFo del paso de inte$racin necesario para obtener una solucin satisfactoria depende en-
tonces de la exactitud del m#todo de inte$racin y de la ecuacin diferencial a resolver. Entre
ms preciso, mayor orden, sea el m#todo de inte$racin utili"ado, se pueden emplear paso mayo-
res, sin embar$o debe tenerse tambi#n en cuenta que, en los casos en que se desea mostrar la solu-
cin de la ecuacin diferencial en forma $rfica, el tamaFo mximo del paso estar determinado
usualmente por la resolucin deseado de este $rfico.
Ai$ura 1.))-) Efecto del paso de inte$racin J m#todo de impson
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
0 2 4 6 8 10 12 14 16 18
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Solucin de py(x)=cos(x) por el mtodo de Simpson (RK-3)
x
y
(
x
)


exacta
paso = 0,5
paso = 1,0
paso = 2,0
Mtodos numricos para la solucin de EDO 15
0. Mtodos de inte-racin numrica
La expresin $eneral de los m#todos de inte$racin num#rica est dada por
y
n+)
=

i=(
p
a
i
y
ni
+At

i=)
p
b
i
y
ni
&1;'
en donde el 6ltimo valor de t en que se calcul y es t
n
y el n6mero de valores pasados usados para
calcular y
n9)
es p9).
e considerar que en &1;' al$unos de los a
i
y b
i
pueden ser cero, pero se supondr que a
p
o b
p
no
son cero.
i en &1;' b
)
=( , y
n9)
est expresado como una combinacin lineal de los valores conocidos
de y y

y y es fcil de calcular. Las frmulas con b
)
=( se denominan frmulas de integra-
cin directa o abiertas
i b
)
( , la ecuacin &1;' es una funcin implcita de y
n9)
porque
y
n+)
=f ( y
n+)
, t
n+)
) y se
puede resolver solamente por procedimientos iterativos. Las frmulas con b
)
( se denomi-
nan frmulas de integracin impl&citas o cerradas.
!omo re$la $eneral, para frmulas del mismo orden, las frmulas implcitas son sustancialmente
ms exactas que las frmulas directas.
En comparacin con los m#todos de inte$racin del tipo 7un$e-8utta, los m#todos de inte$racin
num#rica se caracteri"an entonces por.
). no ser autoiniciables
1. requerir aparte de la informacin del punto n, informacin de uno o ms puntos anteriores para
calcular la solucin en el punto n9)
2. evaluar la funcin &derivada' una sola ve" por cada aplicacin de la frmula &el n6mero de
evaluaciones de la derivada en el caso de los m#todos predictor - corrector depender del n6-
mero de veces que sea necesario aplicar la frmula correctora' y
3. por que el uso combinado de frmulas explcitas e implcitas permite estimar y corre$ir los
errores por truncamiento locales. Esta estimacin del error se puede utili"ar para variar el ta-
maFo del paso de inte$racin.
0., Frmulas directas? Mtodos de Adams.%as2fort2
Las frmulas directas &abiertas) pueden utili"arse solas. Dl uso de las frmulas directas de Dda-
ms solas, se les llama m#todos o predictores de DdamsJKashforth.
Los mtodos de $dams-*as+fort+ ms utili"ados son los de se$undo y cuarto orden. !omo se
podr apreciar en sus ecuaciones, estas requieren del conocimiento de la derivada evaluada en
uno o hasta tres instantes anteriores respectivamente, por lo que la solucin de la ecuacin
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 16
diferencial debe iniciarse con un procedimiento del tipo 7un$e-8utta del mismo orden para
obtener la informacin inicial requerida por el m#todo de Ddams.
0.,., Mtodo de se-undo orden
Este m#todo est dado por la ecuacin
y
n+)
=y
n
+
)
1
At|2 y
n
y
n)
&1>'
cuyo error por truncamiento es O(At
2
) .
0.,.2 Mtodo de cuarto orden
Esta frmula directa est dada por la ecuacin
y
n+)
=y
n
+
)
13
At |:: y
n
:@ y
n)
+2> y
n1
@ y
n2
&1?'
con un error por truncamiento O(At
:
) .
0.2 Frmulas implcitas? Mtodos de Adams.Moulton
Las frmulas implcitas &cerradas' no pueden utili"arse solas y se les llamar mtodos o co-
rrectores de $dams-,oulton.
0.2., Mtodo de se-undo orden
Este m#todo est dado por la ecuacin
y
n+)
=y
n
+
)
1
At| y
n+)
y
n
&1@'
el cual es com6nmente llamado m#todo trape"oidal cerrado.
0.2.2 Mtodo de cuarto orden
Esta frmula est dada por la ecuacin
y
n+)
=y
n
+
)
13
At |@ y
n+)
+)@ y
n
: y
n)
+ y
n1
&2('
0.0 Mtodos predictor . corrector
i bien las frmulas directas se pueden utili"ar solas, provey#ndoles la informacin de arranque
necesaria, las frmulas implcitas no pueden emplearse solas.
%ara poder hacer uso de las frmulas de inte$racin num#rica para el clculo de y
n9)
cuando
b
)
( , se debe obtener primero una estimacin del valor de y
n9)
denominado y
n+)
( ()
, calcular
lue$o f
(
y
n+)
(()
, t
n+)
)
y utili"ar &1;' paras calcular y
n+)
())
.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 17
e debe entonces predecir primero el valor de y
n9)
utili"ando una frmula de inte$racin directa y
lue$o corregir el valor predicho con una frmula de inte$racin implcita, crendose as los m#to-
dos del tipo predictor J corrector, los cuales emplean una frmula directa como predictor y una
frmula implcita como corrector, ambas con errores por truncamiento del mismo orden.
0.0., Mtodo trape@oidal modificado (21 orden)
Bno de los m#todos ms sencillos del tipo predictor - corrector se obtiene utili"ando los m#todos
de Ddams de 1C orden &el de Ddams-Kashforth como predictor y el de Ddams J /oulton, inte$ra-
cin trape"oidal cerrada, como corrector'. En su versin ms simple el corrector se utili"ara una
sola ve" en cada iteracin, haciendo del mismo un m#todo de paso fijo cuyas ecuaciones estn da-
das por
%redictor
y
n+)
( ()
=y
n
+
)
1
At|2 y
n
y
n)

y
n+)
(()
=f ( y
n+)
( ()
, t
n
+At )
&2)a'
!orrector
y
n+)
=y
n
+
)
1
At| y
n+)
( ()
+ y
n
&2)b'
0.0.2 Mtodo de Adams.%as2fort2.Moulton de 51 orden
Dl uso de una frmula de Ddams abierta &predictor' junto con una frmula de Ddams cerrada &co-
rrector' se le conoce como mtodo de $dams-*as+fort+-,oulton, siendo el de 3C orden
%redictor
y
n+)
( ()
=y
n
+
)
13
At |:: y
n
:@ y
n)
+2> y
n1
@ y
n2

y
n+)
( ()
=f ( y
n+)
(()
, t
n
+At)
&21a'
!orrector
y
n+)
( j+))
=y
n
+
)
13
At |@ y
n+)
( j)
+)@ y
n
: y
n)
+y
n1
&21b'
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 18
0.0.0 Mtodo de Milne de 51 orden
Este es otro m#todo predictor J corrector con un error O(At
:
) cuyas ecuaciones son
%redictor
y
n+)
( ()
=y
n2
+
3
2
At |1 y
n
y
n)
+1 y
n1

y
n+)
( ()
=f ( y
n+)
(()
, t
n
+At)
&22a'
!orrector
y
n+)
( j+))
=y
n)
+
)
2
At | y
n+)
( j)
+3 y
n
+y
n)
&22b'
0.0.5 Mtodo de Milne de 41 orden
Este es un m#todo predictor J corrector con un error O(At
>
) cuyas ecuaciones son
%redictor
y
n+)
( ()
=y
n:
+
2
)(
At |)) y
n
)3 y
n)
+1; y
n1
)3 y
n2
+)) y
n3

y
n+)
( ()
=f ( y
n+)
(()
, t
n
+At)
&23a'
!orrector
y
n+)
( j+))
=y
n2
+
1
3:
At |> y
n+)
( j)
+21 y
n
+)1 y
n)
+21 y
n1
+> y
n2
&23b'
0.5 Al-oritmo de solucin
La utili"acin combinada de los m#todos de inte$racin del tipo 7un$e-8utta con los m#todos
num#ricos predictor J corrector, permite desarrollar un al$oritmo de solucin de ecuaciones dife-
renciales de paso variable el cual en t#rminos $enerales comprendera.
). Btili"ar un al$oritmo 7un$eJ8utta para iniciar la solucin y obtener la informacin requerida
por el m#todo predictor J corrector
1. En cada iteracin
%redecir el valor de y
n+)
( ()
!orre$ir para obtener y
n+)
())
2. i la diferencia porcentual ente el valor predicho y el corre$ido es menor que un valor c
arbitrariamente pequeFo, pero mayor que un valor 6 dado, entonces continuar
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 19
3. i la diferencia anterior no es menor que c , utili"ar entonces nuevamente el corrector obte-
niendo y
n+)
( 1)
. i en dos iteraciones del corrector no se lo$ra la precisin deseada, entonces
el paso de inte$racin debe dividirse a la mitad y volver a utili"ar el m#todo de 7un$eJ8utta a
partir del punto n para continuar la solucin, cambiando nuevamente al m#todo predictor J co-
rrector cuando se ten$a la informacin requerida por este
:. i la diferencia ente el valor predicho y el corre$ido es menor que 6 , entonces el error co-
metido es muy pequeFo y se puede acelerar la solucin aumentando el paso de inte$racin al
doble, continuar con el m#todo 7un$eJ8utta y lue$o el predictor J corrector nuevamente
;. El m#todo continuar doblando o dividiendo por dos el paso de inte$racin de manera de man-
tener el error por truncamiento local dentro de los lmites establecidos y tratando en todo caso
de usar el paso de inte$racin mayor posible para obtener una solucin rpida.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 20
5. 'Bemplos del uso de al-unos mtodos
Los pro$ramas de diseFo de sistemas de control asistido por computadora &.$./D' ,$%0$*L y
/cilab, as como los de simulacin di$ital de sistemas dinmicos /imulinkL y 1is/im
=/
,
incorporan varias rutinas para la solucin de ecuaciones diferenciales ordinarias, o GODE
/olversH por sus si$las en in$l#s, por lo que al utili"arlos usualmente no es necesario su
pro$ramacin a menos que se desee emplear un m#todo diferente o reali"ar comparaciones entre
al$unos m#todos no incluidos en ellos.
5., Mtodo de la re-la de 6impson en MA$&A%
El si$uiente es el $rfico de la solucin de la ecuacin diferencial
dy
dt
=y(t)+) empleando el
m#todo de impson, un 7un$e-8utta de 2
er
orden, y el correspondiente listado de las instruccio-
nes en ,$%0$*.
%Ejemplo 4.1
%Solucin de una ecuacin diferencial utilizando
%el mtodo de Simpson (Runge-Kuta de 3er orden)
%Ecuacin de ejemplo: p y = f(y,t) = -y + 1
%
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Solucin de p y= -y + 1 por el Mtodo de Simpson
tiempo
y
(
t
)
Mtodos numricos para la solucin de EDO 21
clear
%definir la ecuacin diferencial a resolver
f=inline('-y+1','y','t');
%
%condicin inicial y tiempos
yo=0.;to=0;dt=0.25;tu=5;
y(1)=yo;t(1)=to;
n=0;
%
%solucin numrica
while t(n+1) < tu
n=n+1;
k1=dt*f(y(n),t(n));
k2=dt*f(y(n)+k1/2,t(n)+dt/2);
k3=dt*f(y(n)-k1+2*k2,t(n)+dt);
y(n+1)=y(n)+(k1+4*k2+k3)/6;
t(n+1)=t(n)+dt;
end
%
%graficar la solucin
plot(t,y,'+b')
grid on
title('Solucin de p y= -y + 1 por el Mtodo de Simpson')
xlabel('tiempo'),ylabel('y(t)')
5.2 Mtodo de Adams.%as2fort2 de 21 orden en 6cilab
El si$uiente es el listado de instrucciones en /cilab y el $rfico de la solucin de la ecuacin dife-
rencial
dy
dt
=(.(1: y(t)+t empleando el m#todo de Ddams-Kashforth de 1C orden.
//Ejemplo 4.2
//Solucin de una ecuacin diferencial utilizando
//el mtodo de Adams-Bashforth de 2 orden
//Ecuacin de ejemplo: p y = f(y,t) = -0.025 y + t
//
clear,xset('default'),xbasc()
//definir la ecuacin diferencial a resolver
function py=f(y,t)
py=-0.025*y+t;
endfunction
//
//condicin inicial y tiempos
yo=0.;to=0;dt=0.25;tu=10;
y(1)=yo;t(1)=to;
n=0;
//solucin numrica
//arranque con integracin trapezoidal
n=n+1;
k1=dt*f(y(n),t(n));
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 22
k2=dt*f(y(n)+k1,t(n)+dt);
y(n+1)=y(n)+(k1+k2)/2;
t(n+1)=t(n)+dt;
//cambio al mtodo de Adams-Bashforth
while t(n+1) < tu
n=n+1;
y(n+1)=y(n)+dt*(3*f(y(n),t(n))-f(y(n-1),t(n-1)))/2;
t(n+1)=t(n)+dt;
end
//
//graficar la solucin
xname('Solucin numrica de una ecuacin diferencial')
xset('color',2),xset('mark size',1,18)
plot2d(t,y,style=-1)
xgrid(4)
xset('color',1),xset('font',2,3)
xtitle('Solucin de p y= -0.025 y + t por el mtodo de Adams-Bash-
forth de 2 orden','tiempo','y(t)')
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Solucin de p y= -0.025 y + t por el !todo de "d#$-%#$&fort& de 2' orden
tiepo
y(t)
( ) 1 2 3 : ; > ? @ )(
(
:
)(
):
1(
1:
2(
2:
3(
3:
:(
Mtodos numricos para la solucin de EDO 23
5.0 6olucin de una ecuacin diferencial de se-undo orden
%ara obtener la solucin de una ecuacin diferencial de orden n, esta debe convertirse en un
conjunto de n ecuaciones diferenciales de primer orden.
%or ejemplo, la ecuacin diferencial lineal de se$undo orden
d
1
y
dt
1
+a
)
dy
dt
+a
(
y(t)=b
(
u(t) &2:'
puede convertirse en dos ecuaciones diferenciales de primer orden definiendo
'
)
(t)=y(t) , '
1
(t)=dy/dt &2;'
para obtener
d'
)
dt
='
1
(t) ,
d'
1
dt
=a
(
'
)
(t)a
)
'
1
(t)+b
(
u(t) &2>'
%ara el caso de una ecuacin diferencial lineal de orden alto &n' dada por
d
n
y
dt
n
+a
n)
d
n)
y
dt
n)
++a
)
dy
dt
+a
(
y(t)=b
(
u(t) &2?'
definiendo
'
)
(t)=y(t) , '
1
(t)=
dy
dt
,, '
n
=
d
n)
y
dt
n)
&2@'
se puede convertir en un conjunto de n ecuaciones diferenciales de primer orden dado por

'
)
='
1
'
1
='
2

'
n
=a
(
'
)
a
)
'
1
a
n)
'
n
+b
(
u(t)
&3('
En el caso $eneral de un conjunto de n ecuaciones diferenciales de primer orden no lineales se
tendra

'
)
(t)=f
)
('
)
, '
1
,., '
n
( u ( t)
'
1
(t)=f
1
('
)
, '
1
, ., '
n
( u( t)

'
n
(t)=f
n
('
)
, '
1
,., '
n
( u( t)
&3)'
las cuales deben ser resueltas en forma simultnea.
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 24
El si$uiente es el $rfico de la solucin de la ecuacin diferencial de se$undo orden
d
1
y
dt
1
+).:
dy
dt
+2 y(t)=2 empleando el m#todo de Euler, y el correspondiente listado de las
instrucciones en ,$%0$*.
Dunque la respuesta de y&t' se muestra en el $rfico como una lnea continua, debe recordarse que
la solucin de la ecuacin diferencial solo existe en los instantes *t
i
+ en los cuales se calcul.
%Ejemplo 4.3
%Solucin de una ecuacin diferencial de segundo orden
%utilizando el mtodo de Euler (Runge-Kutta de er orden!
%Ecuacin de ejemplo" (p#$%.&'p%3! ((t! ) 3
%
clear
%definir la ecuacin diferencial
%como dos ecuaciones diferenciales de er orden!
f)inline(*+$*,*+*,*+$*,*t*!-
f$)inline(*-.&'+$-3'+%3*,*+*,*+$*,*t*!-
%
%condiciones iniciales ( tiempos
+o)..-+$o).-to).-dt).../$&-tu)0..-
+(!)+o-+$(!)+$o-t(!)to-
n).-
%
%solucin numrica
12ile t(n%! 3 tu
n)n%-
4)dt'f(+(n!,+$(n!,t(n!!-
4$)dt'f$(+(n!,+$(n!,t(n!!-
+(n%!)+(n!%4-
+$(n%!)+$(n!%4$-
t(n%!)t(n!%dt-
end
%
%graficar la solucin
plot(t,+,*5*!
grid on
title(*Solucin de (p#$ % .& ' p % 3! ((t! ) 3 por el mtodo de
Euler*!
+la5el(*tiempo*!,(la5el(*((t!*!
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 25
5.5 9ODE Solvers: en MA$&A% 3 6imulinC
,$%0$* y /imulik comparten el mismo conjunto de rutinas para la solucin de ecuaciones dife-
renciales ordinarias el cual incluye los si$uientes m#todos.
5.5., Mtodos de paso "ariable
6istemas no r-idos
ode3: - frmula 7un$e-8utta &3,:' explcita, <ormand-%rince, exactitud media
&m#todo utili"ado por omisin'
ode12 - frmula 7un$e-8utta &1,2' explcita, Ko$acMi-hampine, exactitud baja
ode))2 - frmula de Ddams-Kashforth-/oulton &),)2', exactitud baja a alta
6istemas r-idos
ode):s - frmula de diferencias retr$radas, 8lopfenstein-hampine &),:',
exactitud baja a alta
ode12s - frmula de modificada de 7osenbrocM &1,2', exactitud baja
ode12t - inte$racin trape"oidal, sistema moderadamente r$idos, exactitud baja
ode12tb - m#todo hbrido, trape"oidal J diferencias retr$radas, exactitud baja
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
0 1 2 3 4 5 6 7 8
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Solucin de (p
2
+ 1.5 * p + 3) y(t) = 3 por el mtodo de Euler
tiempo
y
(
t
)
Mtodos numricos para la solucin de EDO 26
5.5.2 Mtodos de paso fiBo (solo en 6imulinC)
ode) - frmula de Euler
ode1 - frmula de Euler modificada
ode2 - versin de paso fijo del ode12
ode3 - frmula 7un$e-8utta de 3C orden
ode: - versin de paso fijo del ode3:
5.5.0 'Bemplo
El llamado $eneral a las rutinas de solucin de ecuaciones diferenciales en ,$%0$* es
[t,y] = odesolver('f',intervalo,yo)
en donde odesolver es el nombre del m#todo a utili"ar, seleccionado de entre los listados en 3.3.)
o 3.3.1.
El si$uiente es el listado de instrucciones y el $rfico correspondiente para la solucin de un siste-
ma de control proporcional de una planta de se$undo orden utili"ando el ode23 de ,atlab4
%Ejemplo 4.4
%6tilizacin de la rutina ode4& (Runge-Kutta 47&!
%las ecuaciones diferenciales (modelo! est8n contenidas
%en el arc2i9o modelo:44.m
%
clear
%
%;nter9alo de solucin
to).-tu)$.-
%
%llamado al <ode sol9er<
=t,(>)ode4&(*modelo:44*,=to tu>,=. .>!-
%
%graficar la solucin
plot(t,((",!!
grid on
title(*Ejemplo del uso de la rutina ?@E4&*!
+la5el(*tiempo, seg*!,(la5el(*((t!*!
El GmodeloH a resolver debe proporcionarse en un archivo separado.
function p+)modelo(t,+!
%Ejemplo 4.4
%Arc2i9o modelo:44.m con definicin del modelo
%(conjunto de ecuaciones diferenciales!
%la funcin de5e de9ol9er un 9ector columna
%
%Bodelo de ejemplo - control C de una planta de segundo orden
r)-Kc).&-
%realimentacin
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 27
e)r-+(!-
%controlador C
u)Kc'e-
%planta
p+)+($!-
p+$)-+(!-..&'+($!%u-
p+)=p+- p+$>-
5.# 9ODE Solvers: en Scilab
Dl i$ual que ,$%0$* el pro$rama /cilab provee varias rutinas para la solucin de un conjunto
de ecuaciones diferenciales ordinarias no lineales.
El llamado $eneral al m#todo de solucin es
y = ode([tipo],yo,to,t,f)
en donde el GtipoH define la rutina a utili"ar teni#ndose disponibles las si$uientes.
GadamsH - m#todo predictor -corrector de Ddams, sistemas no r$idos
GstiffH - m#todo de diferencias retr$radas, sistemas r$idos
GrMH - 7un$e-8utta de 3 orden, paso variable
GrMfH - 7un$e.8utta-Aelhber$ &3,:', hampine-Natts, sistemas no r$idos o de
ri$ide" moderada
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
0 2 4 6 8 10 12 14 16 18 20
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Ejemplo del uso de la rutina ODE45
tiempo, seg
y
(
t
)
Mtodos numricos para la solucin de EDO 28
GfixH - i$ual a rMf, menos ar$umentos en la llamada
GrootH - rutina de solucin con capacidad de encontrar races
GdiscreteH- simulacin en tiempo discreto
omisin - selecciona automticamente entre GadamsH y GstiffH
El si$uiente es el listado de instrucciones en /cilab y el $rfico correspondiente, para la obtencin
del movimiento en el plano de fase de los estados de un sistema de se$undo orden libre y con
condiciones iniciales diferentes de cero, utili"ando la instruccin ode.
//Ejemplo 4.&
776tilizacin de la instruccin ode de Scila5
77@i5ujo del mo9imiento en el plano de fase
77de los estados de un sistema de segundo orden
77Duncin de ejemplo" (p#$%..&'p%3! +(t! ) .
77
clear
t)."...&"$.-
77definir el sistema como una funcin
77dos ecuaciones diferenciales de primer orden
function p+)modelo(t,+!
p+(!)+($!
p+($!)-3'+(!-..&'+($!
endfunction
77
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
(1
(2
-) -* -2 -1 0 1 2 * ) 5 +
-,
-+
-)
-2
0
2
)
+
Mtodos numricos para la solucin de EDO 29
77llamado al <ode sol9er< con el mtodo Runge-Kutta de 4 orden
+)ode(*r4*,=4-/>,.,t,modelo!-
77
77di5ujar el plano de fase
plot$d(+(,"!,+($,"!,st(le)&!
+grid(4!,+title(**,*+*,*+$*!
77
77el cam5io de la posicin de los ejes coordenados
77( del tamaEo ( color de las escalas ( le(endas,
77se realiz con las facilidades de Scila5
77para la edicin de las propiedades de las figuras
5.4 Mtodos de inte-racin en Vis6im
Este pro$rama de simulacin di$ital permite seleccionar entre los si$uientes m#todos de solucin
del sistema dinmico.
Euler
=rape"oidal
7un$e-8utta 1C orden &Euler modificado'
7un$e-8utta de 3C orden
7un$e-8utta de :C orden &paso variable'
Kulirsh-toer &polinomios racionales'
Euler &diferencias retr$radas', para sistemas r$idos
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 30
#. (omparacin de los mtodos de solucin de 'D)
!omo se ha indicado anteriormente, la exactitud de un m#todo num#rico de solucin de ecuacio-
nes diferenciales depende de su tipo y orden, y del pasado de inte$racin utili"ado. Es de utilidad
contar entonces con una pro$rama o herramienta que permita comparar las caractersticas de la
solucin de una ecuacin diferencial, utili"ando diferentes m#todos de solucin y diferentes pasos
de inte$racin.
El pro$rama ysOuaMe &!aler$a, ui"a', es un pro$rama .$./D similar en cierta forma al /a-
tlab, pero que incorpora facilidades extra para al interaccin entre el usuario y los pro$ramas de-
sarrollados en este.
D continuacin se presenta la solucin de la ecuacin diferencial
dx
dt
=0.5 x
2
+2 obtenida uti-
li"ando el m#todo de Euler y el 7un$e-8utta de cuarto orden con un paso de inte$racin
At=0.80 y el pro$rama ucr4ie2564solucin7edo4s8
1
Persin ).1
1
desarrollado en ysOuaMe
LE.
Este pro$rama permite seleccionar entre los si$uientes m#todos de solucin de ecuaciones dife-
renciales.
Euler
Euler modificado
Qnte$racin trape"oidal
7e$la de impson
Reun
7un$e-8uta de 3C orden
7un$e-8utta-impson
e puede variar el paso de inte$racin At para ver su efecto en la solucin diferencial y
tambi#n cambiar la ecuacin diferencial que se desea resolver.
1
disponible entre los ejemplos de Sysquake para el curso IE-41 Sistemas de control! en la direcci"n electr"nica
#ttp$%%&&&.eie.ucr.ac.cr%#tm%pd%al'aro%sqdemos.#tm
2
la (ersi"n ori)inal de este pro)rama 'orma parte de las rutinas desarrolladas por *ra)"n
+1,
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
Mtodos numricos para la solucin de EDO 31
Vma.ucr.metodosAnumericos.odt V.M. Alfaro
-.(#ct#-
.uler
0 10 t($)
0
1
/0(t)
Solucin de l# .12 por el !todo de .uler
dt (0.,00)3
4!todo de $olucin nu!ric#
.uler .uler odif ic#do
5r#pe6oid#l Sip$on
7eun 8un9e-:utt#
8un9e-:utt#-Sip$on
;#$o de inte9r#cin
-.(#ct#-
8un9e-:utt#
0 10 t($)
0
1
/0(t)
Solucin de l# .12 por 8un9e-:utt# )' orden
dt (0.,00)3
4!todo de $olucin nu!ric#
.uler .uler odific#do
5r#pe6oid#l Sip$on
7eun 8un9e-:utt#
8un9e-:utt#-Sip$on
;#$o de inte9r#cin
Mtodos numricos para la solucin de EDO 32
%iblio-rafa
Dra$n, /. &1((2' - G<esarrollo de herramientas en ysOuaMe para el curso istemas de !on-
trolH, %royecto El#ctrico, Escuela de Qn$eniera El#ctrica, Bniversidad de !osta 7ica
Kurden, 7.L. y S.<. Aaires &)@@?' J Dnlisis Ium#rico, exta Edicn, /#xico, Qnternational
=hompson Editores
!aler$a arl &1((2' - GysOuaMe 1 Bser /anualH, Lausana, ui"a
Eome", !. &Editor' &)@@@' - GEn$ineerin$ and cientific !omputin$ Tith cilabH, IeT UorM,
IU, EBD, KirMhVuser Koston
Euy, S.L. &)@?1' - G/odelin$ process systems via di$ital computersH, !hemical En$ineerin$
&EBD', /ar"o ?
QI7QD Eroup &1(()' J Gcilab 7eference /anualH, Qnstitut Iational de 7echerche en Qnforma-
tique et en Dutomatique J %roject /eta 1, 7ocquencourt, Arancia
8etter, 7.L. y .%. %raTel &)@;@' J G/odern /ethods of En$ineerin$ !omputationH, IeT UorM,
IU, EBD, /cEraT-Rill, Qnc.
8ochenbur$er, 7.S. &)@>1' - G!omputer imulation of <ynamic ystemsH, En$leTood !liffs, IS,
EBD, %rentice-Rall, Qnc.
8orn, E.D. y S.P. Nait &)@>?' J G<i$ital !ontinuos ystem imulationH, En$leTood !liffs, IS,
EBD
7alston, D. &)@;:' - GD Airst !ourse in Iumerical DnalysisH, =oMyo, Sapn, /cEraT-
Rill48o$aMusha !o.
hampine, L.A. y /.N. 7eichelt &)@@>' J G=he /D=LDK W<E uiteH, QD/ Sournal of cienti-
fic !omputin$ &EBD', Pol. )? IC ), p$. )-11
=he /atTorMs, Qnc. &1((1' - GBsin$ /atlabL- Persion ;H, IaticM, /D, EBD
=he /atTorMs, Qnc. &1((1' - GBsin$ imulinML- Persion :H, IaticM, /D, EBD
=homas, K. &)@?;' - G=he 7un$e-8utta /ethodsH, Kyte &EBD', Dbril
Pisual olutions, Qnc. &)@@@' - GPisim
=/
Bser Euide J Persion 2 H, Nestford, /D, EBD
Vma.ucr.metodosAnumericos.odt V.M. Alfaro

También podría gustarte