You are on page 1of 210

Ecuaciones Diferenciales Ordinarias

Una introduccin con SAGE


Jos M. Gallardo
Versin 1.1 Mayo de 2012
Este documento se distribuye bajo la licencia Creative Commons Reconocimiento-NoComercial-
SinObraDerivada 3.0 Espaa. Para ver una copia de esta licencia, visite http://creativecommons.
org/licenses/by-nc-nd/3.0/es/.
NDICE
Prefacio VII
1. El concepto de ecuacin diferencial 1
1.1. Introduccin: algunos modelos . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. Movimiento de un cuerpo en cada libre . . . . . . . . . . . . . . 1
1.1.2. Un problema geomtrico . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.3. Desintegracin radiactiva . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.4. Un problema de mezclas . . . . . . . . . . . . . . . . . . . . . . . 8
2. Ecuaciones diferenciales de primer orden 11
2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2. Ecuaciones de variables separables . . . . . . . . . . . . . . . . . . . . . . 13
2.3. Ecuaciones lineales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4. Ecuaciones exactas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5. Factores integrantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.6. Problemas de valor inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.7. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7.1. Espejos parablicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7.2. Campos de fuerza conservativos . . . . . . . . . . . . . . . . . . . 41
2.7.3. Calentamiento de edicios . . . . . . . . . . . . . . . . . . . . . . 46
3. Ecuaciones diferenciales de orden superior 51
3.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2. Ecuaciones reducibles a primer orden . . . . . . . . . . . . . . . . . . . . 54
3.2.1. Ecuaciones en las que no aparece la variable dependiente . . . . 54
3.2.2. Ecuaciones en las que no aparece la variable independiente . . . 57
3.3. Ecuaciones lineales de segundo orden . . . . . . . . . . . . . . . . . . . . 58
3.4. Ecuaciones lineales homogneas con coecientes constantes . . . . . . . 62
3.5. Mtodo de variacin de las constantes . . . . . . . . . . . . . . . . . . . . 65
3.6. Mtodo de coecientes indeterminados . . . . . . . . . . . . . . . . . . . 69
3.7. Problemas de valores iniciales y de contorno . . . . . . . . . . . . . . . . 77
3.8. Ecuaciones lineales de orden superior . . . . . . . . . . . . . . . . . . . . 79
3.9. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.9.1. Vibraciones mecnicas . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.9.2. Deexin y pandeo de vigas . . . . . . . . . . . . . . . . . . . . . 95
4. Sistemas de ecuaciones diferenciales 101
4.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.2. Mtodo de sustitucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.3. Mtodo de autovalores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.4. Teora geomtrica: el diagrama de fases . . . . . . . . . . . . . . . . . . . 118
4.5. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
4.5.1. Calentamiento de edicios . . . . . . . . . . . . . . . . . . . . . . 133
4.5.2. Ms sobre vibraciones mecnicas . . . . . . . . . . . . . . . . . . 136
4.5.3. El pndulo amortiguado . . . . . . . . . . . . . . . . . . . . . . . . 140
5. Mtodos numricos para problemas de valor inicial 143
5.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.2. El mtodo de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.3. Mtodos de orden superior . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5.3.1. Mtodo de Heun o de Euler mejorado . . . . . . . . . . . . . . . . 155
5.3.2. Mtodo del punto medio . . . . . . . . . . . . . . . . . . . . . . . 158
5.3.3. Mtodo de Runge-Kutta de cuarto orden . . . . . . . . . . . . . . 160
5.4. Algunas consideraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
5.5. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
5.5.1. Deexin de vigas en voladizo . . . . . . . . . . . . . . . . . . . . 167
5.5.2. El pndulo perturbado . . . . . . . . . . . . . . . . . . . . . . . . . 170
6. Mtodos numricos para problemas de contorno 175
6.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.2. Mtodo de diferencias nitas . . . . . . . . . . . . . . . . . . . . . . . . . 176
6.3. Aproximacin variacional . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
6.4. Mtodo de elementos nitos . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.5. Algunos comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
6.6. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
6.6.1. Deexin de vigas empotradas . . . . . . . . . . . . . . . . . . . . 195
Bibliografa Complementaria 201
PREFACIO
No voy a descubrir la plvora si digo que las ecuaciones diferenciales constituyen
una parte fundamental de las Matemticas, tanto desde un punto de vista puramente
terico como desde un enfoque ms aplicado; por ello, es fundamental su estudio en
todas las carreras cientcas y tcnicas. En este trabajo recojo de forma ordenada el
contenido un tanto desordenado que he venido impartiendo en los ltimos aos a
estudiantes de Ingeniera Qumica y Arquitectura.
Existen muy buenos libros sobre ecuaciones diferenciales en el mercado, por lo que
sera presuntuoso aadir uno nuevo sin aportar la ms mnima novedad. La de este
consiste en la utilizacin del programa Sage para la resolucin, tanto simblica como
numrica, de los ejemplos propuestos. Dicho programa constituye una alternativa de
software libre a paquetes como Matlab, Maple o Mathematica. Para ms informacin
sobre Sage y una introduccin a su manejo bsico, cuyo conocimiento asumir por
parte del lector, recomiendo visitar la pgina web del proyecto: www.sagemath.org. En
un futuro puede que escriba un captulo de introduccin al manejo de Sage; mientras
tanto, en la pgina web referenciada pueden encontrarse multitud de trabajos tiles.
Este libro est en constante proceso de revisin, por lo que todo tipo de sugerencias
y correcciones sern bienvenidas, o no, a: jmgallardo@uma.es.
Jos M. Gallardo
Profesor Titular de Matemtica Aplicada
Universidad de Mlaga
viii Prefacio
CAPTULO
1
EL CONCEPTO DE ECUACIN
DIFERENCIAL
1.1. Introduccin: algunos modelos
Para ilustrar el concepto de ecuacin diferencial y su relacin con distintas ramas
de las ciencias, vamos a analizar en este apartado una serie de problemas prcticos
donde las ecuaciones diferenciales surgen de forma natural. Aprovecharemos para
introducir algunas deniciones que formalizaremos ms adelante.
1.1.1. Movimiento de un cuerpo en cada libre
Consideremos un cuerpo de masa m que se deja caer verticalmente desde una altu-
ra h, sin velocidad inicial, y bajo el nico efecto de la gravedad. Queremos determinar
la posicin del cuerpo en cada instante de tiempo t, as como el tiempo que tardar
en llegar al suelo.
La ley fsica que determina el comportamiento del sistema bajo estudio es la se-
gunda ley de Newton:
ma =

F, (1.1)
donde a representa la aceleracin y

F es la resultante de las fuerzas que actan sobre


el cuerpo. Debemos tener en cuenta que cada fuerza es una magnitud vectorial, es
2 El concepto de ecuacin diferencial
decir, tiene direccin y sentido, por lo que a la hora de traducir la ecuacin (1.1) a una
forma ms manejable debemos establecer un sistema de referencia adecuado. Vamos
a plantear el problema utilizando dos sistemas de referencia distintos: observaremos
que la ecuacin a resolver en cada caso ser diferente (ya que las variables signicarn
cosas distintas en cada planteamiento), aunque la interpretacin fsica de la solucin
obtenida ser la misma en ambos casos.
Consideremos el sistema de referencia de la gura 1.1, donde el origen se encuen-
tra en el suelo y el sentido positivo del movimiento es hacia arriba.
x(0)=h m
h
0
g
Figura 1.1: Primer sistema de referencia: x(t) es la altura del cuerpo en el instante t.
Sea x(t) la posicin del cuerpo en el instante de tiempo t, que coincide con la altura
a la que se encuentra el cuerpo en dicho instante. La aceleracin puede interpretarse
como la segunda derivada de la posicin: a = x
//
(t). La nica fuerza que acta es la
gravedad, que tiene la forma F = mg, siendo g la constante gravitatoria; observemos
que el signo menos indica que la fuerza de la gravedad acta en sentido opuesto a la
direccin positiva del movimiento, es decir, hacia el suelo.
Podemos escribir pues la ecuacin (1.1) como
mx
//
(t) = mg,
de donde
x
//
(t) = g. (1.2)
La ecuacin (1.2) es un ejemplo de ecuacin diferencial ordinaria: en ella intervienen
una variable independiente (el tiempo t), una variable dependiente (la posicin x, que
depende del tiempo) y alguna de sus derivadas (en este caso, la segunda: diremos
1.1 Introduccin: algunos modelos 3
que la ecuacin es de orden dos o de segundo orden). Dicha ecuacin se ha obtenido
mediante la interpretacin de una ley fsica (la segunda ley de Newton) en un sistema
de referencia adecuado.
La ecuacin (1.2) puede resolverse mediante dos integraciones sucesivas. En efecto,
en primer lugar
x
//
(t) = g x
/
(t) =
_
(g) dt = gt + C
1
,
donde C
1
es una constante arbitraria (constante de integracin); integrando de nuevo,
x(t) =
_
(gt + C
1
) dt =
g
2
t
2
+ C
1
t + C
2
,
siendo C
2
otra constante arbitraria. La expresin
x(t) =
g
2
t
2
+ C
1
t + C
2
(1.3)
se denomina solucin general de la ecuacin diferencial (1.2) y es, en este caso, una
familia biparamtrica de soluciones, ya que depende de dos valores o parmetros, C
1
y C
2
, que pueden tomar valores cualesquiera.
Para determinar cul es la solucin correcta de nuestro problema debemos deter-
minar los valores de C
1
y C
2
en nuestro caso particular. Para ello recurrimos a las
condiciones iniciales del problema, que son condiciones puntuales que debe vericar la
solucin. En nuestro caso, la posicin inicial (en el instante t = 0) del cuerpo es h:
x(0) = h,
mientras que su velocidad (que interpretamos como la derivada x
/
) es nula, ya que
soltamos el cuerpo sin velocidad inicial:
x
/
(0) = 0.
La ecuacin diferencial junto con las condiciones iniciales se denomina problema de
valores iniciales o problema de Cauchy:
_

_
x
//
= g,
x(0) = h,
x
/
(0) = 0.
El clculo de C
1
y C
2
se efecta sustituyendo las condiciones iniciales en la solucin
general (1.3) (se dice que imponemos las condiciones iniciales):
h = x(0) =
g
2
0
2
+ C
1
0 + C
2
= C
2
C
2
= h,
4 El concepto de ecuacin diferencial
y
0 = x
/
(0) = g 0 + C
1
C
1
= 0.
Obtenemos as la nica solucin del problema de valores iniciales:
x(t) =
g
2
t
2
+ h. (1.4)
Para calcular el tiempo que tarda el cuerpo en llegar al suelo, basta con resolver la
ecuacin x(t) = 0:
x(t) = 0
g
2
t
2
+ h = 0 t =

2h
g
.
Es importante notar que para el modelado matemtico del problema no ha sido
suciente con establecer la ecuacin diferencial correspondiente, sino que hemos te-
nido que complementarla con dos condiciones iniciales para llegar a un problema de
valores iniciales. Observemos tambin que la solucin general de la ecuacin diferen-
cial depende de dos parmetros, mientras que la solucin del problema de valores
iniciales est dada por (1.4) y es, por tanto, nica.
Vamos a analizar ahora el mismo problema, pero usando un sistema de referencia
distinto (vase la gura 1.2). Para ello, estableceremos el origen en el punto desde el
que empieza a caer el objeto, y supondremos que la direccin positiva es la de cada.
Si x(t) es el espacio recorrido por el cuerpo en el instante t, la ecuacin diferencial
que modela el sistema ser
x
//
= mg,
ya que en este caso la fuerza gravitatoria acta en el sentido positivo del movimiento
dentro del sistema de referencia elegido. Las condiciones iniciales son, en este caso,
x(0) = 0 y x
/
(0) = 0.
Razonando como en el ejemplo anterior, deducimos que la solucin del problema
de valores iniciales es simplemente
x(t) =
g
2
t
2
. (1.5)
Observemos que no hay contradiccin alguna entre las soluciones (1.4) y (1.5), ya que
en cada caso x tiene una interpretacin distinta: en (1.4) indica la altura del cuerpo y
en (1.5) el espacio recorrido.
Las deducciones fsicas obtenidas a partir del modelo deben ser independientes del
sistema de referencia elegido, una vez interpretadas adecuadamente. De esta forma,
si queremos calcular el tiempo que el cuerpo tarda en llegar al suelo, considerando
ahora el segundo sistema de referencia, bastar con resolver la ecuacin x(t) = h:
x(t) = h
g
2
t
2
= h t =

2h
g
.
Obtenemos as el mismo resultado que con el primer sistema de referencia.
1.1 Introduccin: algunos modelos 5
x(0)=0 m
h
g
0
Figura 1.2: Segundo sistema de referencia: x(t) es el espacio recorrido por el cuerpo en el
instante t.
1.1.2. Un problema geomtrico
Una tractriz es una curva que pasa por el punto A = (a, 0) del eje de abscisas, con
la propiedad de que la longitud del segmento de la recta tangente desde cualquier
punto de la curva al eje de ordenadas es constante. El nombre alemn para la tractriz
es Hundekurve (curva del perro), ya que representa el camino que seguira un perro
obstinado cuando su dueo pasea en lnea recta de norte a sur.
Vamos a determinar una ecuacin diferencial cuyas soluciones representan una
tractriz. Para ello, consideremos el tringulo de la gura 1.3 y notemos que la pen-
diente de la recta tangente a la curva buscada en el punto (x, y) es

a
2
x
2
x
(el signo menos obedece a que la pendiente es negativa). Por otra parte, y segn la
interpretacin geomtrica de la derivada, dicha pendiente es precisamente y
/
(x). Por
tanto, igualando las dos expresiones para la pendiente, obtenemos
y
/
=

a
2
x
2
x
.
Esta ecuacin diferencial necesita complementarse con un dato adicional: como la
curva pasa por el punto A = (a, 0), tenemos que
y(a) = 0.
6 El concepto de ecuacin diferencial
y
x
0
(x,y)
A=(a,0)
x
a
a
2
x
2
Figura 1.3: Esquema de la tractriz.
En resumen, para encontrar la ecuacin de la tractriz debemos resolver el siguiente
problema de valor inicial:
_
_
_
y
/
=

a
2
x
2
x
,
y(a) = 0.
En este caso, la ecuacin diferencial puede resolverse mediante integracin directa:
y
/
=

a
2
x
2
x
y =
_

a
2
x
2
x
dx.
El clculo de la primitiva se realiza mediante el cambio de variable x = a sen(t). Tras
una serie de clculos enrevesados, se obtiene la siguiente expresin:
y =
_
a
2
ln
_
a

a
2
x
2
a +

a
2
x
2
_
+
_
a
2
x
2
_
+ C,
donde C es una constante arbitraria. Imponiendo la condicin y(a) = 0, podemos
determinar el valor de C:
y(a) = 0 C = 0.
Finalmente, la ecuacin de la tractriz viene dada por
y =
_
a
2
ln
_
a

a
2
x
2
a +

a
2
x
2
_
+
_
a
2
x
2
_
.
En la gura 1.4 se representa la tractriz correspondiente al valor a = 2.
1.1 Introduccin: algunos modelos 7
Figura 1.4: Tractriz correpondiente al valor a = 2.
1.1.3. Desintegracin radiactiva
Consideremos una muestra radiactiva que consta de N(t) tomos en el instante de
tiempo t. A la vista de diversos experimentos realizados, es plausible suponer que la
velocidad de desintegracin es proporcional, en cada instante, al nmero de tomos
presente en la muestra. Si inicialmente la muestra consta de N
0
tomos, queremos
determinar el nmero de tomos en cualquier instante posterior.
Podemos identicar la velocidad de desintegracin de la muestra con la derivada
de N(t), con lo que se tiene la siguiente ecuacin diferencial:
dN
dt
= kN, (1.6)
donde k es una constante de proporcionalidad. Supondremos que las constantes que
aparecen en la escritura de un modelo son siempre positivas; el signo menos en el
segundo miembro de la ecuacin anterior indica entonces que la cantidad de sustancia
va disminuyendo, como debe suceder realmente. En efecto, al ser k y N positivas, la
derivada N
/
(t) es negativa, con lo que N(t) es una funcin decreciente. Por ltimo, la
condicin inicial a considerar es N(0) = N
0
.
La ecuacin (1.6) es de variables separadas o separables; en el captulo 2 veremos cmo
se resuelve. Es sencillo comprobar que la solucin del problema de valor inicial es
N(t) = N
0
e
kt
,
que es precisamente la ley de desintegracin radiactiva que determina la cantidad de
8 El concepto de ecuacin diferencial
sustancia que queda en la muestra en cada instante. Obsrvese adems que
lm
t
N(t) = 0,
lo que indica que la muestra radiactiva tiende a desaparecer conforme avanza el tiem-
po.
1.1.4. Un problema de mezclas
Consideremos un depsito que contiene 50 l de agua con 75 gr de sal disueltos. En
un determinado instante comienza a entrar agua salada a razn de 2 l/min, con una
concentracin de 3 gr/l de sal, mientras que el agua, perfectamente mezclada, sale del
depsito a razn de 2 l/min. Queremos determinar en qu instante la cantidad de sal
en el depsito ser de 125 gr. En la gura 1.5 se presenta un esquema de la situacin.
2 l/min
2 l/min
3 gr/l
50 l
Figura 1.5: Esquema del problema de mezclas.
Llamemos S(t) a la cantidad de sal en el depsito en el instante t. Notemos que
el volumen de agua en el depsito es siempre de 50 litros, ya que en cada instante
entran dos litros y salen otros dos. Por tanto, la concentracin de sal en cada instante
ser de S(t)/50 gr/l. La velocidad de variacin de la concentracin de sal viene dada
por S
/
(t), que se expresa en gr/min.
Por un lado, el aporte de sal por minuto al depsito ser de
2 l/min 3 gr/l = 6 gr/min,
1.1 Introduccin: algunos modelos 9
mientras que la tasa de prdida de sal es de
2 l/min
S(t)
50
gr/l =
S(t)
25
gr/min.
La variacin total de la concentracin de sal viene dada por la diferencia entre el
aporte y la prdida de sal. Obtenemos as la siguiente ecuacin diferencial
S
/
(t) = 6
S(t)
25
.
La condicin inicial es S(0) = 75, ya que inicialmente hay 75 gr de sal en el depsito.
La ecuacin diferencial es de variables separadas, aunque tambin es una ecuacin
lineal (ver captulo 2). La solucin del problema de valor inicial es
S(t) = 150 75e
t/25
.
Ntese que la funcin S(t) es creciente, ya que
S
/
(t) = 3e
t/25
> 0.
Esto signica que la cantidad de sal en el depsito aumenta al avanzar el tiempo.
Para determinar cundo la cantidad de sal en el depsito ser de 125 gr, basta con
resolver la ecuacin S(t) = 125:
S(t) = 125 150 75e
t/25
= 125 t = 25 ln(1/3) = 25 ln(3) 27,4653 min.
10 El concepto de ecuacin diferencial
CAPTULO
2
ECUACIONES DIFERENCIALES DE
PRIMER ORDEN
2.1. Introduccin
Una ecuacin diferencial ordinaria de primer orden es una expresin que relaciona una
variable independiente x con una variable dependiente y(x) y su primera derivada
y
/
(x):
F(x, y(x), y
/
(x)) = 0, x [a, b].
Por ejemplo, son ecuaciones diferenciales ordinarias de primer orden las siguientes:
y
/
(x) = 0,
dy
dx
= y, y + (y
/
)
1/3
+ 25x = sen(x).
Para representar la derivada de y respecto de x usaremos indistintamente las notacio-
nes y
/
, y
/
(x) o
dy
dx
. Salvo que sea necesario por claridad, en general no expresaremos
la dependencia de la variable y respecto de x:
F(x, y, y
/
) = 0, x [a, b].
Una solucin de una ecuacin diferencial de primer orden es una funcin
y: [a, b] R
12 Ecuaciones diferenciales de primer orden
que verica la ecuacin en cada punto x [a, b]. Para que esta denicin tenga sen-
tido, es preciso que la funcin y(x) sea derivable en el intervalo [a, b] y que dicha
derivada sea una funcin continua: se dice entonces que y(x) es de clase C
1
([a, b]).
Ejemplo 2.1. La funcin y: R R dada por y(x) = e
x
es una solucin de la ecua-
cin diferencial y
/
= y, ya que es derivable con continuidad en R y
y
/
(x) = e
x
= y(x).
La solucin general de una ecuacin diferencial de primer orden es una familia de
funciones y y(x, C) dependiente de un parmetro (o constante arbitraria) C que nos
proporciona todas las posibles soluciones de la ecuacin diferencial.
Ejemplo 2.2. La solucin general de la ecuacin diferencial y
/
= y es
y = Ce
x
,
siendo C R una constante arbitraria. En efecto, cualquier funcin de la forma ante-
rior es solucin de la ecuacin:
y
/
(x) = Ce
x
= y(x).
Ms adelante veremos que todas las posibles soluciones de la ecuacin tienen la forma
anterior.
Resolver una ecuacin diferencial signica obtener todas sus soluciones, esto es,
hay que determinar su solucin general. La inmensa mayora de ecuaciones dife-
renciales no pueden resolverse mediante mtodos analticos, es decir, no es posible
obtener una expresin exacta de la solucin y y(x, C). En este tema estudiaremos
diversos tipos clsicos de ecuaciones que s pueden resolverse de forma explcita.
Una ecuacin diferencial de primer orden est escrita en forma normal (tambin se
dice que est resuelta respecto de la derivada) si la derivada y
/
aparece despejada:
y
/
= f (x, y).
Toda ecuacin en forma normal tambin puede escribirse en forma diferencial:
M(x, y) dx + N(x, y) dy = 0.
En efecto:
y
/
= f (x, y)
dy
dx
= f (x, y) f (x, y)dx dy = 0;
basta pues tomar M(x, y) = f (x, y) y N(x, y) = 1.
En las secciones siguientes estudiaremos mtodos de resolucin para tres tipos
fundamentales de ecuaciones diferenciales de primer orden:
2.2 Ecuaciones de variables separables 13
Ecuaciones de variables separables: y
/
=
f (x)
g(y)
.
Ecuaciones lineales: y
/
= a(x)y + b(x).
Ecuaciones exactas: M(x, y) dx + N(x, y) dy = 0 con
M
y
=
N
x
.
2.2. Ecuaciones de variables separables
Diremos que una ecuacin diferencial de primer orden es de variables separables si
puede escribirse en la forma
y
/
=
f (x)
g(y)
,
siendo f (x) y g(y) funciones de una sola variable.
Las ecuaciones de variables separables se resuelven agrupando en un miembro de
la ecuacin los trminos que dependen de x, y en el otro aquellos que dependen de
y; a continuacin, se integran ambos miembros para obtener la solucin general de la
ecuacin. De este modo, podemos escribir formalmente:
dy
dx
=
f (x)
g(y)
g(y) dy = f (x) dx
_
g(y) dy =
_
f (x) dx.
Si G(y) y F(x) son primitivas de g(y) y f (x) respectivamente, obtenemos que
G(y) = H(x) + C,
donde C es la constante de integracin: recordemos que dos primitivas de una misma
funcin se diferencian en una constante. La expresin obtenida es la solucin gene-
ral de la ecuacin diferencial. Puede suceder que en dicha expresin no podamos
despejar la variable y; en tal caso se dice que la solucin est dada en forma implcita.
Ejemplo 2.3. Consideremos la ecuacin diferencial y
/
= 2xy, que es de variables
separables. Para resolverla, separamos las variables e integramos:
dy
dx
= 2xy
dy
y
= 2x dx
_
dy
y
=
_
2x dx ln(y) = x
2
+ c,
siendo c una constante de integracin. Despejemos la variable y:
y = e
x
2
+c
= e
x
2
e
c
.
Por ltimo, renombrando la constante e
c
como una constante arbitraria C, obtenemos
la solucin general de la ecuacin:
y = Ce
x
2
.
El siguiente cdigo permite resolver la ecuacin del ejemplo usando Sage:
14 Ecuaciones diferenciales de primer orden
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == 2*x*y
sage: desolve(ec , y)
c*e^(x^2)
Ejemplo 2.4. Consideremos la ecuacin en forma diferencial
xy dx + e
x
2
(y
2
1) dy = 0.
Podemos separar las variables como sigue:
1 y
2
y
dy = xe
x
2
dx.
Integrando, obtenemos la solucin general:
_
1 y
2
y
dy =
_
xe
x
2
dx ln(y)
y
2
2
=
e
x
2
2
+ C.
De nuevo Sage nos proporciona la solucin correcta:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == x*exp(x^2)*y/(1-y^2)
sage: desolve(ec , y)
-1/2*y(x)^2 + log(y(x)) == c + 1/2*e^(x^2)
En este caso no podemos despejar la variable y, por lo que debemos conformarnos
con la solucin general en forma implcita.
Ejemplo 2.5. Por supuesto, no todas las ecuaciones diferenciales de primer orden son
de variables separables. Como muestra, un botn:
y
/
= x
2
+ y
2
.
A continuacin vamos a considerar el caso particular de las ecuaciones homogneas
que, aun no siendo estrictamente de variables separables, pueden reducirse a una de
estas mediante un cambio de variable.
Diremos que una ecuacin diferencial de primer orden y
/
= f (x, y) es homognea
si la funcin f (x, y) verica la siguiente propiedad:
f (x, y) = f (x, y) para cada > 0.
En tal caso, mediante el cambio de variable
z =
y
x
2.2 Ecuaciones de variables separables 15
podemos transformarla en una ecuacin de variables separables. Para comprobarlo,
tengamos en cuenta que y = xz y, por tanto, y
/
= z + xz
/
; sustituyendo en la ecuacin,
resulta:
z + xz
/
= f (x, xz) z + xz
/
= f (1, z) z
/
=
f (1, z) z
x
,
siendo esta ultima ecuacin de variables separables.
Ejemplo 2.6. La ecuacin
y
/
=
y +
_
x
2
y
2
x
es homognea. En efecto, si denimos
f (x, y) =
y +
_
x
2
y
2
x
entonces, para cada > 0,
f (x, y) =
y +
_
(x)
2
(y)
2
x
=
y +
_

2
(x
2
y
2
)
x
=
y +
_
x
2
y
2
x
= f (x, y).
Para resolver la ecuacin, hacemos el cambio z = y/x. El segundo miembro de la
ecuacin quedara as:
y +
_
x
2
y
2
x
=
xz +
_
x
2
(xz)
2
x
=
xz +
_
x
2
(1 z
2
)
x
= z +
_
1 z
2
.
Sustituyendo en la ecuacin diferencial, resulta

z + xz
/
=

z +
_
1 z
2

dz
dx
=

1 z
2
x
.
La ecuacin obtenida es de variables separables, por lo que podemos resolverla me-
diante integracin:
dz
dx
=

1 z
2
x

_
dz

1 z
2
=
_
dx
x
arc sen(z) = ln(x) +C z = sen(ln(x) +C)
(ntese que se ha supuesto x > 0 para que ln(x) tenga sentido). Por ltimo, deshace-
mos el cambio z = y/x para obtener la solucin general:
y = x sen(ln(x) + C).
El cdigo Sage para resolver la ecuacin diferencial es:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == (y+sqrt(x^2-y^2))/x
sage: desolve(ec , y)
x == c*e^(x*arcsin(y(x)/x)/sqrt(x^2))
16 Ecuaciones diferenciales de primer orden
En este caso, la solucin obtenida viene dada en forma implcita:
x = c e
x arcsen
_
y
x
_
/

x
2
Suponiendo que x > 0, la expresin anterior puede simplicarse:
x = c e
arcsen
_
y
x
_
arcsen
_
y
x
_
= ln
_
x
c
_
y = x sen(ln(x) + C),
donde C = ln(c). Si queremos que Sage imponga de antemano la condicin x > 0,
podemos usar el comando assume:
sage: var(x)
sage: assume(x>0) # suponemos que x>0
sage: y = function(y, x)
sage: ec = diff(y, x) == (y+sqrt(x^2-y^2))/x
sage: desolve(ec , y)
c*x == e^( arcsin(y(x)/x))
En el clculo de la solucin hemos supuesto que x > 0. Qu ocurre en caso
contrario? En primer lugar, notemos que el caso x = 0 no tiene cabida, ya que la
funcin que dene el segundo miembro de la ecuacin diferencial no est denida en
x = 0. Supongamos pues que x < 0; en tal caso, cambiamos de signo ambos miembros
de la ecuacin y tenemos en cuenta que x > 0:
dz
dx
=

1 z
2
x

_
dz

1 z
2
=
_
dx
x
arc sen(z) = ln(x) + C.
Cambiando de signo y renombrando la constante de integracin, obtenemos:
z = sen(ln(x) + C) y = x sen(ln(x) + C).
Si no queremos preocuparnos del signo de x, es prctica habitual denir
_
dx
x
= ln [x[.
De esta manera, podemos considerar la siguiente expresin de la solucin general:
y = x sen(ln [x[ + C),
que es vlida independientemente del signo de x.
Ejemplo 2.7. La ecuacin diferencial
y
/
=
x + y 2
x y + 4
2.3 Ecuaciones lineales 17
no es homognea:
f (x, y) =
x + y 2
x y + 4
,=
x + y 2
x y + 4
= f (x, y).
Observemos que la condicin de homogeneidad falla debido a los trminos indepen-
dientes del numerador y el denominador de la funcin f (x, y): si dichos trminos
no existieran, la ecuacin s que sera homognea. Esto nos da la idea de buscar un
cambio de variables que elimine dichos trminos.
Geomtricamente, podemos interpretar el numerador y el denominador de f (x, y)
como las rectas de ecuaciones x + y 2 = 0 y x y + 4 = 0, respectivamente. Dichas
rectas se cortan en el punto (1, 3) (que se obtiene resolviendo el sistema dado por
las ecuaciones de ambas rectas). Mediante el cambio de variables
t = x (1) = x + 1, z = y 3,
trasladamos el punto (1, 3) al origen (0, 0). La ecuacin resultante va a ser homog-
nea.
En efecto, teniendo en cuenta que dx = dt y dy = dz, la ecuacin diferencial puede
escribirse como
dz
dt
=
t + z
t z
=
1 + z/t
1 z/t
.
Es fcil comprobar que esta ecuacin es homognea. Haciendo el cambio u = z/t,
resulta:
t
du
dt
+ u =
1 + u
1 u
t
du
dt
=
1 + u
2
1 u
.
Mediante separacin de variables, tenemos que
_
1 u
1 + u
2
du =
_
dt
t
arc tg(u)
1
2
ln(1 + u
2
) = ln(t) + C.
Deshaciendo los cambios, obtenemos la solucin general en forma implcita:
arc tg
_
y 3
x + 1
_

1
2
ln
_
1 +
_
y 3
x + 1
_
2
_
= ln(x + 1) + C.
2.3. Ecuaciones lineales
Una ecuacin diferencial de primer orden es lineal si puede escribirse en la forma
y
/
= a(x)y + b(x)
para ciertas funciones a(x) y b(x). Cuando b(x) 0 la ecuacin es de variables sepa-
rables y se denomina homognea; en caso contrario, la ecuacin se dice completa.
El proceso de resolucin de una ecuacin lineal consta de dos etapas:
18 Ecuaciones diferenciales de primer orden
Clculo de la solucin general y
H
(x, C) de la ecuacin homognea asociada:
y
/
= a(x)y.
Determinacin de una solucin particular y
P
(x) de la ecuacin completa.
Veamos en detalle dicho proceso. En primer lugar, resolvemos la ecuacin homo-
gnea asociada, que es de variables separables:
dy
dx
= a(x)y
_
dy
y
=
_
a(x) dx ln(y) = A(x) + c,
siendo A(x) una primitiva de a(x); despejando la variable y obtenemos la solucin
general de la ecuacin homognea:
y
H
(x, C) = Ce
A(x)
,
(ntese que la constante C sustituye a e
c
en este ltimo paso).
Para determinar una solucin particular de la ecuacin completa utilizaremos el
mtodo de variacin de la constante. Dicho mtodo se basa en construir una solucin
y
P
(x) con la misma estructura que y
H
(x, C), donde se sustituye la constante arbitraria
C por una funcin C(x):
y
P
(x) = C(x)e
A(x)
.
A continuacin, se determina C(x) imponiendo que y
P
(x) sea solucin de la ecuacin
completa:
y
/
P
= a(x)y
P
+ b(x) C
/
(x)e
A(x)
+ A
/
(x)C(x)e
A(x)
= a(x)C(x)e
A(x)
+ b(x);
teniendo en cuenta que A
/
(x) = a(x), resulta:
C
/
(x) = b(x)e
A(x)
C(x) =
_
b(x)e
A(x)
dx
(ntese que este ltimo paso no hay que aadir una constante de integracin, ya que
slo necesitamos una solucin particular). Finalmente, la solucin particular buscada
es
y
P
=
_
_
b(x)e
A(x)
dx
_
e
A(x)
.
Una vez calculadas y
H
(x, C) e y
P
(x), la solucin general de la ecuacin completa
es
y y(x, C) = y
H
(x, C) + y
P
(x).
Observacin. En efecto, teniendo en cuenta que y
H
e y
P
verican, respectivamente,
las igualdades y
/
H
= a(x)y
H
e y
/
P
= a(x)y
P
+ b(x), tenemos que
y
/
= y
/
H
+ y
/
P
= a(x)y
H
+ a(x)y
P
+ b(x) = a(x)(y
H
+ y
P
) + b(x) = a(x)y + b(x),
2.3 Ecuaciones lineales 19
lo que signica que y = y
H
+ y
P
es solucin de la ecuacin completa; adems, al ser
y
H
una familia uniparamtrica de soluciones, y tambin lo es. Para probar que se trata
de la solucin general, veamos que cualquier solucin y de la ecuacin completa es
de la forma y
H
+ y
P
, para una cierta solucin y
H
de la ecuacin homognea. Si y es
cualquier solucin de la forma y
H
+ y
P
, se tiene que
y
/
= a(x) y + b(x)
y
/
= a(x)y + b(x)
_
y
/
y
/
= a(x) y a(x)y ( y y)
/
= a(x)( y y).
Esto muestra que y y es una solucin de la ecuacin homognea, que llamaremos
y
H
. Por tanto,
y y = y
H
y = y + y
H
= (y
H
+ y
P
) + y
H
= (y
H
+ y
H
) + y
P
,
donde y
H
+ y
H
es solucin de la ecuacin homognea (esto se comprueba fcilmente).
Hemos demostrado as que y es de la forma requerida.
Recapitulando, para calcular la solucin general de una ecuacin lineal basta con
calcular la solucin general de la ecuacin homognea asociada (que siempre es de
variables separables) y sumarle a sta una solucin cualquiera de la ecuacin comple-
ta.
Ejemplo 2.8. Consideremos la ecuacin lineal
y
/
=
y
x
+ ln(x),
donde a(x) = 1/x y b(x) = ln(x). Primero, calculamos la solucin general de la
ecuacin homognea asociada:
dy
dx
=
y
x

_
dy
y
=
_
dx
x
ln(y) = ln(x) + c y
H
(x, C) = Cx.
A continuacin, buscamos una solucin particular de la forma
y
P
= C(x)x,
donde ahora C(x) representa una funcin a determinar; para ello, sustituimos y
P
en
la ecuacin completa:
y
/
P
=
y
P
x
+ ln(x) C
/
(x)x +

C(x) =

C(x)x
x
+ ln(x)
C
/
(x) =
ln(x)
x
C(x) =
1
2
ln
2
(x).
20 Ecuaciones diferenciales de primer orden
Sustituyendo en y
P
= C(x)x se determina una solucin particular de la ecuacin
completa:
y
P
=
x
2
ln
2
(x).
Finalmente, la solucin general de la ecuacin completa ser
y = Cx +
x
2
ln
2
(x).
Sage calcula de forma directa la solucin general de la ecuacin:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == y/x + log(x)
sage: desolve(ec , y)
1/2*( log(x)^2 + 2*c)*x
Ejemplo 2.9. Resolvamos la ecuacin lineal
y
/
= y + cos(x),
en la que a(x) = 1 y b(x) = cos(x). En primer lugar estudiamos la ecuacin homog-
nea asociada:
dy
dx
= y
_
dy
y
=
_
dx ln(y) = x + c y = Ce
x
.
A continuacin, buscamos una solucin particular de la forma
y
P
= C(x)e
x
.
Como y
/
P
= C
/
(x)e
x
+ C(x)e
x
, sustituyendo en la ecuacin completa obtenemos
y
/
P
= y
P
+ cos(x) C
/
(x)e
x
+

C(x)e
x
=

C(x)e
x
+ cos(x) C
/
(x) = e
x
cos(x).
Integrando por partes, resulta
C(x) =
sen(x) cos(x)
2
e
x
.
Por tanto, una solucin particular es
y
P
= C(x)e
x
=
sen(x) cos(x)
2
e
x
e
x
=
sen(x) cos(x)
2
.
Finalmente, la solucin general de la ecuacin ser
y = Ce
x
+
sen(x) cos(x)
2
.
Aqu est el cdigo Sage para resolver la ecuacin:
2.3 Ecuaciones lineales 21
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == y + cos(x)
sage: desolve(ec , y)
1/2*(( sin(x) - cos(x))*e^(-x) + 2*c)*e^x
Si queremos una expresin ms simplicada del resultado, podemos utilizar el co-
mando expand en la ltima lnea del cdigo:
sage: expand(desolve(ec, y))
c*e^x + 1/2* sin(x) - 1/2* cos(x)
Ejemplo 2.10. Consideremos la ecuacin diferencial de aspecto rocambolesco
dy
dx
=
1
x(2 + cos(y)) + e
2y+sen(y)
,
que no se ajusta a ninguno de los tipos estudiados hasta ahora. Sin embargo, si inver-
timos ambos miembros, obtenemos
dx
dy
= (2 + cos(y))x + e
2y+sen(y)
,
que puede verse como una ecuacin lineal si consideramos a x como variable de-
pendiente, a y como variable independiente, y denimos a(y) = 2 + cos(y) y b(y) =
e
2y+sen(y)
.
La solucin general de la ecuacin homognea asociada,
dx
H
dy
= (2 + cos(y))x
H
,
se obtiene mediante separacin de variables:
x
H
= Ce
2y+sen(y)
.
Buscamos entonces una solucin particular de la forma
x
P
= C(y)e
2y+sen(y)
.
Como
dx
P
dy
=
_
C
/
(y) + (2 + cos(y))C(y)
_
e
2y+sen(y)
,
sustituyendo en la ecuacin completa resulta
_
C
/
(y) + (2 + cos(y))C(y)
_
e
2y+sen(y)
= (2 + cos(y))C(y)e
2y+sen(y)
+ e
2y+sen(y)
,
de donde
C
/
(y)e
2y+sen(y)
= e
2y+sen(y)
C
/
(y) = 1 C(y) = y.
22 Ecuaciones diferenciales de primer orden
Por tanto, una solucin particular es
x
P
(y) = ye
2y+sen(y)
.
La solucin general de la ecuacin ser entonces
x = (y + C)e
2y+sen(y)
,
que podemos interpretar como la solucin general en forma implcita de la ecuacin
original.
Vamos a concluir esta seccin con el estudio de una clase importante de ecuaciones
no lineales que pueden transformarse en lineales mediante un cambio de variables:
las ecuaciones de Bernoulli. Una ecuacin de Bernoulli es de la forma
y
/
= a(x)y + b(x)y

,
donde R. Observemos que hay dos casos triviales, que corresponden a los valores
= 0 y = 1:
= 0 y
/
= a(x)y + b(x) (lineal),
= 1 y
/
= a(x)y + b(x)y = (a(x) + b(x))y (variables separadas).
En el resto de casos (salvo, por supuesto, que b(x) 0), la ecuacin de Bernoulli no
es lineal.
Supondremos en lo que sigue que ,= 0 y ,= 1. Si multiplicamos ambos miem-
bros de la ecuacin por y

, resulta
y

y
/
= a(x)y
1
+ b(x).
Teniendo en cuenta que (y
1
)
/
= (1 )y

y
/
, multiplicando por 1 la ecuacin
anterior obtenemos
(y
1
)
/
= (1 )a(x)y
1
+ (1 )b(x).
Si denimos z = y
1
, se obtiene la siguiente ecuacin lineal:
z
/
= a(x)z +

b(x),
donde a(x) = (1 )a(x) y

b(x) = (1 )b(x).
En resumen, podemos transformar la ecuacin de Bernoulli en una ecuacin de
tipo lineal mediante el cambio de variable dependiente dado por
z = y
1
,
supuesto ,= 0 y ,= 1.
2.4 Ecuaciones exactas 23
Ejemplo 2.11. Consideremos la ecuacin diferencial
xy
/
+ y = x
4
y
3
y
/
=
y
x
+ x
3
y
3
,
que es de Bernoulli con = 3. Hagamos el cambio
z = y
1
= y
2
z
/
=
dz
dx
= 2y
3
y
/
.
Multiplicando la ecuacin por 2y
3
, resulta
2y
3
y
/
=
2
x
y
2
2x
3
z
/
=
2
x
z 2x
3
.
La ecuacin lineal resultante puede resolverse mediante el mtodo de variacin de la
constante. La solucin general es
z = Cx
2
x
4
.
Finalmente, deshacemos el cambio z = y
2
:
y
2
= Cx
2
x
4
y
2
=
1
Cx
2
x
4
.
Sage es capaz de resolver directamente una ecuacin de Bernoulli:
sage: var(x)
sage: y = function(y, x)
sage: ec = x*diff(y, x) + y == x^4*y^3
sage: desolve(ec , y)
1/( sqrt(-x^2 + c)*x)
2.4. Ecuaciones exactas
Una ecuacin en forma diferencial
M(x, y) dx + N(x, y) dy = 0
es exacta si se verica la condicin
M
y
=
N
x
.
En tal caso, la solucin general de la ecuacin viene dada por la expresin
E(x, y) = C,
24 Ecuaciones diferenciales de primer orden
donde E(x, y) es una solucin del sistema
_

_
E
x
= M(x, y),
E
y
= N(x, y).
Se dice que la funcin E(x, y) es un potencial asociado al campo vectorial M(x, y) +
N(x, y).
Observacin. La terminologa usada en esta seccin proviene de la Fsica (vase la
seccin 2.7.2). En efecto, el campo vectorial

F(x, y) = M(x, y) + N(x, y) es conserva-


tivo si se verica que
M
y
=
N
x
, lo que coincide con la condicin de exactitud. Todo
campo conservativo deriva de un potencial, esto es, existe una funcin potencial E(x, y)
tal que

F puede expresarse como el gradiente de E:

F(x, y) =

E(x, y) M(x, y) + N(x, y) =


E
x
+
E
y
.
Igualando componentes, se deducen las ecuaciones para determinar el potencial:
E
x
= M(x, y),
E
y
= N(x, y).
Observacin. Supongamos que y(x) verica que E(x, y(x)) = C. Derivando respecto
a x, y aplicando la regla de la cadena, se obtiene:
d
dx
E(x, y(x)) = 0
E
x
(x, y(x)) +
E
y
(x, y(x))
dy
dx
= 0.
Usando las igualdades
E
x
= M y
E
y
= N, resulta:
M(x, y(x)) + N(x, y(x))
dy
dx
= 0 M(x, y(x)) dx + N(x, y(x)) dy = 0.
Esto prueba que y(x) es solucin de la ecuacin diferencial. Bajo ciertas hiptesis de
regularidad, puede demostrarse la existencia de una funcin potencial E(x, y).
Ejemplo 2.12. Resolvamos la ecuacin diferencial
2xy dx + (x
2
1) dy = 0.
En este caso, M(x, y) = 2xy y N(x, y) = x
2
1. Derivando, obtenemos
M
y
=

y
(2xy) = 2x y
N
x
=

y
(x
2
1) = 2x,
2.4 Ecuaciones exactas 25
lo que demuestra que la ecuacin es exacta.
Para calcular un potencial, hemos de resolver el sistema
_

_
E
x
= 2xy M(x, y),
E
y
= x
2
1 N(x, y).
Integrando respecto de x en la primera ecuacin, resulta:
E(x, y) =
_
E
x
dx =
_
2xy dx = y
_
2x dx = x
2
y + g(y).
Observemos que al integrar la funcin de dos variables E(x, y) respecto de la variable
x, la constante de integracin que aparece no es realmente una constante, sino una
funcin de la variable y; en efecto, para cualquier funcin g(y) se verica que

x
(x
2
y + g(y)) =

x
(x
2
y) +

x
g(y) = 2xy + 0 = 2xy.
A continuacin, derivamos la expresin obtenida para E(x, y) respecto de la varia-
ble y:
E
y
=

y
(x
2
y + g(y)) = x
2
+ g
/
(y),
y sustituimos en la segunda ecuacin del sistema:

x
2
+ g
/
(y) =

x
2
1 g
/
(y) = 1 g(y) =
_
(1)dy = y.
Por tanto, una funcin potencial viene dada por
E(x, y) = x
2
y y = (x
2
1) y.
La solucin general de la ecuacin diferencial ser entonces
E(x, y) = C (x
2
1) y = C y =
C
x
2
1
.
En el desarrollo anterior, para calcular el potencial E(x, y) hemos partido de la
primera ecuacin. Vamos a ver qu sucede si comenzamos integrando en la segunda
ecuacin:
E(x, y) =
_
E
y
dy =
_
(x
2
1) dy = (x
2
1)
_
dy = (x
2
1)y + h(x).
Derivando respecto de x y sustituyendo en la primera ecuacin, resulta:

2xy + h
/
(x) =

2xy h
/
(x) = 0 h(x) = c,
26 Ecuaciones diferenciales de primer orden
donde c puede ser cualquier constante; tomemos c = 0, y as h(x) = 0. El potencial es
entonces E(x, y) = (x
2
1) y y la solucin general (x
2
1) y = C. Obtenemos pues el
mismo resultado que en la primera parte del ejemplo, como era de esperar.
Podemos resolver la ecuacin usando Sage si la escribimos en forma normal:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == -2*x*y/(x^2-1)
sage: desolve(ec , y)
c/(x^2 - 1)
Ejemplo 2.13. Sea la ecuacin diferencial
(sen(xy) + xy cos(xy)) dx + x
2
cos(xy) dy = 0.
Llamemos M(x, y) = sen(xy) + xy cos(xy) y N(x, y) = x
2
cos(xy)dy, y notemos que
M
y
= x cos(xy) x
2
y sen(xy) + x cos(xy)
N
x
= 2x cos(xy) + x
2
y sen(xy)
_

M
y
=
N
x
,
lo que prueba que la ecuacin es exacta.
Para calcular el potencial E(x, y) consideramos el sistema de ecuaciones
_

_
E
x
= sen(xy) + xy cos(xy) M(x, y),
E
y
= x
2
cos(xy) N(x, y).
En este caso es ms sencillo integrar primero la segunda ecuacin:
E(x, y) =
_
E
y
dy =
_
x
2
cos(xy) dy = x
2
_
cos(xy) dy = x sen(xy) + g(x).
Derivando respecto de x, resulta:
E
x
= sen(xy) + xy cos(xy) + g
/
(x).
Ahora sustituimos la expresin anterior en la primera ecuacin:

sen(xy) +

xy cos(xy) + g
/
(x) =

sen(xy) +

xy cos(xy) g
/
(x) = 0 g(x) = c,
siendo c una constante arbitraria. Tomando c = 0, obtenemos g(x) = 0. As pues, un
potencial es
E(x, y) = x sen(xy),
2.4 Ecuaciones exactas 27
y la solucin general de la ecuacin diferencial, en forma implcita, viene dada por
x sen(xy) = C.
Tambin Sage es capaz de resolver esta ecuacin, si previamente la hemos escrito
en forma normal:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == -(sin(x*y)+x*y*cos(x*y))/(x^2* cos(x*y))
sage: desolve(ec , y)
x*sin(x*y(x)) == c
En caso de que Sage no pueda obtener una solucin de forma directa, cabe la po-
sibilidad de realizar todo el proceso de resolucin. Vamos a ilustrarlo con la ecuacin
del ejemplo.
En primer lugar, denimos las funciones M(x, y) y N(x, y), y comprobamos la
condicin de exactitud:
sage: var(x, y)
sage: # definimos M y N
sage: M = sin(x*y)+x*y*cos(x*y)
sage: N = x^2* cos(x*y)
sage: # comprobamos la exactitud
sage: diff(M, y)-diff(N, x)
0
A continuacin resolvemos la ecuacin
E
x
= M(x, y) mediante integracin:
sage: # hacemos la integral de M respecto de x
sage: # para calcular el potencial E
sage: E = integral(M, x); expand(E)
x*sin(x*y)
Como Sage ha calculado slo la primitiva ms simple, aadimos una funcin depen-
diente de la variable y:
sage: # sumamos una "constante" dependiente de y
sage: g = function(g, y)
sage: EE = E + g; expand(EE)
x*sin(x*y) + g(y)
A continuacin, derivamos la expresin obtenida respecto de y e igualamos a N(x, y):
sage: # derivamos respecto de y e igualamos a N
sage: ec = diff(EE, y) == N; expand(ec)
x^2*cos(x*y) + D[0](g)(y) == x^2*cos(x*y)
Calculamos g(y) despejando e integrando:
sage: # despejamos g (y)
sage: dg = solve(ec, diff(g,y)); dg
[D[0](g)(y) == 0]
sage: # integramos g (y) respecto de y
sage: g = integrate(dg[0]. rhs(), y); g
0
28 Ecuaciones diferenciales de primer orden
(ntese que dg representa una ecuacin; para considerar su segundo miembro, que es
el valor obtenido para g(y), usamos la notacin dg[0].rhs()
1
). Por ltimo, denimos
el potencial E(x, y):
sage: # definimos el potencial
sage: E = E + g; expand(E)
x*sin(x*y)
2.5. Factores integrantes
Consideremos una ecuacin diferencial de la forma
M(x, y)dx + N(x, y)dy = 0.
En el caso en que la ecuacin sea exacta, en el apartado anterior hemos estudiado
cmo determinar su solucin general mediante el uso de una funcin potencial.
Qu podemos hacer en caso de que la ecuacin no sea exacta? Observemos que
al multiplicar la ecuacin por una funcin r(x, y) no idnticamente nula, se obtiene
una ecuacin equivalente:
r(x, y)M(x, y)dx + r(x, y)N(x, y)dy = 0,
que podemos escribir como

M(x, y)dx +

N(x, y)dy = 0,
donde

M(x, y) = r(x, y)M(x, y) y

N(x, y) = r(x, y)N(x, y). Si conseguimos determi-
nar r(x, y) para que se verique


M
y
=

N
x
,
la nueva ecuacin ser exacta y podremos resolverla. Una funcin r(x, y) con dicha
propiedad se denomina factor integrante.
1
Podemos dar una explicacin un poco ms tcnica de la notacin. El valor dg representa una lista
o conjunto de ecuaciones que, en este ejemplo, consta de un nico elemento, ya que slo estamos
considerando una ecuacin. Los elementos de una lista se enumeran comenzando con el ndice 0, por
eso dg[0] hace referencia al primer elemento de la lista. En lenguaje informtico, dg[0] es un objeto,
esto es, una estructura con determinados contenidos y aplicaciones (o mtodos) asociadas a ella. Para
acceder a los contenidos de un objeto se usa un punto (.) detrs del nombre del objeto. De esta forma,
dg[0].rhs denota un mtodo que devuelve el miembro de la derecha (rhs: right hand side, en ingls)
de la ecuacin representada por dg[0]; los parntesis vacos hacen que se ejecute dicho mtodo sin
ningn argumento extra. En general, si queremos ver los mtodos asociados a un objeto en Sage, basta
con escribir el nombre del objeto seguido de un punto y pulsar la tecla de tabulacin.
2.5 Factores integrantes 29
Ejemplo 2.14. Consideremos la ecuacin
(x + y
2
) dx 2xy dy = 0.
Denamos M(x, y) = x + y
2
y N(x, y) = 2xy, y notemos que
M
y
=

y
(x + y
2
) = 2y ,= 2y =

x
(2xy) =
N
x
,
lo que indica que la ecuacin no es exacta.
La funcin
r(x, y) =
1
x
2
es un factor integrante. En efecto, si denimos

M(x, y) = r(x, y)M(x, y) =


x + y
2
x
2
,

N(x, y) = r(x, y)N(x, y) =
2y
x
,
se verica que


M
y
=

y
_
x + y
2
x
2
_
=
2y
x
2
=

x
_

2y
x
_
=

N
x
.
Por tanto, la ecuacin diferencial

M(x, y)dx +

N(x, y)dy = 0
x + y
2
x
2
dx
2xy
x
2
dy = 0
x + y
2
x
2
dx
2y
x
dy = 0
es exacta, y podemos resolverla mediante el mtodo descrito en la seccin anterior.
Una funcin potencial es E(x, y) = ln(x) y
2
/x, por lo que la solucin general ser
ln(x)
y
2
x
= C y
2
= x(ln(x) C).
Est claro que la cuestin fundamental en este contexto es: cmo podemos deter-
minar un factor integrante? La respuesta es que no hay ningn mtodo general que
nos permita calcular factores integrantes: slo podemos dar una respuesta parcial al
problema. Notemos que el intento de calcular el factor integrante r(x, y) directamente
a partir de la ecuacin de exactitud


M
y
=

N
x


y
(rM) =

x
(rN)
nos lleva a la ecuacin en derivadas parciales
M
r
y
+ r
M
y
= N
r
x
+ r
N
x
,
30 Ecuaciones diferenciales de primer orden
cuya resolucin slo podremos realizarla en casos muy sencillos.
El mtodo usual para buscar un factor integrante es mediante prueba y error. Por
supuesto, no se trata de probar todas las funciones posibles para ver si alguna de ellas
es un factor integrante (tarea, por otro lado, imposible), sino que debemos restringir
nuestra bsqueda a determinados tipos de funciones. Ms concretamente, se intentar
buscar el factor integrante de la forma r(x, y) = ((x, y)), donde es una funcin de
una variable y (x, y) expresa una relacin algebraica simple entre las variables x e y.
La eleccin de (x, y) se hace mediante prueba y error, mientras que se determina
imponiendo la condicin de exactitud a la ecuacin modicada. Tpicos candidatos a
factor integrante son:
r(x, y) = (x),
r(x, y) = (y),
r(x, y) = (x y),
r(x, y) = (x
n
y
m
), n, m Z,
r(x, y) = (xy),
r(x, y) = (x/y),
r(x, y) = (x
n
y
m
), n, m Z,
.
.
.
La idea subyacente a este procedimiento se basa en simplicar dentro de lo posible
las derivadas parciales del factor integrante.
Cuando el factor integrante buscado depende tan slo de una de las variables,
puede darse una frmula explcita para calcularlo. Por ejemplo, si r(x, y) = (x) se
tiene que
r
x
=
/
(x),
r
y
= 0.
Imponiendo la condicin de exactitud, resulta que
M
r
y
+ r
M
y
= N
r
x
+ r
N
x
(x)
M
y
= N
/
(x) + (x)
N
x
,
de donde obtenemos la ecuacin de variables separadas

/
(x) = g(x)(x),
siendo
g(x) =
1
N
_
M
y

N
x
_
.
Para que este proceso tenga sentido, el miembro de la derecha de la expresin anterior
debe ser una funcin que slo dependa de la variable x. Resolviendo la ecuacin,
2.5 Factores integrantes 31
obtenemos la expresin del factor integrante:
(x) = e
_
g(x)dx
.
Por supuesto, el clculo explcito de (x) slo podr llevarse a cabo si sabemos calcu-
lar una primitiva de la funcin g(x).
Si el factor integrante slo depende de la variable y, razonando de modo anlogo
llegamos a la siguiente expresin:
(y) = e
_
h(y)dy
,
donde
h(y) =
1
M
_
M
y

N
x
_
.
Ejemplo 2.15. Consideremos la ecuacin del ejemplo anterior:
(x + y
2
) dx 2xy dy = 0,
y veamos cmo se obtiene el factor integrante r(x, y) = x
2
.
Comencemos probando con un factor integrante de la forma r(x, y) = (x), esto
es, la funcin r(x, y) depender nicamente de la variable x. Entonces el candidato a
factor integrante ser de la forma
(x) = e
_
g(x)dx
,
donde
g(x) =
1
N
_
M
y

N
x
_
=
1
2xy
(2y (2y)) =
2
x
.
Por tanto, el factor integrante buscado ser
(x) = e

_
2
x
dx
= e
2 ln(x)
= e
ln(x
2
)
= x
2
.
En el siguiente ejemplo se presenta un caso en que el primer candidato a factor
integrante no es vlido.
Ejemplo 2.16. Sea la ecuacin diferencial
(2xy
2
3y
3
) dx + (7 3xy
2
) dy = 0,
que no es exacta (como puede comprobarse fcilmente).
Busquemos un factor integrante de la forma r(x, y) = (x). En tal caso,
g(x) =
1
N
_
M
y

N
x
_
=
1
7 3xy
2
_
(4xy 9y
2
) (3y
2
)
_
=
2y
7 3xy
2
(2x 3y).
32 Ecuaciones diferenciales de primer orden
Esta expresin no tiene sentido, ya que el segundo miembro depende explcitamente
tambin de la variable y. En consecuencia, no es posible utilizar un factor integrante
que slo dependa de x.
Si probamos con un factor del tipo r(x, y) = (y), obtenemos
h(y) =
1
M
_
M
y

N
x
_
=
2y
2xy
2
3y
3
(2x 6y) =
2
y
.
La expresin obtenida slo depende de la variable y, por lo que podemos considerar
el factor integrante
(y) = e
_
h(y)dy
= e

2
y
dy
= y
2
.
Resolvamos ahora la ecuacin diferencial
(2xy
2
3y
3
)y
2
dx + (7 3xy
2
)y
2
dy = 0 (2x 3y) dx + (7y
2
3x) dy = 0,
que es exacta. Un potencial es, en este caso, E(x, y) = x
2
3xy 7y
1
, y la solucin
general de la ecuacin diferencial es, por tanto,
x
2
3xy 7y
1
= C.
Finalizamos esta seccin con un ejemplo donde se juega con un factor integrante
algo ms complicado que los vistos en los ejemplos anteriores.
Ejemplo 2.17. Consideremos la ecuacin diferencial no exacta
(3y
2
x) dx + (2y
3
6xy) dy = 0.
La prueba con los candidatos usuales a factor integrante no da buen resultado. En este
caso, el factor integrante a buscar es de la forma r(x, y) = (x + y
2
). Consideremos
pues la ecuacin modicada
(3y
2
x)r(x, y) dx + (2y
3
6xy)r(x, y) dy = 0.
Teniendo en cuenta que
r
x
=
/
(x + y
2
),
r
y
= 2y
/
(x + y
2
),
la condicin de exactitud nos da
2y(3y
2
x)
/
(x + y
2
) + 6y(x + y
2
) = (2y
3
6xy)
/
(x + y
2
) 6y(x + y
2
),
de donde
4y(x + y
2
)
/
(x + y
2
) = 12y(x + y
2
) (x + y
2
)
/
(x + y
2
) = 3(x + y
2
).
2.6 Problemas de valor inicial 33
Como vemos, la ltima expresin obtenida es una ecuacin diferencial en x + y
2
. Si
llamamos z = x + y
2
, tenemos
z
/
(z) = 3(z)
_
d

= 3
_
dz
z
ln() = 3 ln(z) = ln(z
3
) (z) = z
3
.
Por tanto, el factor integrante buscado es
r(x, y) = (x + y
2
) = (x + y
2
)
3
.
La ecuacin exacta equivalente a considerar es, por tanto,
(3y
2
x)(x + y
2
)
3
dx + (2y
3
6xy)(x + y
2
)
3
dy = 0.
Una funcin potencial es E(x, y) = (x y
2
)(x + y
2
)
2
, as que la solucin general de
la ecuacin diferencial ser
x y
2
(x + y
2
)
2
= C.
2.6. Problemas de valor inicial
Hemos visto que la solucin general de una ecuacin diferencial de primer orden,
que supondremos escrita en forma normal:
y
/
= f (x, y),
depende de una constante arbitraria C, esto es, y y(x, C). En particular, la ecuacin
diferencial posee un nmero innito de soluciones, aunque todas ellas se diferencian
nicamente en el valor de la constante C.
Supongamos que estamos interesados en elegir, de entre todas las posibles solu-
ciones, aquella que en el punto a toma un cierto valor y
0
. En tal caso, estamos ante un
problema de valor inicial o problema de Cauchy:
_
y
/
= f (x, y), x [a, b],
y(a) = y
0
.
La condicin y(a) = y
0
se denomina condicin inicial. Bajo hiptesis adecuadas de
regularidad sobre la funcin f (x, y), puede demostrarse que el problema de valor ini-
cial posee una nica solucin. El valor correspondiente de la constante C se determina
imponiendo la condicin inicial en la solucin general; dicho de otro modo, hay que
resolver la ecuacin y(a, C) = y
0
.
34 Ecuaciones diferenciales de primer orden
Ejemplo 2.18. Consideremos el problema de valor inicial
_
y
/
= 2xy,
y(0) = 1.
La solucin general de la ecuacin y
/
= 2xy es, segn vimos en el ejemplo 2.3,
y(x, C) y = Ce
x
2
.
Imponiendo la condicin inicial, resulta:
y(0) = 1 Ce
0
2
= 1 C = 1.
Por tanto, la nica solucin del problema de valor inicial es
y = e
x
2
.
El siguiente cdigo resuelve el problema de valor inicial en Sage:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == 2*x*y
sage: sol = desolve(ec, y, ics=[0, 1]) # ics=[a, y(a)]
sage: sol
e^(x^2)
Es posible representar grcamente esta solucin de forma muy simple. Si, por ejem-
plo, queremos dibujarla en el intervalo [0, 1], hacemos:
sage: plot(sol , [0, 1])
para obtener el resultado de la gura 2.1.
No todo problema de valor inicial tiene solucin, como muestra el siguiente ejem-
plo.
Ejemplo 2.19. Consideremos la ecuacin de variables separables y
/
= x/y y calcu-
lemos su solucin general:
dy
dx
=
x
y
y dy = x dx
_
y dy =
_
x dx
y
2
2
=
x
2
2
+ c x
2
+ y
2
= 2c.
Esta solucin en forma implcita puede reescribirse como
x
2
+ y
2
= C,
donde C = 2c representa una constante arbitraria. Despejando la variable y, se obtie-
nen dos ramas de soluciones (gura 2.2):
y =
_
C x
2
, y =
_
C x
2
.
El correspondiente cdigo Sage para resolver la ecuacin es:
2.6 Problemas de valor inicial 35
Figura 2.1: Solucin del ejemplo 2.18 en el intervalo [0, 1].
x
1
1
0
-1
-1
y=1x
2
y
x
1
1
0
-1
-1
y=1x
2
y
Figura 2.2: Las dos ramas de solucin para C = 1, denidas en I = (1, 1).
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x) == -x/y
sage: desolve(ec , y)
-1/2*y(x)^2 == 1/2*x^2 + c
Como vemos, la solucin viene dada en forma implcita. Si queremos despejar la
solucin y, primero guardamos el resultado anterior en una variable, que llamaremos
sol:
sage: sol = desolve(ec, y); sol
-1/2*y(x)^2 == 1/2*x^2 + c
A continuacin, usamos el comando solve para despejar y:
36 Ecuaciones diferenciales de primer orden
sage: solve(sol , y)
[y(x) == -sqrt(-x^2 - 2*c), y(x) == sqrt(-x^2 - 2*c)]
Tomemos la condicin inicial y(0) = 1, que implica C = 1. Debido a la situacin
del punto (0, 1) debemos tomar la primera rama, por lo que la solucin del problema
de valor inicial corresponde a la semicircunferencia superior: y =

1 x
2
. Dicha
solucin es regular en el intervalo I = (1, 1). En este caso, el problema posee una
nica solucin.
Razonando de manera anloga, la solucin del problema de valor inicial con condi-
cin inicial y(0) = 1 sera y =

1 x
2
, que es regular en el intervalo I = (1, 1).
Tambin en este caso la solucin del problema es nica.
Consideremos ahora la condicin inicial y(1) = 0, que tambin implica C = 1. En
este caso podramos tomar cualquiera de las dos ramas, ya que ambas pasan por el
punto (1, 0). Sin embargo, ninguna de ellas es solucin, ya que falla la derivabilidad
en x = 1. En efecto, la derivada de y es
y
/
(x) =
x

1 x
2
,
que slo est denida si x (1, 1). En consecuencia, el problema de valor inicial
correspondiente no tiene solucin.
Aun en el caso de que un problema de valor inicial tenga solucin, sta no tiene
por qu ser nica.
Ejemplo 2.20. Sea el problema de valor inicial
_
y
/
= (x + 1)y
2/3
,
y(1) = 0.
Podemos comprobar fcilmente que la funcin
y(x) =
_
1
3
_
x
2
2
+ x
3
2
__
3
es solucin del problema. Por otra parte, notemos que la funcin idnticamente nula
y(x) 0 tambin es solucin. Tenemos pues dos soluciones distintas del mismo
problema de valor inicial.
En este caso, Sage slo determina la solucin no nula:
sage: var(x)
sage: y = function(y,x)
sage: ec = diff(y,x) == (x+1)*y^(2/3)
sage: desolve(ec , y, ics =[1 ,0])
3*y(x)^(1/3) == 1/2*x^2 + x - 3/2
2.6 Problemas de valor inicial 37
Finalizamos esta seccin con un resultado fundamental de la teora de ecuaciones
diferenciales que nos permite dilucidar la existencia y unicidad de solucin local de
un problema de valor inicial.
Teorema (de existencia y unicidad). Si la funcin f (x, y) es continua en un entorno del
punto (x
0
, y
0
), entonces el problema de valor inicial
_
y
/
= f (x, y),
y(x
0
) = y
0
,
tiene alguna solucin local. Si adems existe
f
y
y es continua en un entorno de (x
0
, y
0
),
entonces la solucin del problema es nica.
Ejemplo 2.21. Consideremos de nuevo la ecuacin diferencial del ejemplo 2.19. En
este caso, la funcin f (x, y) es
f (x, y) =
x
y
,
que no es continua (de hecho, ni siquiera est denida) cuando y = 0.
Tomemos como condicin inicial y(0) = 1. Como la funcin f (x, y) es continua
en el punto (x
0
, y
0
) = (0, 1), el teorema asegura que el problema de Cauchy corres-
pondiente posee alguna solucin. Por otra parte, la derivada de f (x, y) respecto de la
variable y es
f
y
(x, y) =
x
y
2
,
que tambin es continua en (0, 1). En consecuencia, y segn el teorema, la solucin
del problema de Cauchy es nica. De hecho, vimos que dicha solucin era
y =
_
1 x
2
, x (1, 1).
Obsrvese que la solucin es local, ya que est denida solamente en el intervalo
(1, 1).
Consideremos ahora la condicin inicial y(1) = 0 y observemos que la funcin
f (x, y) no es continua en el punto (1, 0). Sin embargo, no podemos armar que el
problema carezca de solucin, ya que el teorema slo proporciona una condicin su-
ciente, pero no necesaria, para la existencia de solucin. Para determinar si hay o no
solucin tendramos que proceder como en el ejemplo 2.19, analizando directamente
el problema de Cauchy. En este caso el problema no tena solucin.
Ejemplo 2.22. Consideremos el problema de Cauchy del ejemplo 2.20. En este caso,
la funcin
f (x, y) = (x + 1)y
2/3
38 Ecuaciones diferenciales de primer orden
es continua en todo punto, por lo que el problema posee solucin. Sin embargo, no-
temos que
f
y
(x, y) =
2
3
(x + 1)y
1/3
=
2
3
x + 1
3

y
no es continua en (1, 0). No podemos por tanto aplicar el teorema para asegurar la
unicidad de solucin, sino que habra que analizar el problema como se hizo en el
ejemplo 2.19. De hecho, vimos que el problema de Cauchy posea dos soluciones
distintas.
2.7. Aplicaciones
2.7.1. Espejos parablicos
Nos planteamos el problema de determinar la forma que debe tener un espejo
para que los rayos reejados por ste se concentren en un punto. Para simplicar el
problema, haremos las siguientes suposiciones:
1. El sistema est contenido en el plano x-y.
2. Los rayos se concentran en el origen de coordenadas.
3. Los rayos incidentes son paralelos al eje y.
4. La forma del espejo viene dada por una curva del tipo y(x).
En la gura 2.3 se representa un esquema del planteamiento geomtrico del problema.
En el caso de un espejo plano, un rayo que incide con ngulo se reeja con el
mismo ngulo. Cuando el espejo es curvo se cumple una ley de reexin anloga,
considerando el ngulo que forma el rayo con la recta tangente a la curva que dene
el espejo en el punto donde incide el rayo. Esta ley fsica es la que vamos a utilizar
para obtener una ecuacin diferencial asociada al problema.
Consideremos pues la gura 2.4, donde un rayo paralelo al eje y se reeja en el
punto (x, y) del espejo; representa el ngulo de incidencia del rayo, que coincide
con el ngulo del rayo reejado; es el ngulo que forma el rayo reejado con el eje
x; es el ngulo que forma la recta tangente a la curva en el punto (x, y) con el eje x.
A partir del tringulo formado por el origen, el punto (x, y) y el corte de la recta
tangente a la curva con el eje y (sombreado en la gura 2.4), podemos determinar la
relacin que existe entre y :
+ +
_
+

2
_
= =

2
2.
2.7 Aplicaciones 39
x
y
Figura 2.3: Planteamiento del problema de los espejos parablicos.
y
x
0

(x,y)

y
x
Figura 2.4: Esquema del problema del espejo.
Considerando de nuevo el mismo tringulo, y teniendo en cuenta la denicin geo-
mtrica de la tangente de un ngulo, podemos escribir
tg() =
y
x
.
Por tanto,
y
x
= tg
_

2
2
_
= cotg(2).
40 Ecuaciones diferenciales de primer orden
Figura 2.5: Espejos parablicos y = x
2
1/4, y = x
2
+ 1/4.
Por otra parte, la derivada y
/
(x) se interpreta geomtricamente como la pendiente
de la recta tangente a la curva buscada en el punto (x, y), que es precisamente la
tangente del ngulo :
y
/
= tg().
Vemos en la gura 2.4 que
+ =

2
=

2
,
y por tanto
y
/
= tg
_

2

_
= cotg().
Podemos determinar la relacin existente entre cotg() y cotg(2):
cotg(2) =
cos(2)
sen(2)
=
cos
2
() sen
2
()
2 sen() cos()
=
cotg
2
() 1
2 cotg()
.
Combinando los resultados anteriores, obtenemos la siguiente ecuacin diferen-
cial:
(y
/
)
2
1
2y
/
=
y
x
.
Al despejar y
/
aparecen dos formas normales para la ecuacin:
x(y
/
)
2
2yy
/
x = 0 y
/
=
y +
_
x
2
+ y
2
x
, y
/
=
y
_
x
2
+ y
2
x
.
2.7 Aplicaciones 41
Es inmediato comprobar que las dos ecuaciones obtenidas son homogneas, as que
podemos resolverlas mediante el cambio z = y/x. En ambos casos, la solucin de la
ecuacin es la misma:
y = Cx
2

1
4C
,
donde, como es usual, C representa una constante arbitraria. En el caso en que C
sea positiva la solucin es una parbola convexa, mientras que si C es negativa la
parbola es cncava. En la gura 2.5 se representan los espejos que se obtienen para
C = 1.
2.7.2. Campos de fuerza conservativos
En este apartado vamos a motivar el estudio de las ecuaciones exactas, as como
de su mtodo de resolucin, mediante el anlisis de un problema de Fsica: el clculo
de las curvas equipotenciales de un campo de fuerzas conservativo.
Supongamos que en el plano x-y acta un campo de fuerzas vectorial de la forma

F(x, y) = P(x, y) + Q(x, y) (P(x, y), Q(x, y)),


donde y son los vectores de coordenadas unitarios ( = (1, 0), = (0, 1)), y P(x, y)
y Q(x, y) son funciones sucientemente regulares. Queremos desplazar una partcula
por el plano de forma que el campo de fuerzas no ejerza ningn trabajo sobre ella
en todos los puntos de la trayectoria. Las trayectorias que verican esta propiedad se
conocen con el nombre de curvas equipotenciales.
Sea y(x) la curva equipotencial buscada y sea el trabajo realizado por la fuerza

F. Si llamamos e al vector de desplazamiento de la partcula (vector tangente a la


trayectoria), el trabajo puede expresarse como un producto escalar de

F por e:
=

F e = |

F| |e| cos(

F,e).
Aqu cos(

F,e) representa el ngulo formado por los vectores

F ye, mientras que | |


es el mdulo del vector correspondiente. La condicin de que el trabajo sea nulo,
= 0, es equivalente a que cos(

F,e) = 0 o, lo que es lo mismo, a que los vectores

F y
e sean ortogonales:

F e. A su vez, esta condicin equivale a que el producto de las


pendientes determinadas por ambos vectores sea 1.
En un punto arbitrario (x, y(x)) de la curva equipotencial, la fuerza ejercida por el
campo viene dada por el vector

F(x, y(x)) = P(x, y(x)) + Q(x, y(x)),


cuya pendiente (supuesto P(x, y(x)) ,= 0), es
Q(x, y(x))
P(x, y(x))
.
42 Ecuaciones diferenciales de primer orden

F
e
(x,y)
Figura 2.6: Curva equipotencial, vector desplazamiento y vector fuerza.
Por otra parte, la pendiente del vector de desplazamientoe es simplemente y
/
(x). Por
tanto, la condicin

F e se escribe entonces como


y
/
(x) =
P(x, y(x))
Q(x, y(x))
,
sobre cada punto (x, y(x)) de la trayectoria. Escribiendo simplemente y en lugar de
y(x), la ecuacin anterior puede expresarse como
dy
dx
=
P(x, y)
Q(x, y)
o, en forma diferencial,
P(x, y)dx + Q(x, y)dy = 0.
Se dice que un campo de fuerzas

F es conservativo si deriva de un potencial, es
decir, si existe una funcin escalar E(x, y) tal que

E =

F,
donde

E es el vector gradiente de E,

E =
E
x
+
E
y
.
Esta condicin puede expresarse tambin en trminos de las componentes:
E
x
= P(x, y),
E
y
= Q(x, y).
2.7 Aplicaciones 43
Si el campo

F es conservativo, las curvas equipotenciales son precisamente las
curvas y(x) denidas de forma implcita por la ecuacin
E(x, y(x)) = C,
con C constante. En efecto, derivando implcitamente respecto de x en la ecuacin
anterior, se tiene que
0 =
d
dx
E(x, y(x)) =
E
x
(x, y(x)) + y
/
(x)
E
y
(x, y(x)) = P(x, y(x)) + Q(x, y(x))y
/
(x),
de donde deducimos que y(x) verica la ecuacin
P(x, y)dx + Q(x, y)dy = 0.
Ejemplo 2.23. Consideremos el campo de fuerzas gravitatorio

F(x, y) = (0, mg),


donde m representa la masa de una partcula que se mueve en un plano y g es la
constante gravitatoria. Las curvas equipotenciales son las soluciones de la ecuacin
diferencial
dy
dx
=
0
mg
= 0,
que son precisamente y(x) = C, con C constante. En este caso, las curvas equipoten-
ciales son rectas horizontales.
Vamos a llegar al mismo resultado mediante el uso de una funcin potencial. Para
ello, consideremos la funcin de energa potencial E(x, y) = mgy que, efectivamente,
es un potencial:

E = 0 + mg =

F.
Por tanto, las curvas equipotenciales son de la forma
E(x, y(x)) = C mgy(x) = C y(x) =
C
mg
C,
donde en el ltimo paso hemos renombrado la constante arbitraria C.
Una cuestin crucial es la siguiente: cmo determinar si un campo es conservati-
vo? Notemos que si el campo

F es conservativo entonces
P
y
=

2
E
y x
=

2
E
x y
=
Q
x

P
y
=
Q
x
.
Puede demostrarse (aunque eso est fuera del alcance de este curso) que, bajo de-
terminadas condiciones de regularidad sobre P(x, y) y Q(x, y) (que siempre se veri-
carn en los casos que trataremos), el recproco es asimismo cierto. En conclusin,
44 Ecuaciones diferenciales de primer orden
podemos armar que el campo

F es conservativo si y slo si se verica la igualdad
anterior:

F = P + Q es conservativo
P
y
=
Q
x
.
En el caso en que

F sea conservativo, para calcular una funcin potencial E debemos


resolver el siguiente sistema de ecuaciones en derivadas parciales:
_

_
E
x
= P(x, y),
E
y
= Q(x, y),
lo cual, en general, no ser posible salvo en casos muy sencillos.
Observacin. El signo negativo en la denicin de funcin potencial obedece, como
hemos visto, a consideraciones de tipo puramente fsico. Desde un punto de vista ma-
temtico, dicho signo es irrelevante: por eso en la denicin de exactitud que hicimos
en la seccin 2.4 tomamos M = P y N = Q.
En el siguiente ejemplo se ilustra el clculo de una funcin potencial.
Ejemplo 2.24. El campo de fuerzas

F(x, y) = x y
es conservativo, ya que
P
y
=

y
(x) = 0 =

x
(y) =
Q
x
.
Para calcular una funcin potencial, planteamos el sistema
_

_
E
x
= P(x, y) = (x) = x,
E
y
= Q(x, y) = (y) = y.
Tomemos una de las dos ecuaciones, por ejemplo la primera, e integremos respecto
de x:
E(x, y) =
_
E
x
dx =
_
x dx =
x
2
2
+ g(y).
Observemos que, al estar integrando la funcin de dos variables E(x, y) respecto de la
variable x, la constante de integracin que aparece no es realmente una constante,
sino una funcin de la variable y. En efecto, para cualquier funcin g(y) se verica

x
_
x
2
2
+ g(y)
_
= x
E
x
= x.
2.7 Aplicaciones 45
Para determinar g(y) recurrimos a la segunda ecuacin. Por una parte, derivando en
la expresin obtenida para E(x, y) respecto de y, obtenemos
E
y
=

y
_
x
2
2
+ g(y)
_
= g
/
(y).
x
y
E(x,y)=C

F
Figura 2.7: Curvas equipotenciales y campo de fuerzas del ejemplo 2.24.
Sustituyendo ahora en la segunda ecuacin, resulta
g
/
(y) = y g(y) =
_
y dy =
y
2
2
.
Como buscamos un valor particular de g(y), no aadimos constante de integracin
en el clculo anterior. Finalmente, el potencial buscado es
E(x, y) =
x
2
2
+
y
2
2
.
Las curvas equipotenciales son entonces las circunferencias de la forma
x
2
+ y
2
= C,
siendo C una constante arbitraria. En la gura 2.7 se representan las curvas equipo-
tenciales y el campo vectorial

F.
46 Ecuaciones diferenciales de primer orden
2.7.3. Calentamiento de edicios
Vamos a estudiar un modelo que describe la evolucin de la temperatura en el
interior de un edicio. Para ello, denotemos por T(t) dicha temperatura en el instante
de tiempo t. Supondremos que las variaciones de temperatura dependen de tres fac-
tores: la temperatura exterior, el calor generado en el interior del edicio y el efecto
del sistema de calefaccin o de aire acondicionado. De forma ms especca:
El calor producido por las personas, luces, maquinaria, etc. en el interior del
edicio causan un incremento de la temperatura que denotaremos por H(t),
siendo esta funcin no negativa.
Las variaciones de temperatura producidas por el sistema de calefaccin/refri-
geracin se representan mediante una funcin U(t), que ser positiva para la
calefaccin y negativa para el aire acondicionado.
Por ltimo, hay que considerar el efecto de la temperatura exterior T
e
(t) sobre
el edicio. Factores experimentales muestran que este efecto puede modelizarse
usando la ley del enfriamiento de Newton, que establece que el ritmo de cambio de
la temperatura T(t) es proporcional a la diferencia entre la temperatura exterior
T
e
(t) y la interior T(t).
Expresando en trminos matemticos los puntos anteriores, podemos considerar
la siguiente ecuacin diferencial de primer orden:
dT
dt
= k(T
e
(t) T(t)) + H(t) + U(t).
El ritmo de cambio de la temperatura T(t) se expresa mediante su derivada respecto
del tiempo,
dT
dt
. La constante de proporcionalidad k se supone positiva y depende de
las propiedades fsicas del edicio: nmero de puertas y ventanas, tipo de aislamiento,
etc.
Observacin. Respecto a las unidades de medida, supondremos que la temperatura
viene dada en grados Celsius (

C) y el tiempo en horas (h); en consecuencia, la va-


riacin de temperatura
dT
dt
se mide en

C/h. La constante k tiene como unidad h
1
.
En general, las funciones H(t) y U(t) se expresan en trminos de energa por unidad
de tiempo, kcal/h. Si embargo, multiplicando ambas cantidades por la capacidad ca-
lorca del edicio (cuyas unidades son

C/kcal), podemos suponer que tanto H(t)
como U(t) vienen dadas en

C/h.
Observacin. Supongamos que H(t) 0 y U(t) 0, por lo que la ecuacin se reduce
a
dT
dt
= k(T
e
(t) T(t))
2.7 Aplicaciones 47
(esta es la expresin de la ley de Newton). Cuando la temperatura exterior es mayor
que la interior, T
e
(t) T(t) > 0, se tiene que T
/
(t) > 0, lo que signica que T(t) es
una funcin creciente: la temperatura del edicio se incrementa. Si, por el contrario,
la temperatura exterior es menor que la interior, T
e
(t) T(t) < 0, entonces T
/
(t) < 0,
por lo que la temperatura del edicio disminuye.
Observacin. El valor K = 1/k se denomina constante de tiempo del edicio, y repre-
senta el tiempo que se necesita para que la temperatura del edicio cambia de forma
sustancial. Un valor tpico podra estar entre dos y cuatro horas, aunque puede ser
mucho menor si se abren las ventanas o se utilizan ventiladores; por el contrario, la
constante de tiempo puede ser mucho mayor si el edicio est bien aislado.
Si reescribimos la ecuacin de la siguiente forma:
dT
dt
= kT(t) + kT
e
(t) + H(t) + U(t),
queda claro que es de tipo lineal, por lo que podemos resolverla usando el mtodo
de variacin de la constante. En primer lugar, determinamos la solucin general de la
ecuacin homognea asociada:
dT
dt
= kT
_
dT
T
=
_
k dt ln(T) = kt + c T
H
(t, C) = Ce
kt
,
donde hemos sustituido e
c
por una constante arbitraria C. A continuacin, buscamos
una solucin particular de la forma T
P
(t) = C(t)e
kt
; sustituyendo en la ecuacin,
resulta:
C
/
(t)e
kt

kC(t)e
kt
=

kC(t)e
kt
+ kT
e
(t) + H(t) + U(t)
C
/
(t) = e
kt
(kT
e
(t) + H(t) + U(t)) C(t) =
_
e
kt
(kT
e
(t) + H(t) + U(t)) dt,
de donde
T
P
(t) = e
kt
_
e
kt
(kT
e
(t) + H(t) + U(t)) dt.
Por ltimo, la solucin general de la ecuacin completa ser
T(t, C) T(t) = e
kt
_
_
e
kt
(kT
e
(t) + H(t) + U(t)) dt + C
_
.
Para completar el modelo, es necesario conocer la temperatura inicial del edicio,
esto es, hay que considerar una condicin inicial de la forma
T(0) = T
0
,
donde T
0
es la temperatura del edicio en el instante inicial t = 0. Imponiendo esta
condicin inicial en la solucin general, es posible determinar el valor de la constante
de integracin C.
48 Ecuaciones diferenciales de primer orden
Figura 2.8: Temperatura interior: T(t). Temperatura exterior: T
e
(t).
Ejemplo 2.25. Consideremos un edicio en el que el ritmo de calor adicional H(t)

48

C/h es constante y no se usa calefaccin ni aire acondicionado: U(t) 0. Supon-


gamos que la temperatura exterior vara segn la funcin
T
e
(t) = 23 7 cos
_

12
t
_
,
esto es, se supone que la temperatura exterior cambia de forma sinusoidal en un pe-
rodo de 24 horas, con su mnimo en t = 0 (medianoche) y su mximo en t = 12
(medioda). Supongamos asimismo que k =

12
h
1
, por lo que la constante de tem-
peratura del edicio, 1/k, es aproximadamente de cuatro horas. La situacin descrita
podra corresponder a la primavera, cuando no usamos ni la calefaccin ni el aire
acondicionado y las variaciones de temperatura son suaves.
En este caso, la temperatura interior del edicio viene dada por la siguiente fun-
cin:
T(t) = e
kt
_
_
e
kt
(kT
e
(t) + H
0
) dt + C
_
= e
kt
_
7k
_
e
kt
cos
_

12
t
_
dt + (23k + H
0
)
_
e
kt
dt + C
_
.
Integrando por partes el primer sumando y sustituyendo los valores de k y H
0
, obte-
nemos:
T(t) =
93
4

7
2
_
cos
_

12
t
_
+ sen
_

12
t
__
+ Ce

12
t
.
Supongamos ahora que la temperatura inicial (esto es, a medianoche) en el interior
del edicio es de 20

C. Imponiendo esta condicin sobre T(t), podemos calcular el
valor de la constante de integracin C:
T(0) = 20
93
4

7
2
+ C = 20 C =
1
4
.
2.7 Aplicaciones 49
La solucin del problema de valor inicial es, nalmente,
T(t) =
93
4

7
2
_
cos
_

12
t
_
+ sen
_

12
t
__
+
1
4
e

12
t
.
En la gura 2.8 se muestran las evoluciones de las temperaturas interior y exterior del
edicio durante un perodo de 24 horas.
Damos a continuacin un cdigo Sage para resolver el problema y representar
grcamente tanto la solucin T(t) como la evolucin de la temperatura exterior T
e
(t).
sage: var(t)
sage: k = pi/12
sage: Te = 23-7*cos(pi*t/12)
sage: H = pi/48
sage: U = 0
sage: T = function(T, t)
sage: ec = diff(T, t) == k*(Te -T) + H + U
sage: sol = desolve(ec, T, ics=[0, 20])
sage: expand(sol)
1/4*e^( -1/12*pi*t) - 7/2* sin (1/12* pi*t) - 7/2* cos (1/12* pi*t) + 93/4
sage: # Dibujamos
sage: fig1 = plot(sol , t, 0, 24, color=blue,
legend_label=Temp. interna ) # figura para T
sage: fig2 = plot(Te, t, 0, 24, color=red,
legend_label=Temp. externa ) # figura para Te
sage: fig = fig1 + fig2 # unimos ambas figuras
sage: show(fig) # mostramos el resultado
El parmetro legend_label dentro de la instruccin plot se ha utilizado para etique-
tar las grcas. El resultado obtenido puede verse en la gura 2.8.
Supongamos que queremos determinar la temperatura mxima que se alcanza en
el interior del edicio durante un periodo de 24 horas. Para ello, podemos usar el
siguiente comando:
sage: sol.find_maximum_on_interval (0, 24)
(28.204675639897779 , 14.996195034422906)
El primer nmero corresponde al valor mximo de la temperatura y el segundo al
instante en que ste se alcanza. De forma anloga, para determinar la temperatura
mnima, hacemos
sage: sol.find_minimum_on_interval (0, 24)
(18.412953900017136 , 3.086010596200699)
Como vemos, los resultados son consistentes con la representacin grca de la solu-
cin.
50 Ecuaciones diferenciales de primer orden
CAPTULO
3
ECUACIONES DIFERENCIALES DE
ORDEN SUPERIOR
3.1. Introduccin
Una ecuacin diferencial ordinaria de orden n es una ecuacin que relaciona una va-
riable independiente x con una variable dependiente y y(x) y sus derivadas hasta
el orden n. Su forma general es la siguiente:
F(x, y, y
/
, y
//
, . . . , y
(n)
) = 0, x [a, b].
La ecuacin est escrita en forma normal si la derivada de orden n aparece despejada:
y
(n)
= f (x, y, y
/
, . . . , y
(n1)
), x [a, b].
Una solucin de la ecuacin diferencial es una funcin y: [a, b] R que satisface
la ecuacin en cada punto x [a, b]. Dicha funcin ha de ser regular, en el sentido
de ser derivable tantas veces como indique el orden de la ecuacin, siendo continuas
todas las derivadas; en tal caso se dice que y(x) es una funcin de clase C
n
([a, b]).
Ejemplo 3.1. La funcin y: R R denida como y(x) = sen(2x) es solucin de la
ecuacin diferencial de orden dos (o segundo orden)
y
//
= 4y.
52 Ecuaciones diferenciales de orden superior
En primer lugar, notemos que la funcin y(x) es de clase dos, ya que tanto y
/
(x) =
2 cos(2x) como y
//
(x) = 4 sen(2x) son funciones continuas. Adems, se verica la
ecuacin para cada punto x R:
y
//
(x) = 4 sen(2x) = 4y(x).
Es inmediato hacer la comprobacin anterior usando Sage:
sage: var(x)
sage: y = sin (2*x)
sage: diff(y, x, 2) + 4*y
0
La solucin general de una ecuacin diferencial de orden n es una familia de fun-
ciones que determinan todas las posibles soluciones de la ecuacin. Dicha solucin
general depende de n parmetros o constantes arbitrarias: y y(x, C
1
, C
2
, . . . , C
n
).
Ejemplo 3.2. La solucin general de la ecuacin diferencial y
//
= 4y es
y = C
1
sen(2x) + C
2
cos(2x),
siendo C
1
y C
2
constantes arbitrarias. Es fcil comprobar que todas las funciones de
esta forma verican la ecuacin diferencial; ms adelante veremos que estas son todas
las posibles soluciones.
Veamos cmo usar Sage para hacer la comprobacin:
sage: var(x, C1 , C2)
sage: y = C1*sin (2*x) + C2*cos (2*x)
sage: diff(y, x, 2) + 4*y
0
Tambin podemos resolver la ecuacin directamente:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) == -4*y
sage: desolve(ec , y)
k1*sin (2*x) + k2*cos (2*x)
Dada una ecuacin diferencial de orden n (que supondremos escrita en forma nor-
mal), podemos complementarla con n condiciones iniciales que establecen los valores
que deben tomar la solucin y sus derivadas en un cierto punto. Estamos entonces
ante lo que se denomina un problema de valores iniciales o problema de Cauchy. Su forma
es la siguiente:
_

_
y
(n)
= f (x, y, y
/
, . . . , y
(n1)
), x [a, b],
y(a) = y
0
,
y
/
(a) = y
1
,
.
.
.
y
(n1)
(a) = y
n1
,
3.1 Introduccin 53
donde y
0
, y
1
, . . . , y
n1
son datos del problema. Ntese que un problema de valores
iniciales posee, en general, solucin nica. Para determinarla, primero se obtiene la
solucin general de la ecuacin, que depender de n constantes arbitrarias, y luego se
determina el valor de las constantes utilizando las condiciones iniciales.
Ejemplo 3.3. Consideremos el problema de valores iniciales
_

_
y
//
= 4y,
y(0) = 1,
y
/
(0) = 0.
Como vimos en el ejemplo anterior, la solucin general de la ecuacin y
//
= 4y es
y = C
1
sen(2x) + C
2
cos(2x).
Determinemos C
1
y C
2
usando las condiciones iniciales. Por un lado, usando la pri-
mera condicin inicial tenemos que
y(0) = 1 C
1
sen0 + C
2
cos 0 = 1 C
2
= 1.
Como y
/
(x) = 2C
1
cos(2x) 2C
2
sen(2x), de la segunda condicin deducimos que
y
/
(0) = 0 2C
1

:
1
cos 0 2C
2

:
0
sen0 = 0 C
1
= 0.
Por tanto, la nica solucin del problema del problema de valores iniciales es
y = cos(2x).
El cdigo Sage correspondiente es el siguiente:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) == -4*y
sage: desolve(ec , y, ics=[0, 1, 0]) # ics=[a, y0 , y0 ]
cos (2*x)
En este captulo centraremos nuestro estudio en ecuaciones de segundo orden,
cuya forma general es
F(x, y, y
/
, y
//
) = 0,
y su forma normal es
y
//
= f (x, y, y
/
).
Como hemos comentado anteriormente, la solucin general de la ecuacin depender
de dos constantes arbitrarias:
y y(x, C
1
, C
2
).
54 Ecuaciones diferenciales de orden superior
Un problema de valores iniciales adopta la forma
_

_
y
//
= f (x, y, y
/
), x [a, b],
y(a) = y
0
,
y
/
(a) = y
/
0
,
donde y
0
, y
/
0
R son datos del problema.
3.2. Ecuaciones reducibles a primer orden
En esta seccin estudiaremos dos tipos de ecuaciones de segundo orden que, me-
diante un cambio adecuado de variables, pueden transformarse en ecuaciones de
primer orden. Estas clases de ecuaciones son aquellas en las que no aparece, de forma
explcita, la variable dependiente o la variable independiente.
3.2.1. Ecuaciones en las que no aparece la variable dependiente
Consideremos una ecuacin de de la forma
y
//
= F(x, y
/
),
que no depende explcitamente de la variable dependiente y. Mediante el cambio de
variable dependiente z = y
/
podemos transformarla en una ecuacin de primer orden:
z
/
= F(x, z),
teniendo en cuenta que y
//
= z
/
.
Ejemplo 3.4. Consideremos la ecuacin
y
//
= 2y
/
,
en la que no aparece de forma explcita la variable dependiente y. Hagamos el cambio
z = y
/
para obtener una ecuacin de primer orden:
z
/
= 2z.
Podemos resolver esta ecuacin mediante separacin de variables:
_
dz
z
= 2
_
dx ln(z) = 2x + C z = C
1
e
2x
,
donde C
1
= e
C
. Ahora deshacemos el cambio z = y
/
mediante integracin directa:
y
/
= z = C
1
e
2x
y = C
1
_
e
2x
dx =
C
1
2
e
2x
+ C
2
,
3.2 Ecuaciones reducibles a primer orden 55
donde C
2
es una constante de integracin. Renombrando la constante C
1
, obtenemos
nalmente la solucin general de la ecuacin de segundo orden:
y(x) = C
1
e
2x
+ C
2
.
Ejemplo 3.5. Sea la ecuacin diferencial de segundo orden
xy
//
= y
/
+ (y
/
)
3
.
Haciendo el cambio z = y
/
, obtenemos la ecuacin
xz
/
= z + z
3
,
que es de primer orden. Separando variables, obtenemos
_
dz
z + z
3
=
_
dx
x
ln(z)
1
2
ln(z
2
+ 1) = ln(x) + C,
donde C es una constante de integracin. Para poder deshacer el cambio z = y
/
es
necesario despejar z en la expresin anterior. Para ello, tengamos en cuenta que
ln(z)
1
2
ln(z
2
+ 1) = ln

z
2
ln
_
z
2
+ 1 = ln

z
2
z
2
+ 1
.
Por tanto,
ln

z
2
z
2
+ 1
= ln(x) + C

z
2
z
2
+ 1
= e
C
x
z
2
z
2
+ 1
= C
1
x
2
,
donde C
1
= e
2C
. Despejando z, resulta
z =
C
1
x
_
1 C
2
1
x
2
.
Ahora podemos deshacer el cambio z = y
/
, mediante integracin directa, para obtener
la solucin general de la ecuacin diferencial original:
y
/
= z =
C
1
x
_
1 C
2
1
x
2
y =
_
C
1
x
_
1 C
2
1
x
2
dx =
1
C
1
_
1 C
2
1
x
2
+ C
2
.
Renombrando la constante C
1
(teniendo cuidado con los signos) podemos escribir
nalmente la solucin buscada:
y =
_
C
1
x
2
+ C
2
.
56 Ecuaciones diferenciales de orden superior
Ejemplo 3.6. La curva que forma una cuerda inextensible que cuelga libremente entre
dos puntos jos se denomina catenaria (del latn catena, cadena). Dicha curva puede
obtenerse como solucin del problema de valores iniciales
_

_
y
//
=
1
a
_
1 + (y
/
)
2
,
y(0) = a,
y
/
(0) = 0,
que resulta al considerar las fuerzas que actan sobre la cuerda (no entraremos en
detalles).
Figura 3.1: Catenaria.
En la ecuacin diferencial no aparece explcitamente la variable x, por lo que po-
demos hacer el cambio z = y
/
. De esta forma, obtenemos la siguiente ecuacin de
primer orden:
z
/
=
1
a
_
1 + z
2
.
Separando variables, resulta
1
_
dz

1 + z
2
=
_
dx
a
arcsenh(z) =
x
a
+ C
1
z = senh
_
x
a
+ C
1
_
.
1
Se denen la funciones seno hiperblico y coseno hiperblico como
senh(x) =
e
x
e
x
2
, cosh(x) =
e
x
+ e
x
2
,
respectivamente. El arcoseno y el arcocoseno hiperblicos son sus respectivas funciones inversas.
3.2 Ecuaciones reducibles a primer orden 57
Deshaciendo el cambio z = y
/
, queda
y =
_
senh
_
x
a
+ C
1
_
dx = a cosh
_
x
a
+ C
1
_
+ C
2
.
Por ltimo, imponiendo las condiciones iniciales obtenemos C
1
= C
2
= 0. Por tanto,
la catenaria est denida por
y = a cosh
_
x
a
_
.
En la gura 3.1 se representa la solucin correspondiente al valor a = 2.
3.2.2. Ecuaciones en las que no aparece la variable independiente
Una ecuacin que no depende explcitamente de la variable independiente x adop-
ta la forma
y
//
= F(y, y
/
).
En este caso el cambio es ms complicado: pasaremos de las variables (x, y) a las
variables (y, z), donde z = y
/
. Dicho de otra forma, la antigua variable dependiente y
pasa a ser la nueva variable independiente, mientras que z = y
/
es la nueva variable
dependiente. Usando la regla de la cadena, podemos escribir
y
//
=
d
dx
(y
/
) =
dz
dx
=
dz
dy
dy
dx
= z
dz
dy
.
Por tanto,
y
//
= F(y, y
/
) z
dz
dy
= F(y, z).
Hemos obtenido as una ecuacin de primer orden en las variables (y, z).
Ejemplo 3.7. Consideremos la ecuacin
yy
//
+ (y
/
)
2
= 0,
en la que no aparece de forma explcita la variable independiente x. Mediante el
cambio explicado anteriormente, la ecuacin queda as:
yz
dz
dy
+ z
2
= 0 y
dz
dy
= z.
Separando variables, resulta
_
dz
z
=
_
dy
y
z =
C
1
y
.
58 Ecuaciones diferenciales de orden superior
Deshaciendo el cambio z = y
/
, obtenemos una nueva ecuacin diferencial de primer
orden y variables separadas:
dy
dx
= y
/
= z =
C
1
y

_
y dy = C
1
_
dx
y
2
2
= C
1
x + C
2
.
Renombrando las constantes, obtenemos la solucin general de la ecuacin de segun-
do orden en forma implcita:
y
2
= C
1
x + C
2
.
3.3. Ecuaciones lineales de segundo orden
Salvo en algunos casos particulares, como los estudiados en los apartados ante-
riores, el anlisis de un ecuacin diferencial general requiere el uso de herramientas
matemticas avanzadas que estn ms all del alcance de este trabajo. Nos centrare-
mos por ello en un tipo particular de ecuaciones de segundo orden, las de tipo lineal,
que aparecen con relativa frecuencia en las aplicaciones.
Una ecuacin diferencial de segundo orden es lineal si puede escribirse de la si-
guiente forma:
y
//
+ p(x)y
/
+ q(x)y = r(x),
donde p(x), q(x) y r(x) son funciones conocidas de la variable x.
Dentro de las ecuaciones lineales de segundo orden, distinguimos varios tipos:
Si r(x) 0, la ecuacin se denomina homognea: y
//
+ p(x)y
/
+ q(x)y = 0.
Si r(x) , 0, se dice que la ecuacin es completa.
Si los coecientes p(x) y q(x) son constantes, la ecuacin es de coecientes cons-
tantes: y
//
+ py
/
+ qy = r(x), donde p, q R. Obsrvese que el trmino indepen-
diente r(x) no tiene por qu ser constante.
La solucin general de una ecuacin diferencial lineal de segundo orden depende
de dos constantes arbitrarias:
y y(x, C
1
, C
2
).
De modo anlogo a las ecuaciones lineales de primer orden, dicha solucin general
tiene la siguiente estructura:
y(x, C
1
, C
2
) = y
H
(x, C
1
, C
2
) + y
P
(x),
donde y
H
(x, C
1
, C
2
) es la solucin general de la ecuacin homognea asociada e y
P
(x)
es una solucin particular de la ecuacin completa.
3.3 Ecuaciones lineales de segundo orden 59
Vamos a analizar a continuacin la estructura de las soluciones de una ecuacin li-
neal homognea. Supongamos que y
1
e y
2
son dos soluciones distintas de la ecuacin,
esto es,
y
//
1
+ p(x)y
/
1
+ q(x)y
1
= 0, y
//
2
+ p(x)y
/
2
+ q(x)y
2
= 0.
Es inmediato comprobar que, si C
1
y C
2
son constantes arbitrarias, la funcin y =
C
1
y
1
+ C
2
y
2
es tambin solucin de la ecuacin homognea. En efecto, teniendo en
cuenta que y
/
= C
1
y
/
1
+ C
2
y
/
2
e y
//
= C
1
y
//
1
+ C
2
y
//
2
, resulta:
y
//
+ p(x)y
/
+ q(x)y = (C
1
y
//
1
+ C
2
y
//
) + p(x)(C
1
y
/
1
+ C
2
y
/
2
) + q(x)(C
1
y
1
+ C
2
y
2
)
= C
1
(y
//
1
+ p(x)y
/
1
+ q(x)y
1
) + C
2
(y
//
2
+ p(x)y
/
2
+ q(x)y
2
) = C
1
0 + C
2
0 = 0.
Surge de inmediato una pregunta natural: es y = C
1
y
1
+ C
2
y
2
la solucin general de
la ecuacin homognea? En el siguiente ejemplo veremos que, en general, la respuesta
es negativa.
Ejemplo 3.8. Es inmediato comprobar que las funciones y
1
(x) = sen(x) e y
2
(x) =
2 sen(x) son soluciones de la ecuacin y
//
= y. Sin embargo, la expresin
y = C
1
y
1
+ C
2
y
2
= C
1
sen(x) + 2C
2
sen(x) = (C
1
+ 2C
2
) sen(x) Csen(x),
no puede ser la solucin general de la ecuacin diferencial. Para verlo, basta con notar
que el problema de valores iniciales
_

_
y
//
= y,
y(0) = 1,
y
/
(0) = 0,
no puede resolverse usando slo la funcin y = Csen(x). En efecto, como
y(0) = Csen0 = 0,
la primera condicin inicial nunca puede vericarse.
Veamos entonces qu relacin deben vericar las funciones y
1
, y
2
, soluciones
particulares de la ecuacin homognea, para que la combinacin lineal y = C
1
y
1
+
C
2
y
2
sea la solucin general de la ecuacin homognea. Dado un problema de valores
iniciales arbitrario,
_

_
y
//
+ p(x)y
/
+ q(x)y = 0,
y(x
0
) = y
0
,
y
/
(x
0
) = y
/
0
,
60 Ecuaciones diferenciales de orden superior
busquemos su solucin en la forma y = C
1
y
1
+ C
2
y
2
. Imponiendo las condiciones
iniciales, obtenemos un sistema de dos ecuaciones con dos incgnitas, C
1
y C
2
:
_
C
1
y
1
(x
0
) + C
1
y
2
(x
0
) = y
0
,
C
1
y
/
1
(x
0
) + C
1
y
/
2
(x
0
) = y
/
0
.
Para que el problema de valores iniciales tenga solucin nica, las constantes C
1
y C
2
deben poder determinarse de manera nica, es decir, el sistema lineal anterior debe
ser compatible determinado. Esto equivale a decir que el determinante de la matriz
de coecientes no es nulo:

y
1
(x
0
) y
2
(x
0
)
y
/
1
(x
0
) y
/
2
(x
0
)

,= 0.
En resumen, el problema de valores iniciales tendr solucin nica de la forma y =
C
1
y
1
+ C
2
y
2
si y slo si se verica la condicin anterior. Como los datos x
0
, y
0
e y
/
0
eran arbitrarios, podemos armar que y = C
1
y
1
+ C
2
y
2
es la solucin general de la
ecuacin homognea si y slo si
W(y
1
, y
2
)(x)

y
1
(x) y
2
(x)
y
/
1
(x) y
/
2
(x)

,= 0, x R.
El determinante W(y
1
, y
2
) se denomina wronskiano de y
1
, y
2
. Si se verica la con-
dicin anterior sobre la no anulacin del wronskiano, diremos que las soluciones
y
1
, y
2
constituyen un sistema fundamental de soluciones de la ecuacin homognea.
En caso de que y
1
, y
2
sea un sistema fundamental, se verica que la solucin general
de la ecuacin homognea viene dada por y = C
1
y
1
+ C
2
y
2
.
Ejemplo 3.9. Volviendo al ejemplo anterior, las funciones y
1
(x) = sen(x) e y
2
(x) =
2 sen(x) no constituyen un sistema fundamental de soluciones de la ecuacin homo-
gnea y
//
= y, ya que
W(y
1
, y
2
)(x) =

sen(x) 2 sen(x)
cos(x) 2 cos(x)

=
(
(
(
(
(
(
(
((
2 sen(x) cos(x)
(
(
(
(
(
(
(
((
2 sen(x) cos(x) = 0, x R.
Por tanto, segn vimos, y = C
1
y
1
+C
2
y
2
no puede ser la solucin general de y
//
= y.
En cambio, las funciones y
1
(x) = sen(x) e y
2
(x) = cos(x) s que constituyen un
sistema fundamental de soluciones de la ecuacin y
//
= y, ya que cada una de ellas
es solucin y
W(y
1
, y
2
)(x) =

sen(x) cos(x)
cos(x) sen(x)

= (sen
2
(x) + cos
2
(x)) = 1 ,= 0, x R.
En consecuencia, la solucin general de la ecuacin y
//
= y es
y = C
1
sen(x) + C
2
cos(x).
3.3 Ecuaciones lineales de segundo orden 61
Resumiendo, hemos demostrado que la estructura de la solucin general de la
ecuacin homognea es
y
H
(x, C
1
, C
2
) = C
1
y
1
(x) + C
2
y
2
(x),
donde y
1
e y
2
son soluciones particulares de la ecuacin homognea coque verican
la siguiente propiedad:
W(y
1
, y
2
)(x) =

y
1
(x) y
2
(x)
y
/
1
(x) y
/
2
(x)

,= 0, x R.
Asimismo, para determinar la solucin general de una ecuacin lineal completa es
necesario calcular:
dos soluciones particulares de la ecuacin homognea asociada, que sean lineal-
mente independientes : y
1
(x), y
2
(x);
una solucin particular de la ecuacin completa: y
P
(x).
La solucin general de la ecuacin completa ser entonces
y = C
1
y
1
(x) + C
2
y
2
(x) + y
P
(x), C
1
, C
2
R.
La verdadera dicultad a la hora de aplicar los pasos anteriores est en la deter-
minacin de las soluciones particulares, que slo podr realizarse en determinados
casos. Uno de los ms importantes es el de las ecuaciones lineales con coecientes
constantes, que tienen la forma
y
//
+ py
/
+ qy = r(x),
donde p y q son constantes reales y r(x) es una funcin arbitraria. En la seccin 3.4
veremos cmo construir la solucin general de la ecuacin homognea asociada. Para
determinar una solucin particular, estudiaremos dos mtodos:
el mtodo de variacin de las constantes (seccin 3.5), que puede aplicarse para
cualquier funcin r(x), aunque los clculos a realizar pueden ser complicados;
el mtodo de coecientes indeterminados (seccin 3.6), que proporciona una solucin
particular de forma casi automtica, pero slo puede aplicarse cuando el trmino
independiente r(x) adopta una forma particular.
62 Ecuaciones diferenciales de orden superior
3.4. Ecuaciones lineales homogneas con coecientes cons-
tantes
En esta seccin vamos a analizar la forma de la solucin general de una ecuacin
lineal homognea con coecientes constantes:
y
//
+ py
/
+ qy = 0,
donde p, q R.
Se dene el polinomio caracterstico de la ecuacin como
P() =
2
+ p + q,
y la ecuacin caracterstica asociada como P() = 0, esto es:

2
+ p + q = 0.
Al ser el polinomio caracterstico de segundo grado, hay tres posibilidades en lo que
respecta a la naturaleza de sus races. Concretamente, P() puede tener:
I. Dos races reales distintas:
1
,=
2
.
II. Una raz real doble:
1
=
2
.
III. Races complejas conjugadas: = a bi, donde i es la unidad imaginaria y
b ,= 0.
En cada caso, la solucin general de la ecuacin homognea puede calcularse de forma
directa. Analicemos a continuacin cada uno de los casos.
I. Races reales distintas:
1
,=
2
. Un sistema fundamental de soluciones viene dado
por las funciones
y
1
(x) = e

1
x
, y
2
(x) = e

2
x
.
En efecto, para i = 1, 2 se verica
y
//
i
+ py
/
i
+ qy
i
=
2
i
e

i
x
+ p
i
e

i
x
+ qe

i
x
= (
2
i
+ p
i
+ q)e

i
x
= P(
i
)e

i
x
= 0,
ya que P(
i
) = 0 por ser
i
raz del polinomio caracterstico; esto prueba que cada y
i
es solucin de la ecuacin homognea. Adems, teniendo en cuenta que
1
,=
2
,
W(y
1
, y
2
) =

1
x
e

2
x

1
e

1
x

2
e

2
x

= (
2

1
)e
(
1
+
2
)x
,= 0, x R.
En consecuencia, la solucin general de la ecuacin homognea es
y = C
1
e

1
x
+ C
2
e

2
x
.
3.4 Ecuaciones lineales homogneas con coecientes constantes 63
Ejemplo 3.10. Consideremos la ecuacin homognea
y
//
5y
/
+ 6y = 0.
Su polinomio caracterstico es P() =
2
5 + 6. Calculemos sus races:
P() = 0
2
5 + 6 = 0 =
5

5
2
4 6
2
=
5 1
2

_

1
= 3,

2
= 2.
Al ser las races reales y distintas, la solucin general de la ecuacin es
y = C
1
e
3x
+ C
2
e
2x
.
Sage nos da el siguiente resultado:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) - 5*diff(y, x) + 6*y == 0
sage: desolve(ec , y)
k1*e^(3*x) + k2*e^(2*x)
II. Raz real doble: . Las funciones
y
1
(x) = e
x
, y
2
(x) = xe
x
constituyen un sistema fundamental de soluciones. Es inmediato comprobar que am-
bas funciones son soluciones de la ecuacin; adems,
W(y
1
, y
2
) =

e
x
xe
x
e
x
(1 + x)e
x

= (1 + x)e
2x
xe
x
= e
2x
,= 0, x R.
Por tanto, la solucin general de la ecuacin homognea es
y = C
1
e
x
+ C
2
xe
x
= (C
1
+ C
2
x) e
x
.
Ejemplo 3.11. Resolvamos la ecuacin
y
//
2y
/
+ y = 0.
El polinomio caracterstico es P() =
2
2+1, que tiene una raz real doble: = 1.
Por tanto, la solucin general de la ecuacin es
y = (C
1
+ C
2
x) e
x
.
He aqu el cdigo Sage correspondiente:
64 Ecuaciones diferenciales de orden superior
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) - 2*diff(y, x) + y == 0
sage: desolve(ec , y)
(k2*x + k1)*e^x
III. Races complejas conjugadas: a bi, b ,= 0. En este caso, un sistema fundamental
de soluciones lo constituyen las funciones
y
1
(x) = e
ax
cos(bx), y
2
(x) = e
ax
sen(bx).
Es inmediato vericar que ambas funciones son soluciones de la ecuacin. Como
adems
W(y
1
, y
2
) =

e
ax
cos(bx) e
ax
sen(bx)
e
ax
(a cos(bx) b sen(bx)) e
ax
(a sen(bx) + b cos(bx))

= be
2ax
(

:
1
sen
2
(bx) + cos
2
(bx)) = be
2ax
,= 0, x R,
deducimos que la solucin general de la ecuacin viene dada por
y = e
ax
(C
1
cos(bx) + C
2
sen(bx)).
Ejemplo 3.12. Consideremos la ecuacin
y
//
+ 2y
/
+ 5y = 0.
La ecuacin caracterstica asociada es
2
+ 2 + 5 = 0, cuyas races son 1 2i. Por
tanto, la solucin general de la ecuacin ser
y = e
x
(C
1
cos(2x) + C
2
sen(2x)).
El cdigo Sage para resolver la ecuacin es:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) + 2*diff(y, x) + 5*y == 0
sage: desolve(ec , y)
(k1*sin (2*x) + k2*cos(2*x))*e^(-x)
Hemos visto que es posible determinar, en cualquier caso, la solucin general de la
ecuacin lineal homognea en el caso de coecientes constantes. En las dos siguientes
secciones estudiaremos mtodos para calcular una solucin particular de la ecuacin
completa.
3.5 Mtodo de variacin de las constantes 65
3.5. Mtodo de variacin de las constantes
Consideremos la ecuacin lineal con coecientes constantes dada por
y
//
+ py
/
+ qy = r(x),
donde p, q R y r(x) es una funcin conocida, cuya solucin general tiene la siguien-
te estructura:
y y(x, C
1
, C
2
) = y
H
(x, C
1
, C
2
) + y
P
(x).
La solucin general de la ecuacin homognea asociada, y
H
(x, C
1
, C
2
), puede determi-
narse en funcin de las races del polinomio caracterstico asociado, como vimos en la
seccin anterior. A continuacin vamos a ver cmo construir una solucin particular,
y
P
(x), usando para ello el mtodo de variacin de las constantes.
Sabemos que la solucin general de la ecuacin homognea asociada es de la forma
y
H
(x, C
1
, C
2
) = C
1
y
1
(x) + C
2
y
2
(x),
donde y
1
, y
2
es un sistema fundamental de soluciones y C
1
, C
2
R. La idea del
mtodo de variacin de las constantes consiste en construir una solucin particular
de la ecuacin completa que tenga la forma
y
P
(x) = C
1
(x)y
1
(x) + C
2
(x)y
2
(x),
siendo C
1
(x) y C
2
(x) funciones a determinar. Ntese que la misma idea se aplic
cuando estudiamos las ecuaciones lineales de primer orden.
Las funciones C
1
(x) y C
2
(x) se calculan sustituyendo y
P
en la ecuacin completa.
Comencemos calculando la primera derivada de y
P
:
y
/
P
(x) = C
1
(x)y
/
1
(x) + C
2
(x)y
/
2
(x) + C
/
1
(x)y
1
(x) + C
/
2
(x)y
2
(x).
En este punto, haremos la siguiente suposicin:
C
/
1
(x)y
1
(x) + C
/
2
(x)y
2
(x) = 0,
que ser fundamental en los clculos posteriores. Podemos escribir entonces
y
/
P
(x) = C
1
(x)y
/
1
(x) + C
2
(x)y
/
2
(x).
Derivando de nuevo, obtenemos
y
//
P
(x) = C
1
(x)y
//
1
(x) + C
2
(x)y
//
2
(x) + C
/
1
(x)y
/
1
(x) + C
/
2
(x)y
/
2
(x).
Sustituyendo ahora y
P
en la ecuacin y agrupando convenientemente los trminos,
resulta:
C
1
(x)(y
//
1
(x) + py
/
1
(x) + qy
1
(x))+C
2
(x)(y
//
2
(x) + py
/
2
(x) + qy
2
(x))
+ C
/
1
(x)y
/
1
(x) + C
/
2
(x)y
/
2
(x) = r(x).
66 Ecuaciones diferenciales de orden superior
Teniendo en cuenta que y
1
e y
2
son soluciones de la ecuacin homognea, la expresin
anterior queda de la siguiente forma:
C
/
1
(x)y
/
1
(x) + C
/
2
(x)y
/
2
(x) = r(x).
Resumiendo, hemos llegado al sistema de ecuaciones
_
C
/
1
(x)y
1
(x) + C
/
2
(x)y
2
(x) = 0,
C
/
1
(x)y
/
1
(x) + C
/
2
(x)y
/
2
(x) = r(x),
cuyas incgnitas son C
/
1
(x) y C
/
2
(x). Este sistema es compatible determinado, ya que
el determinante de la matriz de coecientes coincide con el wronskiano W(y
1
, y
2
), que
no se anula en ningn punto x R por ser y
1
, y
2
un sistema fundamental de solu-
ciones. En consecuencia, el sistema admite una nica solucin que puede calcularse
mediante la regla de Cramer:
C
/
1
(x) =

0 y
2
(x)
r(x) y
/
2
(x)

y
1
(x) y
2
(x)
y
/
1
(x) y
/
2
(x)

=
y
2
(x)r(x)
W(y
1
, y
2
)
, C
/
2
(x) =

y
1
(x) 0
y
/
1
(x) r(x)

y
1
(x) y
2
(x)
y
/
1
(x) y
/
2
(x)

=
y
1
(x)r(x)
W(y
1
, y
2
)
.
Por ltimo, integramos las expresiones obtenidas en el paso anterior:
C
1
(x) =
_
y
2
(x)r(x)
W(y
1
, y
2
)
dx, C
2
(x) =
_
y
1
(x)r(x)
W(y
1
, y
2
)
dx.
Una vez calculadas C
1
(x) y C
2
(x), podemos construir la solucin particular y
P
.
Observacin. La posibilidad de aplicar el mtodo de variacin de las constantes de-
pender de la dicultad que tenga el clculo de las integrales anteriores.
Ejemplo 3.13. Consideremos la ecuacin diferencial
y
//
4y = e
x
.
En primer lugar, notemos que la ecuacin caracterstica es
2
4 = 0, que tiene a
1
=
2 y
2
= 2 como races. Por tanto, la solucin general de la ecuacin homognea
asociada, y
//
4y = 0, ser
y
H
(x, C
1
, C
2
) = C
1
e
2x
+ C
2
e
2x
,
siendo C
1
y C
2
constantes arbitrarias.
A continuacin, y siguiendo el mtodo de variacin de las constantes, construimos
una solucin particular de la ecuacin completa de la forma
y
P
(x) = C
1
(x)y
1
(x) + C
2
(x)y
2
(x),
3.5 Mtodo de variacin de las constantes 67
donde y
1
(x) = e
2x
e y
2
(x) = e
2x
. Las funciones y
1
, y
2
forman un sistema funda-
mental de soluciones de la ecuacin homognea, cuyo wronskiano es
W(y
1
, y
2
) =

e
2x
e
2x
2e
2x
2e
2x

= 4.
Las funciones C
1
(x) y C
2
(x) se determinan calculando las siguientes integrales:
C
1
(x) =
_
y
2
(x)r(x)
W(y
1
, y
2
)
dx =
_
e
2x
e
x
4
dx =
1
4
_
e
x
dx =
1
4
e
x
,
C
2
(x) =
_
y
1
(x)r(x)
W(y
1
, y
2
)
dx =
_
e
2x
e
x
4
dx =
1
4
_
e
3x
dx =
1
12
e
3x
.
La solucin particular buscada es, por tanto,
y
P
(x) =
1
4
e
x
e
2x

1
12
e
3x
e
2x
=
1
3
e
x
.
Finalmente, la solucin general de la ecuacin completa ser
y(x) = C
1
e
2x
+ C
2
e
2x

1
3
e
x
.
Veamos como resolver el ejemplo con Sage:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) - 4*y == exp(x)
sage: desolve(ec , y)
k1*e^(2*x) + k2*e^(-2*x) - 1/3*e^x
Ejemplo 3.14. Resolvamos la ecuacin
y
//
+ y =
1
sen(x)
.
La ecuacin caracterstica es
2
+ 1 = 0, cuyas races son = i. De este modo, la
solucin de la ecuacin homognea asociada ser
y
H
(x, C
1
, C
2
) = C
1
sen(x) + C
2
cos(x),
donde C
1
, C
2
R. El wronskiano del sistema fundamental formado por y
1
(x) =
sen(x) e y
2
(x) = cos(x) es
W(y
1
, y
2
) =

sen(x) cos(x)
cos(x) sen(x)

= (

:
1
sen
2
(x) + cos
2
(x)) = 1.
68 Ecuaciones diferenciales de orden superior
Buscamos ahora una solucin particular de la ecuacin completa de la forma
y
P
(x) = C
1
(x) sen(x) + C
2
(x) cos(x),
donde
C
1
(x) =
_
y
2
(x)r(x)
W(y
1
, y
2
)
dx =
_
cos(x)
sen(x)
dx = ln(sen(x)),
C
2
(x) =
_
y
1
(x)r(x)
W(y
1
, y
2
)
dx =
_
(1)dx = x.
En consecuencia,
y
P
(x) = ln(sen(x)) sen(x) x cos(x).
Por ltimo, la solucin general de la ecuacin completa viene dada por
y(x) = C
1
sen(x) + C
2
cos(x) + ln(sen(x)) sen(x) x cos(x).
Ser capaz Sage de obtener la solucin de la ecuacin en este caso? Claro que s:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) + y == 1/sin(x)
sage: desolve(ec , y)
k1*sin(x) + k2*cos(x) - x*cos(x) + log(sin(x))*sin(x)
Ejemplo 3.15. Consideremos la ecuacin
y
//
+ y = sec(x) tg(x).
La ecuacin homognea asociada es la misma que en el ejemplo anterior:
y
H
(x) = C
1
sen(x) + C
2
cos(x),
al igual que el wronskiano: W(y
1
, y
2
)(x) = 1.
Por otra parte, teniendo en cuenta que sec(x) = 1/cos(x), resulta que
C
1
(x) =
_
sen(x)
cos(x)
dx = ln(cos(x)),
C
2
(x) =
_
tg
2
(x)dx =
_
(1 (1 + tg
2
(x))dx = x tg(x).
Por tanto, una solucin particular de la ecuacin completa ser
y
P
(x) = ln(cos(x)) sen(x) + (x tg(x)) cos(x).
Finalmente, la solucin general de la ecuacin y
//
+ y = sec(x) tg(x) es
y(x) = C
1
sen(x) + C
2
cos(x) ln(cos(x)) sen(x) + (x tg(x)) cos(x).
3.6 Mtodo de coecientes indeterminados 69
3.6. Mtodo de coecientes indeterminados
Consideremos la ecuacin lineal de coecientes constantes
y
//
+ py
/
+ qy = r(x).
El mtodo de coecientes indeterminados se aplica cuando el trmino independiente
r(x) adopta una de las siguientes formas:
I. r(x) = Ae
ax
, a, A R;
II. r(x) = Acos(bx) o r(x) = Asen(bx), b, A R;
III. r(x) = Ae
ax
cos(bx) o r(x) = Ae
ax
sen(bx), a, b, A R;
IV. r(x) es un polinomio;
V. r(x) es una suma formada por trminos que estn en alguno de los casos ante-
riores.
El mtodo de coecientes indeterminados tambin puede aplicarse con trminos
independientes ms complicados, como pueden ser productos de polinomios, expo-
nenciales y senos o cosenos. Por simplicidad, no trataremos aqu estos casos.
A continuacin analizaremos cmo construir una solucin particular de la ecua-
cin segn el caso en que nos encontremos. Denotaremos por P() al polinomio
caracterstico asociado a la ecuacin:
P() =
2
+ p + q.
I. r(x) = Ae
ax
. En tal caso se busca una solucin particular de la forma
y
P
(x) = Mx
m
e
ax
.
La constante M se determina sustituyendo la expresin anterior en la ecuacin (de
ah el nombre de coecientes indeterminados). El exponente m es la multiplicidad
2
de
a como raz de P(), esto es, el nmero de veces que a es raz de P(). Observemos
que los posibles valores de m son 0 (si a no es raz de P()), 1 (si a es raz simple) y 2
(si a es raz doble).
2
Es conveniente recordar que una raz
0
C de un polinomio P() tiene multiplicidad m 1 si
P() puede factorizarse como P() = (
0
)
m
Q(), con Q(
0
) ,= 0. Si m = 1, diremos que la raz es
simple. Si
0
no es raz de P(), diremos que su multiplicidad es 0. Por otra parte, si a + bi es raz de
un polinomio P() con coecientes reales, tambin lo es su conjugada a bi; de esta forma, el nmero
de races complejas siempre es par.
70 Ecuaciones diferenciales de orden superior
Ejemplo 3.16. Resolvamos la ecuacin
y
//
y = e
4x
.
Las races del polinomio caracterstico P() =
2
1 son = 1, por lo que la
solucin general de la ecuacin homognea ser
y
H
(x) = C
1
e
x
+ C
2
e
x
.
En este caso a = 4 no es raz de P(), por lo que m = 0. Busquemos entonces una
solucin particular de la forma
y
P
(x) = Me
4
x
.
Como y
//
P
(x) = 16Me
4x
, sustituyendo en la ecuacin resulta
y
//
P
(x) y
P
(x) = e
4x
16Me
4x
Me
4x
= e
4x
15M = 1 M =
1
15
.
La solucin particular buscada es pues
y
P
(x) =
e
4x
15
.
Por ltimo, la solucin general ser
y(x) = C
1
e
x
+ C
2
e
x
+
e
4x
15
.
Ejemplo 3.17. Resolvamos la ecuacin
y
//
y = e
x
.
Al igual que en el ejemplo anterior, las races del polinomio caracterstico son = 1,
por lo que y
H
(x) = C
1
e
x
+ C
2
e
x
.
Ahora a = 1 es raz simple del polinomio caracterstico (m = 1), por lo que la
solucin particular habr que buscarla en la forma
y
P
(x) = Mxe
4x
.
Sustituyendo en la ecuacin, obtenemos
y
//
P
y
P
= e
x
M(2 + x)e
x
Mxe
x
= e
x
2M = 1 M =
1
2
,
de donde
y
P
(x) =
x
2
e
x
.
La solucin general de la ecuacin es pues
y(x) = C
1
e
x
+ C
2
e
x
+
x
2
e
x
.
3.6 Mtodo de coecientes indeterminados 71
Ejemplo 3.18. Consideremos la ecuacin
y
//
+ 2y
/
+ y = e
x
.
Su ecuacin caracterstica es
2
+ 2 + 1 = 0, que tiene una raz real doble: = 1.
La solucin general de la ecuacin homognea es pues y
H
(x) = (C
1
+ C
2
x)e
x
.
Por ser = 1 raz doble, tenemos que m = 2. Esto signica que debemos buscar
una solucin particular de la forma
y
P
(x) = Mx
2
e
x
.
En este caso, y
/
P
(x) = M(2x x
2
)e
x
e y
//
P
(x) = M(2 4x + x
2
)e
x
; al sustituir en la
ecuacin, simplemente queda
2Me
x
= e
x
2M = 1 M =
1
2
.
En conclusin,
y
P
(x) =
x
2
2
e
x
.
Por ltimo, la solucin general de y
//
+ 2y
/
+ y = e
x
ser
y(x) = (C
1
+ C
2
x)e
x
+
x
2
2
e
x
.
II. r(x) = Acos(bx) o r(x) = Asen(bx). En ambos casos se puede determinar una so-
lucin particular de la forma
y
P
(x) = x
m
(M
1
cos(bx) + M
2
sen(bx)),
siendo m la multiplicidad de bi como raz de P(). Al ser bi un nmero complejo,
su multiplicidad slo puede ser m = 0 (si no es raz) o m = 1 (si es raz; la otra raz
es necesariamente bi). Las constantes M
1
y M
2
se calculan sustituyendo y
P
en la
ecuacion diferencial.
Ejemplo 3.19. Resolvamos la ecuacin
y
//
+ 2y
/
+ y = cos(2x).
La ecuacin caracterstica
2
+2+1 = 0 tiene a = 1 como raz doble. La solucin
de la ecuacin homognea asociada es entonces y
H
(x) = (C
1
+ C
2
x)e
x
.
Por otra parte, como bi = 2i no es raz del polinomio caracterstico (m = 0),
debemos buscar una solucin particular de la forma
y
P
(x) = M
1
cos(2x) + M
2
sen(2x).
72 Ecuaciones diferenciales de orden superior
Sustituyendo en la ecuacin diferencial, tenemos
(4M
2
3M
1
) cos(2x) (4M
1
+ 3M
2
) sen(2x) = cos(2x).
Ahora igualamos los coecientes que acompaan a cos(2x) y sen(2x):
4M
2
3M
1
= 1
4M
1
+ 3M
2
= 0
_
M
1
=
3
25
, M
2
=
4
25
.
De esta forma, la solucin particular buscada es
y
P
(x) =
3
25
cos(2x) +
4
25
sen(2x).
Por ltimo, la solucin general de la ecuacin es
y(x) = (C
1
+ C
2
x)e
x

3
25
cos(2x) +
4
25
sen(2x).
Ejemplo 3.20. Consideremos la ecuacin
y
//
+ y = cos(x).
La solucin de la ecuacin homognea es y
H
(x) = C
1
cos(x) + C
2
sen(x), ya que las
races del polinomio caracterstico son = i.
En este caso bi = i s es raz del polinomio caracterstico, por lo que m = 1.
Debemos pues determinar una solucin particular de la forma
y
P
(x) = x(M
1
cos(x) + M
2
sen(x)).
Derivando y
P
y sustituyendo en la ecuacin completa, obtenemos
2M
2
cos(x) 2M
1
sen(x) = cos(x).
Igualando coecientes, resulta
2M
2
= 1 M
2
=
1
2
,
de donde M
1
= 0. Por tanto,
y
P
(x) =
x
2
sen(x).
La solucin general de la ecuacin y
//
+ y = cos(x) es pues
y(x) = C
1
cos(x) + C
2
sen(x) +
x
2
sen(x).
Observacin. La misma tcnica puede aplicarse cuando el trmino r(x) es una com-
binacin lineal de cos(bx) y sen(bx). En cambio, no es aplicable para combinaciones
lineales de cos(bx) y sen(dx), con b ,= d.
3.6 Mtodo de coecientes indeterminados 73
Ejemplo 3.21. Para el trmino independiente r(x) = cos(3x) + 5 sen(3x) podemos
buscar una solucin particular de la forma propuesta en el caso II. Sin embargo,
este tipo de solucin no sera vlido para un trmino independiente como r(x) =
cos(3x) + 5 sen(2x), que estara dentro del caso V.
III. r(x) = Ae
ax
cos(bx) o r(x) = Ae
ax
sen(bx). En los dos casos se considera una so-
lucin particular de la forma
y
P
(x) = x
m
e
ax
(M
1
cos(bx) + M
2
sen(bx)).
El exponente m es la multiplicidad de a + bi como raz del polinomio caracterstico
(admite los valores m = 0 si no es raz, y m = 1 si lo es), y las constantes M
1
y M
2
se
determinan sustituyendo y
P
en la ecuacin.
Ejemplo 3.22. Consideremos la ecuacin
y
//
+ y
/
+ y = e
2x
cos(7x).
Como las races del polinomio caracterstico son =
1
2

3
2
i, la solucin de la
ecuacin homognea asociada es
y
H
(x) = e
x/2
_
C
1
cos
_
3
2
x
_
+ C
2
sen
_
3
2
x
__
.
Como a + bi = 2 + 7i no es raz del polinomio caracterstico, debemos buscar la
solucin particular de la siguiente forma (m = 0):
y
P
(x) = e
2x
(M
1
cos(7x) + M
2
sen(7x)).
Sustituyendo esta expresin en la ecuacin completa, obtenemos
(42M
1
+ 35M
2
)e
2x
cos(7x) + (35M
1
42M
2
)e
2x
sen(7x) = e
2x
cos(7x).
Igualando coecientes, resulta
42M
1
+ 35M
2
= 1
35M
1
42M
2
= 0
_
M
1
=
42
35
2
+42
2
, M
2
=
35
35
2
+42
2
.
Hemos determinado as la siguiente solucin particular:
y
P
(x) = e
2x
35 sen(7x) 42 cos(7x)
35
2
+ 42
2
.
Por ltimo, la solucin general de la ecuacin ser
y(x) = e
x/2
_
C
1
cos
_
3
2
x
_
+ C
2
sen
_
3
2
x
__
+ e
2x
35 sen(7x) 42 cos(7x)
35
2
+ 42
2
.
74 Ecuaciones diferenciales de orden superior
Observacin. Los casos I a III podran englobarse en un nico caso:
r(x) = e
ax
(Acos(bx) + Bsen(bx)), a, b, A, B R.
La solucin particular y
P
habra que buscarla en la forma
y
P
(x) = x
m
e
ax
(M
1
cos(bx) + M
2
sen(bx)),
donde M
1
y M
2
son constantes a determinar y m es la multiplicidad de a + bi como
raz del polinomio caracterstico.
IV. r(x) es un polinomio de grado d. Se busca una solucin particular de la forma
y
P
(x) = x
m
Q
d
(x),
donde Q
d
(x) es un polinomio de grado d, que se determina sustituyendo y
P
en la
ecuacin, y m es la multiplicidad de 0 como raz del polinomio caracterstico (las
posibilidades son m = 0, 1, 2)
Ejemplo 3.23. Resolvamos la ecuacin diferencial
y
//
2y
/
+ 5y = 25x
2
+ 12.
Las races del polinomio caraterstico son = 1 2i, as que la solucin de la ecuacin
homognea ser y
H
(x) = e
x
(C
1
cos(2x) + C
2
sen(2x)).
Teniendo en cuenta que el trmino independiente es un polinomio de grado d = 2
y que 0 no es raz del polinomio caracterstico (m = 0), buscaremos una solucin
particular de la forma
y
P
(x) = Ax
2
+ Bx + C,
esto es, un polinomio de segundo grado cuyos coecientes debemos determinar por
sustitucin. Calculamos y
/
P
(x) = 2Ax + B, y
//
P
(x) = 2A y sustituimos en la ecuacin
completa:
5Ax
2
+ (4A + 5B)x + 2A 2B + 5C = 25x
2
+ 12.
Igualamos los coecientes de los trminos del mismo orden:
5A = 25
4A + 5B = 0
2A 2B + 5C = 12
_
_
_
A = 5, B = 4, C = 2.
Por tanto,
y
P
(x) = 5x
2
+ 4x + 2.
La solucin general de la ecuacin y
//
2y
/
+ 5y = 25x
2
+ 12 es, por tanto,
y(x) = e
x
(C
1
cos(2x) + C
2
sen(2x)) + 5x
2
+ 4x + 2.
3.6 Mtodo de coecientes indeterminados 75
Ejemplo 3.24. Resolvamos la ecuacin
y
//
2y
/
= 6x
2
+ 7x + 5.
Las races del polinomio caracterstico son
1
= 0 y
2
= 2. La solucin de la ecuacin
homognea ser entonces
y
H
(x) = C
1

>
1
e
0x
+ C
2
e
2x
= C
1
+ C
2
e
2x
.
El trmino independiente es un polinomio de grado d = 2. Como en este caso

1
= 0 es raz del polinomio caracterstico (m = 1), debemos considerar
y
P
(x) = x(Ax
2
+ Bx + C) = Ax
3
+ Bx
2
+ Cx.
Sustituyendo en la ecuacin diferencial, resulta
6Ax
2
+ (6A 4B)x + 2B 2C = 6x
2
+ 7x + 5.
Igualando coecientes, obtenemos
6A = 6
6A 4B = 7
2B 2C = 5
_
_
_
A = 1, B =
13
4
, C =
23
4
,
de donde
y
P
(x) =
x
4
(4x
2
+ 13x + 23).
Para terminar, escribimos la solucin general de la ecuacin:
y(x) = C
1
+ C
2
e
2x

x
4
(4x
2
+ 13x + 23).
Observacin. En el caso en que el valor 0 sea raz doble del polinomio caracterstico
(m = 2), la ecuacin a resolver adopta la forma y
//
= r(x), que puede resolverse
mediante integracin directa.
V. r(x) es una suma de trminos que estn en los casos anteriores. Supongamos que
r(x) es de la forma
r(x) = r
1
(x) + r
2
(x) + + r
s
(x),
donde cada r
i
(x), i = 1, . . . s, est en uno de los casos I-IV. Podemos calcular entonces
una solucin particular y
i
(x) para cada una de las ecuaciones
y
//
+ py
/
+ qy = r
i
(x), i = 1, . . . , s.
Pues bien, una solucin particular de la ecuacin
y
//
+ py
/
+ qy = r(x)
es la suma de las soluciones particulares anteriormente obtenidas:
y(x) = y
1
(x) + y
2
(x) + + y
s
(x).
76 Ecuaciones diferenciales de orden superior
Ejemplo 3.25. Consideremos la ecuacin diferencial
y
//
3y
/
+ 2y = 2e
x
+ cos(3x) 6x.
Las races del polinomio caracterstico son
1
= 1 y
2
= 2, por lo que y
H
(x) =
C
1
e
x
+ C
2
e
2x
.
El trmino independiente r(x) = 2e
x
+ cos(3x) 6x no est en ninguno de los
casos anteriores, pero podemos escribir
r(x) = r
1
(x) + r
2
(x) + r
3
(x),
donde
r
1
(x) = 2e
x
, r
2
(x) = cos(3x), r
3
(x) = 6x.
Notemos que r
1
(x) est en el caso I, r
2
(x) en el caso II y r
3
(x) en el caso IV. Podemos
aplicar entonces el mtodo de coecientes indeterminados considerando cada uno de
estos sumandos por separado.
Para r
1
(x) = 2e
x
debemos considerar una solucin particular de la forma
y
1
(x) = Mxe
x
,
ya que a = 1 es raz del polinomio caracterstico. Sustituyendo en la ecuacin y
//

3y
/
+ 2y = 2e
x
, obtenemos: Me
x
= 2e
x
M = 2. As pues,
y
1
(x) = 2xe
x
.
La solucin particular correspondiente a r
2
(x) = cos(3x) es de la forma
y
2
(x) = M
1
cos(3x) + M
2
sen(3x),
ya que bi = 3i no es raz del polinomio caracterstico. Sustituyendo en la ecuacin
y
//
3y
/
+ 2y = cos(3x), resulta
(7M
1
9M
2
) cos(3x) + (9M
1
7M
2
) sen(3x) = cos(3x) M
1
=
7
130
, M
2
=
9
130
.
Por tanto,
y
2
(x) =
1
130
(7 cos(3x) + 9 sen(3x)).
Por ltimo, la solucin particular correspondiente a r
3
(x) = 6x es de la forma
y
3
(x) = Ax + B,
ya que 0 no es raz del polinomio caracterstico. Sustituyendo en la ecuacin y
//

3y
/
+ 2y = 6x, obtenemos: 2Ax + 2B 3A = 6x, de donde A = 3 y B =
9
2
. Por
tanto,
y
3
(x) = 3x
9
2
.
La solucin general de la ecuacin y
//
3y
/
+2y = 2e
x
+cos(3x) 6x se construye
sumando a la solucin general de la homognea y
H
las tres soluciones particulares
obtenidas:
y(x) = C
1
e
x
+ C
2
e
2x
2xe
x

1
130
(7 cos(3x) + 9 sen(3x)) 3x
9
2
.
3.7 Problemas de valores iniciales y de contorno 77
3.7. Problemas de valores iniciales y de contorno
Un problema de valores iniciales o de Cauchy para una ecuacin lineal de segundo
orden adopta la siguiente forma:
_

_
y
//
+ p(x)y
/
+ q(x)y = r(x), x [a, b],
y(a) = y
0
,
y
/
(a) = y
1
,
siendo y
0
, y
1
R datos del problema. En un problema de valores iniciales se especi-
ca cunto han de valer la solucin y su primera derivada en el extremo inferior del
intervalo donde se va a resolver el problema. En general, dicho problema poseer so-
lucin nica, que se determina imponiendo las condiciones iniciales sobre la solucin
general de la ecuacin.
Ejemplo 3.26. Consideremos el problema de valores iniciales
_

_
y
//
6y
/
+ 9y = 0,
y(0) = 1,
y
/
(0) = 0.
La ecuacin diferencial es de coecientes constantes y homognea. Su ecuacin ca-
racterstica es
2
6 + 9 = 0, que tiene una raz doble = 3; en consecuencia, la
solucin general est dada por:
y = (C
1
+ C
2
x)e
3x
.
Imponiendo las condiciones iniciales, podemos determinar las constantes C
1
y C
2
:
_
_
_
y(0) = 1 (C
1
+ C
2
0)e
30
= 1 C
1
= 1,
y
/
(0) = 0 (3C
1
+ C
2
+ 3C
2
0)e
30
= 0 3

1
C
1
+ C
2
= 0 C
2
= 3.
Por tanto, la nica solucin del problema de valores iniciales es
y = (1 3x)e
3x
.
Usemos Sage para resolver el problema y dibujar la solucin en el intervalo [0, 1]:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) - 6*diff(y, x) + 9*y == 0
sage: sol = desolve(ec, y, ics=[0, 1, 0]) # ics=[a, y0, y1]
sage: sol
-(3*x - 1)*e^(3*x)
sage: plot(sol , 0, 1)
78 Ecuaciones diferenciales de orden superior
Figura 3.2: Solucin del ejemplo 3.26 en el intervalo [0, 1].
El resultado obtenido puede verse en la gura 3.2.
Un problema de contorno o de valores en la frontera para una ecuacin lineal de segun-
do orden tiene la siguiente forma:
_

_
y
//
+ p(x)y
/
+ q(x)y = r(x), x [a, b],
y(a) = ,
y(b) = ,
siendo , R datos del problema. Las condiciones y(a) = e y(b) = se denomi-
nan condiciones de contorno. Notemos que en un problema de contorno se denen los
valores que ha de tomar la solucin de la ecuacin diferencial en ambos extremos del
intervalo donde se quiere resolver.
Ejemplo 3.27. Resolvamos el problema de contorno
_

_
y
//
+
1
4
y = 0, x [0, ],
y(0) = 1,
y() = 1.
La ecuacin caracterstica de la ecuacin diferencial es
2
+
1
4
= 0, que tiene races
=
1
2
i; la solucin general tiene entonces la siguiente expresin:
y = C
1
cos
_
x
2
_
+ C
2
sen
_
x
2
_
.
3.8 Ecuaciones lineales de orden superior 79
Para determinar las constantes C
1
y C
2
imponemos las condiciones de contorno:
_
_
_
y(0) = 1 C
1

:
1
cos 0 + C
2

:
0
sen0 = 1 C
1
= 1,
y() = 1 C
1

*
0
cos

2
+ C
2

*
1
sen

2
= 1 C
2
= 1.
Por tanto, la solucin del problema de contorno es
y = cos
_
x
2
_
sen
_
x
2
_
.
El resultado puede obtenerse con el siguiente cdigo Sage:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) + (1/4)*y == 0
sage: desolve(ec , y, ics=[0, 1, pi, -1]) # ics=[a, alfa , b, beta]
-sin (1/2*x) + cos (1/2*x)
Observacin. En el ejemplo anterior, el problema de contorno tena una nica solu-
cin. En el siguiente, veremos que tambin es posible que un problema de contorno
tenga innitas soluciones o ninguna en absoluto.
Ejemplo 3.28. Consideremos el problema de contorno
_

_
y
//
+ y = 0, x [0, ],
y(0) = ,
y() = ,
con , R. Su solucin general viene dada por
y = C
1
cos(x) + C
2
sen(x).
Al imponer las condiciones de contorno, resulta:
_
y(0) = C
1
= ,
y() = C
1
= .
Entonces, si + ,= 0 el problema no tiene solucin. En cambio, si suponemos + =
0 existen innitas soluciones al problema, ya que C
2
podra tomar cualquier valor.
3.8. Ecuaciones lineales de orden superior
El estudio de las ecuaciones diferenciales de orden mayor que dos sigue pautas
similares al anlisis realizado para ecuaciones de segundo orden. Al igual que en este
80 Ecuaciones diferenciales de orden superior
caso, restringiremos nuestro estudio a las ecuaciones lineales, es decir, a ecuaciones
de la forma
y
(n)
+ a
n1
(x)y
(n1)
+ + a
2
(x)y
//
(x) + a
1
(x)y
/
+ a
0
(x)y = r(x),
donde n 3 y a
n1
(x), . . . , a
0
(x) y r(x) son funciones arbitrarias. La solucin general
de una ecuacin lineal es de la forma
y = y
H
+ y
P
,
donde y
H
es la solucin general de la ecuacin homognea asociada:
y
(n)
+ a
n1
(x)y
(n1)
+ + a
2
(x)y
//
+ a
1
(x)y
/
+ a
0
(x)y = 0,
mientras que y
P
es una solucin particular de la ecuacin completa. La solucin ge-
neral depender de n constantes arbitrarias. Para plantear un problema de valores
iniciales, son necesarias n condiciones iniciales:
_

_
y(x
0
) = y
0
,
y
/
(x
0
) = y
1
,
y
//
(x
0
) = y
2
,
.
.
.
y
(n1)
(x
0
) = y
n1
.
La solucin de un problema de valores iniciales es nica: el valor de las constantes
que aparecen en la solucin general se determina de forma nica a partir de las
condiciones iniciales.
Diremos que un conjunto y
1
, . . . , y
n
de soluciones de la ecuacin homognea es
un sistema fundamental si su wronskiano no se anula en ningn punto:
W(y
1
, . . . , y
n
) =

y
1
(x) y
2
(x) y
n
(x)
y
/
1
(x) y
/
2
(x) y
/
n
(x)
y
//
1
(x) y
//
2
(x) y
//
n
(x)
.
.
.
.
.
.
.
.
.
.
.
.
y
(n1)
1
y
(n1)
2
y
(n1)
n

,= 0, x R.
Dado un sistema fundamental y
1
, . . . , y
n
, la solucin general de la ecuacin lineal
homognea es de la forma
y
H
(x) = C
1
y
1
(x) + C
2
y
2
(x) + + C
n
y
n
(x),
siendo C
1
, . . . , C
n
constantes reales arbitrarias.
3.8 Ecuaciones lineales de orden superior 81
Nos centraremos a partir de ahora en las ecuaciones lineales de coecientes cons-
tantes, es decir,
y
(n)
+ a
n1
y
(n1)
+ + a
2
y
//
+ a
1
y
/
+ a
0
y = r(x),
siendo a
n1
, . . . , a
0
constantes reales. El polinomio caracterstico asociado es
P() =
n
+ a
n1

n1
+ + a
2

2
+ a
1
+ a
0
.
A menos que n 4, no se dispone de frmulas explcitas para el clculo de las races
de P(). En general, se puede intentar aplicar algn mtodo algebraico para el clculo
de races como, por ejemplo, el mtodo de Rufni.
Para determinar la solucin general de la ecuacin homognea
y
(n)
+ a
n1
y
(n1)
+ + a
2
y
//
+ a
1
y
/
+ a
0
y = 0,
a cada raz del polinomio caracterstico le asociaremos una o varias soluciones parti-
culares, atendiendo a la naturaleza de dicha raz:
I. Si es una raz real simple, entonces una solucin es e
x
.
II. Si es un raz real de multiplicidad m 2, podemos considerar m soluciones
distintas:
e
x
, xe
x
, x
2
e
x
, . . . , x
m1
e
x
.
III. Si = a bi son races complejas simples, entonces e
ax
cos(bx) y e
ax
sen(bx) son
las soluciones asociadas.
IV. Si = a bi son races complejas de multiplicidad m 2, tenemos 2m solucio-
nes:
e
ax
cos(bx), xe
ax
cos(bx), x
2
e
ax
cos(bx), . . . , x
m1
e
ax
cos(bx),
e
ax
sen(bx), xe
ax
sen(bx), x
2
e
ax
sen(bx), . . . , x
m1
e
ax
sen(bx).
Puede probarse que las n soluciones particulares y
1
, . . . , y
n
as obtenidas forman
un sistema fundamental de soluciones. Por tanto, la solucin general de la ecuacin
homognea ser
y
H
(x) = C
1
y
1
(x) + C
2
y
2
(x) + + C
n
y
n
(x).
Ejemplo 3.29. Resolvamos la ecuacin homognea
y
(6)
+ 8y
(4)
+ 16y
//
= 0.
82 Ecuaciones diferenciales de orden superior
El polinomio caracterstico asociado es P() =
6
+8
4
+16
2
. Calculemos sus races:

6
+ 8
4
+ 16
2
= 0
2
(
4
+ 8
2
+ 16) = 0
_
= 0 (raz real doble),

4
+ 8
2
+ 16 = 0.
Para resolver la ecuacin
4
+ 8
2
+ 16 = 0 hacemos el cambio =
2
:

4
+ 8
2
+ 16 = 0
2
+ 8 + 16 = 0 = 4 (doble).
Por tanto, =

4 = 2i, siendo estas races complejas dobles.


A la raz doble = 0 le corresponden las soluciones e
0x
= 1 y xe
0x
= x, mien-
tras que a las races dobles 2i les asociamos las soluciones e
0x
cos(2x) = cos(2x),
x cos(2x), sen(2x) y x sen(2x). En consecuencia, la solucin general de la ecuacin
ser
8y(x) = C
1
+ C
2
x + C
3
cos(2x) + C
4
x cos(2x) + C
5
sen(2x) + C
6
x sen(2x).
En este caso, Sage no es capaz de resolver de forma directa la ecuacin:
sage: var(x)
sage: y = function(y, x)
sage: ec = diff(y, x, 6) + 8*diff(y, x, 4) + 16* diff(y, x, 2) == 0
sage: desolve(ec , y)
Traceback (most recent call last):
...
NotImplementedError: Maxima was unable to solve this ODE.
De hecho, el comando desolve slo puede resolver ecuaciones de primer y segun-
do orden. Ms adelante, cuando estudiemos sistemas de ecuaciones, veremos como
solventar este problema.
Ejemplo 3.30. Vamos a resolver el siguiente problema de valores iniciales:
_

_
y
///
6y
//
+ 11y
/
6y = 0,
y(0) = 1,
y
/
(0) = 0,
y
//
(0) = 0.
El polinomio caracterstico asociado a la ecuacin es P() =
3
6
2
+ 11 6. Sus
races pueden obtenerse fcilmente usando el mtodo de Rufni:
1
= 1,
2
= 2 y

3
= 3. Las soluciones asociadas a cada raz son: e
x
, e
2x
y e
3x
. Por tanto, la solucin
general de la ecuacin es
y(x) = C
1
e
x
+ C
2
e
2x
+ C
3
e
3x
.
3.8 Ecuaciones lineales de orden superior 83
Impongamos ahora las condiciones iniciales:
y(0) = 1 C
1
+ C
2
+ C
3
= 1
y
/
(0) = 0 C
1
+ 2C
2
+ 3C
3
= 0
y
//
(0) = 0 C
1
+ 4C
2
+ 9C
3
= 0
_
_
_
C
1
= 0, C
2
= 3, C
3
= 2.
En consecuencia, la solucin del problema de valores iniciales es
y(x) = 3e
2x
2e
3x
.
Consideremos ahora la ecuacin lineal de coecientes constantes no homognea
y
(n)
+ a
n1
y
(n1)
+ + a
2
y
//
+ a
1
y
/
+ a
0
y = r(x),
cuya solucin general se construye como suma de la solucin general y
H
de la ecua-
cin homognea asociada y de una solucin particular y
P
de la ecuacin completa.
Para determinar una solucin particular aplicaremos el mtodo de variacin de las
constantes.
Si y
1
, . . . , y
n
es un sistema fundamental de soluciones de la ecuacin homognea,
buscamos un conjunto de funciones C
1
(x), . . . , C
n
(x) que sea solucin del siguiente
sistema:
_

_
y
1
(x)C
/
1
(x) + y
2
(x)C
/
2
(x) + + y
n
(x)C
/
n
(x) = 0,
y
/
1
(x)C
/
1
(x) + y
/
2
(x)C
/
2
(x) + + y
/
n
(x)C
/
n
(x) = 0,
y
//
1
(x)C
/
1
(x) + y
//
2
(x)C
/
2
(x) + + y
//
n
(x)C
/
n
(x) = 0,
.
.
.
y
(n1)
1
(x)C
/
1
(x) + y
(n1)
2
(x)C
/
2
(x) + + y
(n1)
n
(x)C
/
n
(x) = r(x),
para cada x R. Se trata de un sistema lineal de n ecuaciones y n incgnitas (a sa-
ber, C
/
1
(x), . . . , C
/
n
(x)) que es compatible determinado, ya que el determinante de la
matriz de coecientes coincide con el wronskiano del sistema fundamental, que no se
anula en ningn punto. En consecuencia, podemos resolverlo (mediante la regla de
Cramer, por ejemplo) para determinar C
/
1
(x), . . . , C
/
n
(x). A continuacin se calculan
C
1
(x), . . . , C
n
(x) mediante integracin, y por ltimo se construye la solucin particu-
lar:
y
P
(x) = C
1
(x)y
1
(x) + C
2
(x)y
2
(x) + + C
n
(x)y
n
(x).
Ejemplo 3.31. Consideremos la ecuacin diferencial
y
///
6y
//
+ 11y
/
6y = xe
x
.
El polinomio caracterstico es P() =
3
6
2
+11 6, cuyas races son 1, 2 y 3. De
este modo, la solucin general de la ecuacin homognea es
y
H
(x) = C
1
e
x
+ C
2
e
2x
+ C
3
e
3x
.
84 Ecuaciones diferenciales de orden superior
En particular, un sistema fundamental de soluciones de la ecuacin homognea est
formado por las funciones y
1
(x) = e
x
, y
2
(x) = e
2x
e y
3
(x) = e
3x
.
Consideremos ahora el sistema
_

_
y
1
(x)C
/
1
(x) + y
2
(x)C
/
2
(x) + y
3
(x)C
/
3
(x) = 0,
y
/
1
(x)C
/
1
(x) + y
/
2
(x)C
/
2
(x) + y
/
3
(x)C
/
3
(x) = 0,
y
//
1
(x)C
/
1
(x) + y
//
2
(x)C
/
2
(x) + y
//
3
(x)C
/
3
(x) = r(x),
que queda como
_

_
e
x
C
/
1
(x) + e
2x
C
/
2
(x) + e
3x
C
/
3
(x) = 0,
e
x
C
/
1
(x) + 2e
2x
C
/
2
(x) + 3e
3x
C
/
3
(x) = 0,
e
x
C
/
1
(x) + 4e
2x
C
/
2
(x) + 9e
3x
C
/
3
(x) = xe
x
.
Podemos simplicar las ecuaciones:
_

_
C
/
1
(x) + e
x
C
/
2
(x) + e
2x
C
/
3
(x) = 0,
C
/
1
(x) + 2e
x
C
/
2
(x) + 3e
2x
C
/
3
(x) = 0,
C
/
1
(x) + 4e
x
C
/
2
(x) + 9e
2x
C
/
3
(x) = xe
2x
.
El determinante de la matriz de coecientes es

1 e
x
e
2x
1 2e
x
3e
2x
1 4e
x
9e
2x

= 2e
3x
.
Aplicando la regla de Cramer, obtenemos
C
/
1
(x) =
1
2e
3x

0 e
x
e
2x
0 2e
x
3e
2x
xe
2x
4e
x
9e
2x

=
x
2
e
2x
,
C
/
2
(x) =
1
2e
3x

1 0 e
2x
1 0 3e
2x
1 xe
2x
9e
2x

= xe
3x
,
C
/
3
(x) =
1
2e
3x

1 e
x
0
1 2e
x
0
1 4e
x
xe
2x

=
x
2
e
4x
.
Integrando, resulta
C
1
(x) =
1
2
_
xe
2x
dx =
1
4
e
2x
_
x +
1
2
_
,
C
2
(x) =
_
xe
3x
dx =
1
3
e
3x
_
x +
1
3
_
,
C
3
(x) =
1
2
_
xe
4x
dx =
1
8
e
4x
_
x +
1
4
_
.
3.8 Ecuaciones lineales de orden superior 85
Por ltimo, construimos la solucin particular:
y
P
(x) = C
1
(x)y
1
(x) + C
2
(x)y
2
(x) + C
3
(x)y
3
(x) = e
x
_
1
24
x +
13
288
_
.
Finalmente, la solucin general de la ecuacin y
///
+ 6y
//
+ 11y
/
+ 6y = xe
x
ser
y(x) = C
1
e
x
+ C
2
e
2x
+ C
3
e
3x
e
x
_
1
24
x +
13
288
_
.
El mtodo de coecientes indeterminados se aplica cuando el trmino indepen-
diente r(x) es de una de las formas ya estudiadas en la seccin 3.6. Bsicamente, estas
formas pueden reducirse a tres:
I. r(x) = e
ax
(Acos(bx) + Bsen(bx)), con a, b, A, B R. En tal caso puede encontrarse
una solucin particular de la forma
y
P
(x) = x
m
e
ax
(M
1
cos(bx) + M
2
sen(bx)),
donde m es la multiplicidad de a + bi como raz del polinomio caracterstico. Las
constantes M
1
y M
2
se determinan sustituyendo y
P
en la ecuacin diferencial.
Ejemplo 3.32. Consideremos la ecuacin
y
///
6y
/
+ 9y = e
x
sen(x).
Las races del polinomio caracterstico P() =
3
6 + 9, obtenidas mediante el
mtodo de Rufni, son 3 y
3
2

3
2
i. Por tanto, la solucin general de la ecuacin
homognea asociada es
y
H
(x) = C
1
e
3x
+ C
2
e
3x/2
cos
_

3
2
x
_
+ C
3
e
3x/2
sen
_

3
2
x
_
.
En este caso a +bi = 1 +i no es raz del polinomio caracterstico, por lo que la solucin
particular ser de la forma
y
P
(x) = e
x
(M
1
cos(x) + M
2
sen(x)).
Sustituyendo en la ecuacin, deducimos que M
1
=
4
17
y M
2
=
1
17
. En consecuencia, la
solucin general de la ecuacin es
y(x) = C
1
e
3x
+ C
2
e
3x/2
cos
_

3
2
x
_
+ C
3
e
3x/2
sen
_

3
2
x
_
+
1
17
e
x
(4 cos(x) + sen(x)).
II. r(x) es un polinomio de grado d. Se considera una solucin particular de la forma
y
P
(x) = x
m
Q
d
(x),
donde m es la multiplicidad de 0 como raz del polinomio caracterstico, mientras que
Q
d
(x) es un polinomio de grado d que se determina sustituyendo y
P
en la ecuacin.
86 Ecuaciones diferenciales de orden superior
Ejemplo 3.33. Resolvamos la ecuacin
y
///
y
//
+ y
/
y = x
2
x.
Aplicando el mtodo de Rufni al polinomio caracterstico P() =
3

2
+ 1,
obtenemos que sus races son 1 y i. De esta forma, la solucin general de la ecuacin
homognea es
y
H
(x) = C
1
e
x
+ C
2
cos(x) + C
3
sen(x).
El grado del polinomio r(x) = x
2
x es d = 2; como 0 no es raz de P(), la solucin
particular debe ser un polinomio de grado dos:
y
P
(x) = Ax
2
+ Bx + C.
Sustituyendo y
P
en la ecuacin, obtenemos los valores A = B = 1 y C = 1. Por
tanto, la solucin general de la ecuacin ser
y(x) = C
1
e
x
+ C
2
cos(x) + C
3
sen(x) x
2
x + 1.
III. r(x) es suma de trminos que estn en los dos casos anteriores. La solucin parti-
cular se construye sumando las soluciones particulares que se obtienen considerando
cada uno de los sumandos por separado, segn hemos establecido en los casos I y II.
3.9. Aplicaciones
3.9.1. Vibraciones mecnicas
Vamos a estudiar la ecuacin diferencial que rige el desplazamiento de un medio
deformable, como puede ser un muelle, un mstil, un edicio, etc.
Representemos por x(t) al desplazamiento del medio respecto de la posicin de
equilibrio, en el instante de tiempo t, y sea m su masa. El origen de coordenadas se
establece en la posicin de equilibrio y se supone que el movimiento hacia la derecha
corresponde a valores positivos del desplazamiento.
Supondremos que sobre el medio actan tres tipos de fuerzas:
Fuerza elstica o de recuperacin: es restauradora y su mdulo es proporcional
al desplazamiento. Podemos expresarla como kx, donde k es la constante de
recuperacin del material y el signo negativo indica que la fuerza se opone al
movimiento.
Fuerza de amortiguacin, debida al rozamiento: posee un mdulo proporcional a
la velocidad del medio y se opone al movimiento. Su expresin es cx
/
, donde
c es la constante de amortiguamiento.
3.9 Aplicaciones 87
Fuerzas que no son intrnsecas al sistema, sino que obedecen a causas externas
(por ejemplo, la accin de un terremoto). Nos referiremos a ellas como fuerzas
externas y las denotaremos por g(t).
La segunda ley de Newton nos dice que el producto de la masa por la aceleracin
es igual a la resultante de fuerzas que actan sobre el sistema. Teniendo en cuenta
que x
//
(t) representa la aceleracin del medio, obtenemos entonces:
mx
//
= kx cx
/
+ g(t) x
//
+
c
m
x
/
+
k
m
x =
g(t)
m
.
Ser conveniente escribir la ecuacin en la forma
x
//
+ 2x
/
+
2
x
/
= F(t),
donde =
_
k
m
, =
a
2m
y F(t) =
g(t)
m
. Se trata pues de una ecuacin diferencial de
segundo orden, lineal y de coecientes constantes. En caso de que no acten fuerzas
exteriores, F(t) 0, la ecuacin es adems homognea.
Para completar el sistema, debemos considerar condiciones iniciales de la forma
_
x(0) = x
0
,
x
/
(0) = v
0
,
que indican la posicin y velocidad del medio en el instante inicial t = 0. El proble-
ma de valores iniciales correspondiente posee una nica solucin, que nos permite
calcular el desplazamiento del medio respecto de la posicin de equilibrio en cada
instante.
Ejemplo 3.34. Calculemos el desplazamiento respecto de la posicin de equilibrio de
un mstil con masa igual a 1 kg, constante de amortiguamiento igual a 4 Ns/m y
constante de recuperacin igual a 5 N/m, suponiendo que en el instante inicial recibe
una rfaga de viento soplando hacia la izquierda, cuya velocidad es de 5 m/s.
El problema de valores iniciales a considerar es el siguiente:
_

_
x
//
+ 4x
/
+ 5x = 0,
x(0) = 0,
x
/
(0) = 5.
El polinomio caracterstico de la ecuacin, P() =
2
+4+5, tiene races = 2 i;
por tanto, la solucin general de la ecuacin ser
x(t) = e
2t
(C
1
cos(t) + C
2
sen(t)).
88 Ecuaciones diferenciales de orden superior
Figura 3.3: Oscilacin de un mstil.
Imponiendo las condiciones iniciales, resulta:
_
_
_
x(0) = 0 C
1
= 0,
x
/
(0) = 5 C
2
2

0
C
1
= 5 C
2
= 5.
Por tanto, la solucin buscada es
x(t) = 5 sen(t)e
2t
,
que representa una curva sinusoidal cuyas amplitudes tienden a cero. La grca de la
solucin se representa en la gura 3.3, donde puede observarse cmo las oscilaciones
se amortiguan con el paso del tiempo y el mstil tiende hacia su posicin de equilibrio.
La gura 3.3 se ha obtenido con el siguiente cdigo Sage:
sage: var(t)
sage: x = function(x, t)
sage: ec = diff(x, t, 2) + 4*diff(x, t) + 5*x == 0
sage: sol = desolve(ec, x, ics=[0, 0, -5]); sol
-5*e^(-2*t)*sin(t)
sage: plot(sol , 0, 5)
A continuacin analizaremos los mltiples casos que pueden presentarse en au-
sencia de fuerzas externas: F(t) 0. Notemos que, en cualquier caso, 0 y 0.
Caso 1. No acta ninguna fuerza: = = 0. En este caso podemos integrar la ecua-
cin directamente:
x
//
= 0 x(t) = C
1
t + C
2
.
3.9 Aplicaciones 89
Sustituyendo las condiciones iniciales, obtenemos C
1
= v
0
y C
2
= x
0
, de donde
x(t) = v
0
t + x
0
, t 0.
En trminos fsicos, se trata de un movimiento uniforme. Si no hay velocidad inicial,
el mvil permanece en reposo en el punto x
0
.
Caso 2. Slo acta la fuerza elstica: > 0, = 0. La ecuacin correspondiente es ho-
mognea:
x
//
+
2
x = 0.
La ecuacin caracterstica es
2
+
2
= 0, cuyas races son i. Por tanto, la solucin
general ser
x(t) = C
1
cos(t) + C
2
sen(t).
Usando las condiciones iniciales, podemos determinar el valor de las constantes: C
1
=
x
0
y C
2
= v
0
/. En conclusin, la solucin del problema de Cauchy es
x(t) = x
0
cos(t) +
v
0

sen(t), t 0,
que corresponde a un movimiento peridico. La trayectoria del mvil para x
0
= 1,
v
0
= 0 y = se representa en la gura 3.4.
Figura 3.4: Grca de x(t) en el caso 2, con x
0
= 1, v
0
= 1 y = .
Las oscilaciones son producidas por el muelle y continan indenidamente, ya que
no hay otras fuerzas que las contrarresten.
90 Ecuaciones diferenciales de orden superior
Caso 3. Slo acta la fuerza de rozamiento: > 0, = 0. De nuevo tenemos una ecua-
cin homognea:
x
//
+ 2x
/
= 0.
Las races de la ecuacin caracterstica
2
+ 2 = 0 son
1
= 0 y
2
= 2. Por
tanto, la solucin general ser
x(t) = C
1
e
0t
+ C
2
e
2t
= C
1
+ C
2
e
2t
.
A partir de las condiciones iniciales, obtenemos C
1
= x
0
+
v
0
2
y C
2
=
v
0
2
. Por tanto,
la solucin buscada es
x(t) = x
0
+
v
0
2
(1 e
2t
), t 0.
Observemos que
lm
t
x(t) = x
0
+
v
0
2
,
lo que signica que el mvil se ir acercando a la posicin x
0
+
v
0
2
(que estar a la
derecha o a la izquierda de x
0
, segn si v
0
> 0 o v
0
< 0). En la gura 3.5 se representa
la trayectoria del mvil para x
0
= 0, v
0
= 1 y = 1. Notemos que si v
0
= 0, el mvil
permanece en el mismo lugar en cada instante ya que, al no tener velocidad inicial,
no hay nada que lo obligue a cambiar de posicin.
Figura 3.5: Grca de x(t) en el caso 3, con x
0
= 0, v
0
= 1 y = 1.
Caso 4. Hay fuerzas elstica y de rozamiento: > 0, > 0. La ecuacin a estudiar es
de nuevo de coecientes constantes y homognea:
x
//
+ 2x
/
+
2
x = 0.
3.9 Aplicaciones 91
Las races de la ecuacin caracterstica
2
+ 2 +
2
= 0 son de la forma
=
_

2
,
por lo que la naturaleza de las soluciones depender del signo de
2

2
. Por simpli-
cidad, supondremos que la velocidad inicial es nula: v
0
= 0 (esta suposicin no resta
generalidad a las deducciones que haremos). Hay tres casos para analizar:
Caso 4A. Movimiento elstico sobreamortiguado: < . Al ser
2

2
> 0, obtene-
mos races reales distintas:
1
= +
_

2
y
2
=
_

2
. La solucin
del problema de Cauchy es
x(t) =
x
0

1
(
2
e

1
t

1
e

2
t
), t 0.
Analicemos el comportamiento de la solucin cuando t tiende a innito. Es claro
que
2
< 0; como >
_

2
, resulta que tambin
1
< 0. En consecuencia las
exponenciales e

1
t
y e

2
t
tienden a cero, y por tanto
lm
t
x(t) = 0.
Dicho de otra forma, el mvil tiende a la posicin de equilibrio. Surge una cuestin
natural: pasa el mvil alguna vez por la posicin de equilibrio, en un tiempo T nito?
Para responder a esta pregunta, basta con ver si la ecuacin x(T) = 0 tiene alguna
solucin real T > 0:
x(T) = 0
1
e

2
T
=
2
e

1
T
T =
1

2
ln
_

2
_
.
Notemos que
1
/
2
> 0, por ser ambas races negativas; esto hace que ln(
1
/
2
)
tenga sentido. Sin embargo,
2
<
1
< 0
1
/
2
< 1 ln(
1
/
2
) < 0. Como
1

2
= 2
_

2
> 0, deducimos que T < 0, lo cual no es un resultado aceptable. En
consecuencia, la ecuacin x(T) = 0 no posee ninguna solucin positiva. En trminos
fsicos, el mvil tiende a la posicin de equilibrio pero sin pasar nunca por sta. En la
gura 3.6 se representa la trayectoria del mvil.
Caso 4B. Movimiento elstico crticamente amortiguado: = . Ahora tenemos una
raz real doble: = . La solucin del problema de Cauchy es, en este caso,
x(t) = x
0
(1 + t)e
t
, t 0.
Al ser < 0, resulta que
lm
t
x(t) = 0,
92 Ecuaciones diferenciales de orden superior
Figura 3.6: Grca de x(t) en el caso 4A, con x
0
= 1, = 1 y = 2.
por lo que el mvil tiende a la posicin de equilibrio conforme el tiempo avanza.
Nunca pasar por la posicin de equilibrio, ya que la ecuacin x(T) = 0 no posee
solucin positiva:
x(T) = 0 1 + T = 0 T =
1

< 0.
Caso 4C. Movimiento elstico subamortiguado: > . En este caso
2

2
< 0, por
lo que las races del polinomio caracterstico son de la forma = i
_

2

2
. La
solucin del problema de Cauchy es entonces:
x(t) =
x
0
_

2

2
e
t
_
_

2

2
cos(t
_

2

2
) + sen(t
_

2

2
)
_
, t 0.
Usando que [ cos(
_

2

2
)[ 1 y [ sen(
_

2

2
)[ 1, tenemos que
0 [x(t)[
[x
0
[
_

2

2
e
t
(
_

2

2
+ ).
Como e
t
0 cuando t , deducimos que lm
t
[x(t)[ = 0, de donde
lm
t
x(t) = 0.
Veamos si el mvil pasa por la posicin de equilibrio en algn tiempo nito T > 0:
x(T) = 0 tg(T
_

2

2
) =
sen(T
_

2

2
)
cos(T
_

2

2
)
=
_

2

2

.
3.9 Aplicaciones 93
Es posible elegir T
0
> 0, con T
0
_

2

2
(/2, 3/2), de modo que se verique
tg(T
0
_

2

2
) =
_

2

2
/. Entonces todas las soluciones positivas de la ecua-
cin x(T) = 0 son
T
k
= T
0
+
k
_

2

2
, k = 0, 1, 2, . . .
En este caso, la ecuacin x(T) = 0 admite innitas soluciones positivas. La inter-
pretacin fsica es sencilla: conforme avanza el tiempo, el mvil tiende a la posicin
de equilibrio pero oscilando alrededor de sta; al aumentar el tiempo disminuye la
amplitud de dichas oscilaciones. En la gura 3.7 se representa la solucin x(t) corres-
pondiente a x
0
= 1, = 2 y = 1; notemos que, en este caso, [x(t)[
1+

3
e
t
.
Figura 3.7: Grca de x(t) en el caso 4C. Las lneas discontinuas son las funciones
1+

3
e
t
.
Vamos a concluir esta seccin con el anlisis de un caso en el que se aplica al
mvil una fuerza externa peridica de la forma F(t) = cos(t), > 0, partiendo
del reposo. Por simplicidad, supondremos que no hay rozamiento. Consideramos
entonces el problema de Cauchy
_

_
x
//
+
2
x = cos(t),
x(0) = 0,
x
/
(0) = 0.
Las races del polinomio caracterstico son = i, por lo que debemos distinguir
dos casos:
94 Ecuaciones diferenciales de orden superior
= 1/2 = 1
= 1,2 = =

2
Figura 3.8: Problema con fuerza peridica externa: soluciones obtenidas para distintos valores
del parmetro . El fenmeno de resonancia puede apreciarse en la ltima gura.
,= . En tal caso i no es raz del polinomio caracterstico, por lo que la
solucin del problema de Cauchy es de la forma
x(t) =
1

2
(cos(t) cos(t)), t 0.
Se trata de un movimiento peridico alrededor de la posicin de equilibrio.
= . Al ser i = i raz del polinomio caracterstico, la solucin del problema
de Cauchy viene dada por
x(t) =
t
2
sen(t), t 0.
En este caso la amplitud de las oscilaciones aumenta conforme avanza el tiempo:
este fenmeno se conoce como resonancia. En trminos fsicos, el mvil oscilara
indenidamente alrededor de la posicin de equilibrio, pero alejndose cada vez
3.9 Aplicaciones 95
ms de sta en cada oscilacin. Al ser la longitud del muelle nita, llegar un
momento en que el sistema cambie su naturaleza (por ejemplo, el muelle podra
romperse), cambiando de esta forma la ecuacin del movimiento.
En el conjunto de guras 3.8 puede apreciarse cmo vara la solucin del problema
conforme el parmetro se acerca a =

2. El fenmeno de resonancia puede


apreciarse en la ltima gura.
3.9.2. Deexin y pandeo de vigas
Consideremos una viga de longitud L situada en posicin horizontal y cuyos ex-
tremos estn jos. La deformacin que sufre dicha viga puede modelizarse mediante
el siguiente problema de contorno:
_

_
y
//
(x) =
w
2EI
x(L x), x [0, L],
y(0) = 0,
y(L) = 0,
donde y(x) representa el desplazamiento o deexin de la viga respecto de la hori-
zontal en el punto x [0, L], E es el mdulo de elasticidad de Young, I denota el
momento de inercia y w es el peso por unidad de longitud de la viga. Las condiciones
de contorno establecen que los extremos de la viga permanecen jos.
w
L
Figura 3.9: Deexin de una viga empotrada: esquema.
En este caso la ecuacin diferencial puede resolverse mediante una doble integra-
cin. Si llamamos =
w
2EI
, resulta que
y
//
(x) = x(L x) y
/
(x) =
_
x(L x) dx y
/
(x) =
_
1
2
Lx
2

1
3
x
3
_
+ C
1
,
siendo C
1
una constante de integracin. De nuevo integramos para obtener:
y(x) =
_
_

_
1
2
Lx
2

1
3
x
3
_
+ C
1

dx y(x) =
_
1
6
Lx
3

1
12
x
4
_
+ C
1
x + C
2
,
96 Ecuaciones diferenciales de orden superior
donde C
2
es otra constante de integracin. Las constantes C
1
y C
2
pueden determi-
narse imponiendo las condiciones de contorno:
_
_
_
y(0) = 0 C
2
= 0,
y(L) = 0
1
12
L
4
+ C
1
L +

0
C
2
= 0 C
1
=
1
12
L
3
.
Por tanto, la nica solucin del problema de contorno viene dada por
y(x) =
w
24EI
_
x
4
2Lx
3
+ L
3
x
_
.
En particular, podemos determinar la deexin mxima que, por simetra, se da en el
punto x
max
= L/2:
y
max
= y(L/2) =
w
24EI
_
L
4
16
2
L
4
8
+
L
4
2
_
=
5wL
4
384EI
.
Ejemplo 3.35. Consideremos una barra de longitud L = 2 m con mdulo de Young
E = 2 10
11
N/m
2
, momento de inercia I = 7,85 10
9
m
4
y w = 95,54 N/m; estos
datos corresponden a una barra de acero con seccin transversal circular de 2 cm de
dimetro. En tal caso, la deexin mxima de la barra es:
y
max
=
5 95,54 2
4
384 (2 10
11
) (7,85 10
9
)
0,0127 m.
Figura 3.10: Deexin de una viga.
En la gura 3.10 se representa la correspondiente curva de deexin. Tngase en
cuenta que dicha curva corresponde a la grca de la funcin y(x), ya que y(x)
representa el desplazamiento de la viga respecto de la horizontal.
He aqu el cdigo Sage para generar la gura 3.10:
3.9 Aplicaciones 97
sage: var(x)
sage: # datos del problema
sage: L = 2
sage: E = 2e11
sage: I = 7.85e-9
sage: w = 95.54
sage: y = function(y, x)
sage: sol = desolve(diff(y, x, 2) == -w/(2*E*I)*x*(L-x), y,
ics=[0, 0, L, 0]); sol
372/146713*x^4 - 1488/146713*x^3 + 2976/146713*x
sage: plot(-sol , 0, L)
Tambin podemos calcular y
max
de la siguiente forma:
sage: sol.find_maximum_on_interval (0, L)
(0.012677813145392703 , 0.99999999999999989)
El primer valor es y
max
y el segundo la correspondiente abscisa x
max
.
En general, la teora de elasticidad determina que, para deexiones relativamente
pequeas de una viga horizontal uniforme, la curva de deexin y(x) viene determi-
nada por la ecuacin diferencial
EIy
(4)
(x) = w, x [0, L],
donde E es el mdulo de Young del material, I es el momento de inercia, w es el peso
de la viga y L es su longitud. La solucin de esta ecuacin diferencial puede obtenerse
por integracin directa. En efecto, si integramos una vez obtenemos
EIy
(3)
(x) = wx + C
1
;
integrando de nuevo, resulta:
EIy
//
(x) =
1
2
wx
2
+ C
1
x + C
2
;
una nueva integacin nos lleva a:
EIy
/
(x) =
1
6
wx
3
+
1
2
C
1
x
2
+ C
2
x + C
3
;
y la ltima integracin nos da:
EIy(x) =
1
24
wx
4
+
1
6
C
1
x
3
+
1
2
C
2
x
2
+ C
3
x + C
4
.
Para determinar las constantes arbitrarias C
1
, C
2
, C
3
y C
4
, debemos imponer condi-
ciones de contorno adecuadas en los extremos x = 0 y x = L de la viga.
Dependiendo del tipo de soporte, en cada extremo de la viga puede considerarse
una de las siguientes condiciones:
Sostenida simplemente: y = y
//
= 0.
98 Ecuaciones diferenciales de orden superior
Empotrada o ja en el extremo: y = y
/
= 0.
Extremo libre: y
//
= y
(3)
= 0.
Ejemplo 3.36. Por ejemplo, si consideramos una viga en voladizo, con el extremo
x = 0 jo y el extremo x = L libre, tendramos las siguientes condiciones de contorno:
y(0) = 0, y
/
(0) = 0, y
//
(L) = 0, y
(3)
(L) = 0.
Imponiendo estas condiciones en la solucin general, se obtiene la siguiente curva de
deexin:
y(x) =
w
24EI
(x
4
4Lx
3
+ 6L
2
x
2
).
Cul ser la deexin mxima en este caso? Para determinar dicho valor, iguala-
mos la derivada de y(x) a cero:
y
/
(x) = 0
w
6EI
x(x
2
3Lx + 3L
2
) = 0

_
x = 0,
x
2
3Lx + 3L
2
= 0 (no tiene races reales).
Es decir, la derivada slo se anula en x = 0, que es el extremo jo. Esto nos indica que
la funcin y(x) es estrictamente creciente, por lo que la deexin mxima se producir
en el extremo x = L y ser:
y
max
= y(L) =
w
8EI
L
4
.
A continuacin vamos a estudiar el problema del pandeo de una viga. Para ello,
consideremos una viga situada en vertical y jada por sus extremos, a la que se aplica
una carga P en uno de ellos. En tal caso, la forma de la viga y(x) puede obtenerse
como solucin del problema de contorno
_

_
y
//
(x) =
P
EI
y(x), x [0, L],
y(0) = 0,
y(L) = 0,
Llamando =
P
EI
, la ecuacin diferencial puede escribirse como
y
//
+ y = 0.
Al ser > 0, las races de la ecuacin caracterstica
2
+ = 0 son complejas: =

= i

. En tal caso, la solucin general tendr la forma


y(x) = C
1
cos(

x) + C
2
sen(

x).
3.9 Aplicaciones 99
L
P
Figura 3.11: Pandeo de una viga: esquema.
Imponiendo las condiciones de contorno, obtenemos:
_
_
_
y(0) = 0 C
1
= 0,
y(L) = 0

0
C
1
cos(

L) + C
2
sen(

L) = 0 C
2
sen(

L) = 0.
Si C
2
= 0, obtenemos la solucin trivial: y(x) 0. Esto signica que la viga no
se deforma, cosa que sucede cuando la carga P aplicada es pequea. Para obtener
una solucin no trivial del problema hemos de suponer C
2
,= 0, lo que implica que
sen(

L) = 0. Es decir, los nicos valores de para los que hay soluciones no triviales
del problema de contorno son aquellos que verican la condicin
sen(

L) = 0

L = n, n N =
n
2

2
L
2
, n N.
De este modo, la viga no se deforma a menos que
P
EI
=
n
2

2
L
2
,
donde n es un natural arbitrario. Sin embargo, como estamos interesados en el valor
mnimo para el que se produce el pandeo, tomaremos n = 1.
Observacin. A la primera carga que provoca la deformacin de la viga, P =

2
EI
L
2
, se
la conoce con el nombre de primera carga crtica o carga de pandeo de Euler.
El problema de contorno posee pues innitas soluciones, de la forma
y(x) = Csen
_

L
x
_
, 0 ,= C R.
100 Ecuaciones diferenciales de orden superior
En este caso, la amplitud C de pandeo permanece indeterminada.
Intentemos resolver el problema de contorno directamente en Sage:
sage: var(x, L, P, E, I)
sage: assume(P>0, E>0, I>0)
sage: y = function(y, x)
sage: ec = diff(y, x, 2) == -P/(E*I)*y
sage: desolve(ec , [y, x], ics=[0, 0, L, 0])
0
Como vemos, slo se ha determinado la solucin trivial. Si sustituimos
P
EI
por

2
L
2
,
obtenemos la solucin correspondiente a la carga de pandeo de Euler:
sage: ec = diff(y, x, 2) == -(pi/L)^2*y
sage: desolve(ec , [y, x], ics=[0, 0, L, 0])
r1*sin(pi*x/L)
CAPTULO
4
SISTEMAS DE ECUACIONES
DIFERENCIALES
4.1. Introduccin
Un sistema de ecuaciones diferenciales de orden n est formado por n ecuaciones dife-
renciales de primer orden en forma normal, esto es,
_

_
y
/
1
= f
1
(x, y
1
, . . . , y
n
),
y
/
2
= f
2
(x, y
1
, . . . , y
n
),
.
.
.
y
/
n
= f
n
(x, y
1
, . . . , y
n
),
donde x [a, b] es la variable independiente e y
1
, . . . , y
n
, son las variables dependien-
tes.
Una solucin del sistema est formada por n funciones y
1
(x), . . . , y
n
(x), derivables
con continuidad, que satisfacen todas las ecuaciones en cada punto x [a, b].
Ejemplo 4.1. Es inmediato comprobar que una solucin del sistema
_
y
/
1
= y
2
,
y
/
2
= y
1
.
est formada por las funciones y
1
(x) = cos(x) e y
2
(x) = sen(x).
102 Sistemas de ecuaciones diferenciales
La solucin general del sistema consta de n funciones dependientes de n constantes
arbitrarias, que proporcionan todas las posibles soluciones del sistema:
_

_
y
1
(x, C
1
, C
2
, . . . , C
n
),
y
2
(x, C
1
, C
2
, . . . , C
n
),
.
.
.
y
n
(x, C
1
, C
2
, . . . , C
n
).
Ejemplo 4.2. La solucin general del sistema
_
y
/
1
= y
2
,
y
/
2
= y
1
,
est formada por las funciones
_
y
1
(x, C
1
, C
2
) = C
1
cos(x) + C
2
sen(x),
y
2
(x, C
1
, C
2
) = C
1
sen(x) C
2
cos(x).
Ms adelante veremos cmo obtener este resultado.
El comando de Sage desolve_system sirve para calcular la solucin de un sistema:
sage: var(x)
sage: y1 = function(y1, x)
sage: y2 = function(y2, x)
sage: ec1 = diff(y1, x) == -y2
sage: ec2 = diff(y2, x) == y1
sage: desolve_system ([ec1 , ec2], [y1 , y2])
[y1(x) == -sin(x)*y2(0) + cos(x)*y1(0),
y2(x) == sin(x)*y1(0) + cos(x)*y2(0)]
En este caso, y1(0) representa la constante arbitraria C
1
, mientras que y2(0) equivale
a C
2
. El porqu de esta notacin quedar claro en el siguiente ejemplo.
Un problema de valores iniciales para un sistema de ecuaciones diferenciales se cons-
truye aadiendo n condiciones iniciales de la forma
_

_
y
1
(x
0
) = y
1
,
y
2
(x
0
) = y
2
,
.
.
.
y
n
(x
0
) = y
n
,
con y
1
, y
2
, . . . , y
n
R.
4.1 Introduccin 103
Ejemplo 4.3. El problema de valores iniciales denido por el sistema
_
y
/
1
= y
2
,
y
/
2
= y
1
,
y las condiciones iniciales
_
y
1
(0) = 1,
y
2
(0) = 0,
tiene una nica solucin formada por las funciones y
1
(x) = cos(x) e y
2
(x) = sen(x).
En efecto, a partir de la solucin general del sistema (ejemplo 4.2), podemos deter-
minar de forma nica los valores de las constantes C
1
y C
2
imponiendo las condiciones
iniciales:
_
y
1
(0) = 1 C
1

:
1
cos 0 + C
2

:
0
sin0 = 1 C
1
= 1,
y
2
(0) = 0 C
1

:
0
sen0 C
2

:
1
cos 0 = 0 C
2
= 0.
De esta forma, la solucin del problema de valores iniciales ser:
_
y
1
(x) = C
1
cos(x) + C
2
sen(x) = cos(x),
y
2
(x) = C
1
sen(x) C
2
cos(x) = sen(x).
Las condiciones iniciales se especican en Sage mediante el parmetro ics:
sage: var(x)
sage: y1 = function(y1, x)
sage: y2 = function(y2, x)
sage: ec1 = diff(y1, x) == -y2
sage: ec2 = diff(y2, x) == y1
sage: desolve_system ([ec1 , ec2], [y1 , y2], ics=[0, 1, 0])
[y1(x) == cos(x), y2(x) == sin(x)]
Si queremos representar grcamente las componentes de la solucin en el inter-
valo [0, 2], aadimos las siguientes lneas de cdigo:
sage: [solx , soly] = desolve_system ([ec1 , ec2], [y1 , y2], ics=[0, 1, 0])
sage: solx = solx.rhs()
sage: soly = soly.rhs()
sage: fig1 = plot(solx , 0, 2*pi , color=blue, legend_label=cos(x))
sage: fig2 = plot(soly , 0, 2*pi , color=green, legend_label=sen(x))
sage: show(fig1 + fig2)
El resultado obtenido puede verse en la gura 4.1.
Observacin. En el ejemplo anterior se han representado de forma independiente las
grcas de las componentes de la solucin y
1
(x) e y
2
(x). Tambin es posible interpre-
tar dichas funciones como las componentes de una curva plana, que recibe el nombre
de rbita o trayectoria. Concretamente, (cos(x), sen(x)) sera una parametrizacin de
la rbita asociada al punto (1, 0) determinado por las condiciones iniciales.
104 Sistemas de ecuaciones diferenciales
Figura 4.1: Solucin del ejemplo 4.3 en el intervalo [0, 2].
Un tipo importante de sistemas lo constituyen los sistemas lineales homogneos con
coecientes constantes, que son de la forma
_

_
y
/
1
= a
11
y
1
+ a
12
y
2
+ + a
1n
y
/
n
,
y
/
2
= a
21
y
1
+ a
22
y
2
+ + a
2n
y
/
n
,
.
.
.
y
/
n
= a
n1
y
1
+ a
n2
y
2
+ + a
nn
y
/
n
,
con a
ij
R. Este tipo de sistemas puede escribirse en forma matricial:
Y
/
= AY,
donde
Y =
_
_
_
_
_
y
1
y
2
.
.
.
y
n
_
_
_
_
_
, Y
/
=
_
_
_
_
_
y
/
1
y
/
2
.
.
.
y
/
n
_
_
_
_
_
, A =
_
_
_
_
_
a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
nn
_
_
_
_
_
.
El estudio de sistemas no lineales est fuera del alcance del presente trabajo, ya que
necesita del uso de herramientas avanzadas de Anlisis Matemtico. Por ello, restrin-
giremos nuestro estudio a sistemas de ecuaciones lineales de coecientes constantes.
Adems, por simplicidad, nos centraremos en sistemas de orden dos.
En el caso particular de sistemas de dos ecuaciones (n = 2) es usual denotar la
variable independiente por t (en lugar de x) y las variables dependientes por x e y (en
lugar de y
1
e y
2
). Asimismo, para sistemas con tres ecuaciones (n = 3) se suelen usar
las variables x, y y z en lugar de y
1
, y
2
e y
3
. A partir de ahora seguiremos este criterio.
4.1 Introduccin 105
Vamos a considerar pues un sistema lineal de la forma
_
x
/
= ax + by,
y
/
= cx + dy,
donde x x(t), y y(t) y los coecientes a, b, c y d son nmeros reales. A veces ser
conveniente escribir el sistema en forma matricial:
X
/
= AX,
donde
X(t) =
_
x(t)
y(t)
_
, X
/
(t) =
_
x
/
(t)
y
/
(t)
_
y A =
_
a b
c d
_
.
El siguiente resultado permite asegurar la existencia y unicidad de solucin para
un problema de valores iniciales.
Teorema (de existencia y unicidad). Fijados t
0
, x
0
, y
0
R, existe una nica solucin
(x(t), y(t)) del sistema
_
x
/
= ax + by,
y
/
= cx + dy,
tal que x(t
0
) = x
0
, y(t
0
) = y
0
. Dicha solucin est denida para toda t R.
La estructura de la solucin general de un sistema lineal viene dada en el siguiente
resultado.
Teorema. Si (x
1
(t), y
1
(t)) y (x
2
(t), y
2
(t)) son soluciones particulares del sistema tales que
W(t) =

x
1
(t) x
2
(t)
y
1
(t) y
2
(t)

,= 0, t R,
entonces la solucin general del sistema es de la forma
_
x(t) = C
1
x
1
(t) + C
2
x
2
(t),
y(t) = C
1
y
1
(t) + C
2
y
2
(t),
donde C
1
y C
2
son constantes arbitrarias.
Observacin. De modo anlogo al caso de ecuaciones de segundo orden, diremos que
las funciones (x
1
(t), y
1
(t)) y (x
2
(t), y
2
(t)) forman un sistema fundamental de soluciones
y W(t) es su wronskiano.
En las siguientes secciones estudiaremos dos formas diferentes de determinar la
solucin general de un sistema lineal. Ambas tcnicas pueden generalizarse de forma
natural al caso de un sistema lineal de orden n.
106 Sistemas de ecuaciones diferenciales
4.2. Mtodo de sustitucin
En esta seccin vamos a establecer una equivalencia entre un sistema lineal y una
ecuacin diferencial lineal de segundo orden. Esta relacin proporciona un mtodo
de resolucin denominado mtodo de sustitucin.
Consideremos el sistema
_
x
/
= ax + by,
y
/
= cx + dy,
y supongamos que el coeciente b es distinto de cero (si b = 0 podemos resolver direc-
tamente la primera ecuacin: x
/
= ax; a continuacin sustituimos x(t) en la segunda
ecuacin, que sera de tipo lineal, y la resolvemos para obtener y(t)). Derivando en la
primera ecuacin, resulta
x
//
= ax
/
+ by
/
= ax
/
+ b(cx + dy),
donde hemos sustituido y
/
usando la segunda ecuacin. De la primera ecuacin des-
pejamos
y =
x
/
ax
b
.
Sustituyendo en la igualdad anterior, obtenemos
x
//
= ax
/
+ b
_
cx +
d
b
(x
/
ax)
_
= (a + d)x
/
+ (bc ad)x.
As pues, tenemos la siguiente ecuacin de segundo orden:
x
//
tr(A)x
/
+ det(A)x = 0.
Recprocamente, dada la ecuacin homognea
x
//
+ px
/
+ qx = 0,
denimos y = x
/
. Entonces
y
/
= x
//
= px
/
qx = py qx.
Obtenemos as el siguiente sistema:
_
x
/
= y,
y
/
= qx py.
Hemos demostrado as la equivalencia anteriormente comentada.
4.2 Mtodo de sustitucin 107
En el caso de un problema de valores iniciales, tambin hay una equivalencia entre
las condiciones iniciales. Si tenemos las condiciones iniciales
_
x(t
0
) = x
0
,
y(t
0
) = y
0
,
para el sistema, estas se escriben como
_
x(t
0
) = x
0
,
x
/
(t
0
) = ax
0
+ by
0
,
para la ecuacin de segundo orden. Recprocamente, si las condiciones iniciales para
la ecuacin de segundo orden son de la forma
_
x(t
0
) = x
0
,
x
/
(t
0
) = x
/
0
,
entonces las condiciones para el sistema son
_
x(t
0
) = x
0
,
y(t
0
) = x
/
0
.
Ejemplo 4.4. Consideremos el sistema lineal
_
x
/
= x + y,
y
/
= 2x y,
junto con las condiciones iniciales
_
x(0) = 1,
y(0) = 1.
Derivamos en la primera ecuacin
x
//
= x
/
+ y
/
,
y sustituimos y
/
usando la segunda ecuacin:
x
//
= x
/
+ 2x y.
A continuacin, despejamos y de la primera ecuacin
y = x
/
x,
108 Sistemas de ecuaciones diferenciales
y sustituimos en la expresin anterior:
x
//
= x
/
+ 2x (x
/
x) = 3x x
//
3x = 0.
Respecto a las condiciones iniciales, notemos que
x
/
(0) = x(0) + y(0) = 1 + (1) = 0.
Hemos obtenido as el problema de valores iniciales
_

_
x
//
3x = 0,
x(0) = 1,
x
/
(0) = 0,
que es equivalente al problema de valores iniciales para el sistema original.
La solucin del problema de valores iniciales para el sistema usando Sage es:
sage: var(t)
sage: x = function(x, t)
sage: y = function(y, t)
sage: ec1 = diff(x, t) == x + y
sage: ec2 = diff(y, t) == 2*x - y
sage: desolve_system ([ec1 , ec2], [x, y], ics=[0, 1, -1])
[x(t) == cosh(sqrt (3)*t),
y(t) == sqrt (3)* sinh(sqrt (3)*t) - cosh(sqrt (3)*t)]
mientras que para la ecuacin de segundo orden es:
sage: var(t)
sage: x = function(x, t)
sage: ec = diff(x, t, 2) - 3*x == 0
sage: desolve(ec , x, ics=[0, 1, 0])
1/2*e^(-sqrt (3)*t) + 1/2*e^(sqrt (3)*t)
Se obtiene la misma solucin para x(t) en ambos casos? S, si tenemos en cuenta la
denicin del seno hiperblico (vase el captulo 3). Por ltimo, para determinar y(t)
usamos la igualdad y = x
/
x:
sage: sol = desolve(ec, x, ics=[0, 1, 0])
sage: diff(sol , t) - sol
-1/2* sqrt (3)*e^(-sqrt (3)*t) + 1/2* sqrt (3)*e^(sqrt (3)*t)
- 1/2*e^(-sqrt (3)*t) - 1/2*e^(sqrt (3)*t)
Aplicando la deniciones del seno y el coseno hiperblicos, podemos comparar los
resultados obtenidos para y(t).
La equivalencia establecida nos proporciona un mtodo para la resolucin de sis-
temas lineales. Dado un sistema lineal, lo escribimos como ecuacin homognea de
segundo orden:
x
//
tr(A)x
/
+ det(A)x = 0.
4.2 Mtodo de sustitucin 109
El polinomio caracterstico de esta ecuacin es
P() =
2
tr(A) + det(A),
cuyas races son
=
tr(A)
_
tr(A)
2
4 det(A)
2
.
Una vez conocidas las races, podemos escribir directamente la solucin general x(t)
de la ecuacin diferencial, que depender de dos constantes arbitrarias. Por ltimo,
deshacemos el cambio realizado
y =
x
/
ax
b
para obtener la solucin y(t). Observemos que la solucin del sistema depender
tambin de dos constantes arbitrarias.
Ejemplo 4.5. Resolvamos el problema de Cauchy del ejemplo anterior. Habamos pa-
sado del sistema
_
x
/
= x + y,
y
/
= 2x y,
a la ecuacin de segundo orden
x
//
3x = 0.
La ecuacin caracterstica asociada es
2
3 = 0, cuyas races son =

3. Por
tanto, la solucin general de la ecuacin ser
x(t) = C
1
e

3 t
+ C
2
e

3 t
.
Usemos las condiciones iniciales para calcular las constantes C
1
y C
2
:
x(0) = 1 C
1
+ C
2
= 1
x
/
(0) = 0

3 C
1

3 C
2
= 0
_
C
1
= C
2
=
1
2
.
La solucin x(t) es, por tanto,
x(t) =
1
2
_
e

3 t
+ e

3 t
_
.
Para determinar y(t) usamos la primera ecuacin:
y(t) = x
/
(t) x(t) =

3
2
_
e

3 t
e

3 t
_

1
2
_
e

3 t
+ e

3 t
_
.
Obtenemos as la solucin y(t):
y(t) =

31
2
e

3 t

3+1
2
e

3 t
.
110 Sistemas de ecuaciones diferenciales
Recapitulando, las funciones
_
_
_
x(t) =
1
2
_
e

3 t
+ e

3 t
_
,
y(t) =

31
2
e

3 t

3+1
2
e

3 t
,
conforman la solucin del problema de Cauchy.
Observacin. Notemos que en el caso b = 0 la primera ecuacin se reduce a x
/
= ax,
que puede resolverse directamente. Una vez calculada x(t), se sustituye en la segunda
ecuacin y se resuelve sta para determinar y(t).
Ejemplo 4.6. Calculemos la solucin general del sistema
_
x
/
= 2x,
y
/
= x y.
Como en la primera ecuacin tan slo aparece la variable x, podemos resolverla di-
rectamente. Separando variables, resulta
x
/
= 2x
_
dx
x
=
_
2 dt x(t) = C
1
e
2t
.
Ahora sustituimos x(t) en la segunda ecuacin, para obtener as una ecuacin lineal:
y
/
= C
1
e
2t
y.
La solucin de la ecuacin homognea asociada es
y
H
(t) = C
2
e
t
.
Mediante el mtodo de variacin de la constante, se llega a que una solucin particular
es
y
P
(t) =
C
1
3
e
2t
.
Por tanto, la solucin general de la ecuacin ser
y(t) =
C
1
3
e
2t
+ C
2
e
t
.
Resumiendo, las funciones
_
_
_
x(t) = C
1
e
2t
,
y(t) =
C
1
3
e
2t
+ C
2
e
t
,
forman la solucin general del sistema.
4.3 Mtodo de autovalores 111
Observacin. La tcnica del mtodo de sustitucin puede aplicarse tambin para la
resolucin de sistemas no homogneos, de la forma
_
x
/
= ax + by + r
1
(t),
y
/
= cx + dy + r
2
(t).
En tal caso, al construir la ecuacin de segundo orden habr que aplicar el mtodo
de variacin de las constantes o el de coecientes indeterminados para hallar una
solucin particular de la misma.
Observacin. Puede establecerse una equivalencia entre un sistema de orden n y una
ecuacin diferencial de orden n, siguiendo un procedimiento anlogo al explicado an-
teriormente. Asimismo, existe una equivalencia entre un problema de valores iniciales
para una ecuacin de orden n y para un sistema del mismo orden.
4.3. Mtodo de autovalores
Recordemos que un sistema lineal de la forma
_
x
/
= ax + by,
y
/
= cx + dy,
puede escribirse en forma matricial como
X
/
= AX,
donde
X(t) =
_
x(t)
y(t)
_
, X
/
(t) =
_
x
/
(t)
y
/
(t)
_
y A =
_
a b
c d
_
.
Diremos que un valor C es un autovalor de la matriz A si existe un vector no
nulo v R
2
tal que
Av = v.
Un vector v con esta propiedad es un autovector asociado al autovalor .
Observacin. Un autovector nunca es nico. De hecho, si v es un autovector de A
entonces v tambin lo es, para cualquier R, ,= 0.
La relacin Av = v puede escribirse tambin como
(A I)v = 0,
112 Sistemas de ecuaciones diferenciales
siendo I la matriz identidad. Se obtiene as un sistema lineal homogneo cuyas in-
cgnitas son las componentes del vector v. Dicho sistema tendr solucin no nula
nicamente si es compatible indeterminado, es decir, si
det(A I) = 0.
Esta es la denominada ecuacin caracterstica de la matriz A, cuyas soluciones pro-
porcionan los autovalores de A.
Observacin. Es fcil ver que los autovalores de la matriz A coinciden con las races
del polinomio caracterstico P() denido como
P() =
2
tr(A) + det(A),
donde tr(A) y det(A) son, respectivamente, la traza y el determinante de la matriz A:
tr(A) = a + d, det(A) = ad bc.
Ejemplo 4.7. Dada la matriz
A =
_
1 1
2 1
_
,
calculemos sus autovalores resolviendo la ecuacin caracterstica asociada:

1 1
2 1

= 0
2
3 = 0 =

3.
Para calcular un autovector v =
_

_
asociado a , hemos de resolver el sistema
asociado:
(A I)v = 0
_
1 1
2 1
__

_
= 0
_
(1 ) + = 0,
2 (1 + ) = 0.
Despejando en la primera ecuacin y sustituyendo en la segunda, obtenemos la
siguiente relacin:
(
2
3) = 0.
Cuando =

3, esta ecuacin admite cualquier valor de como solucin (como


era de esperar). Tomando por ejemplo = 1, resulta que =

3 1. Por tanto,
autovectores asociados a los autovalores
1
=

3 y
2
=

3 son, respectivamente,
v
1
=
_
1

3 1
_
, v
2
=
_
1

3 1
_
.
Para calcular los autovalores de una matriz A en Sage, primero denimos dicha
matriz usando el comando matrix y luego accedemos a su mtodo eigenvalues:
4.3 Mtodo de autovalores 113
sage: A = matrix ([[1, 1], [2, -1]])
sage: A.eigenvalues ()
[ -1.732050807568878? , 1.732050807568878?]
(ntese que

3 = 1,732050807568878 . . . ). Para determinar los autovectores asociados,


escribimos:
sage: A.eigenvectors_right ()
[( -1.732050807568878? , [(1, -2.732050807568878?)] , 1),
(1.732050807568878? , [(1, 0.732050807568878?)] , 1)]
El resultado es una lista con dos elementos, escritos entre parntesis y separados
por una coma. En cada uno de estos elementos, el primer valor es un autovalor, el
segundo es un autovector asociado, y el tercero representa la multiplicidad algebraica
del autovalor.
Observemos que la ecuacin caracterstica es una ecuacin polinomial de segundo
grado, por lo que pueden presentarse tres posibilidades:
I. Autovalores reales distintos.
II. Autovalor real doble.
III. Autovalores complejos conjugados.
A continuacin describiremos la forma de la solucin general del sistema en cada uno
de los casos.
I. Autovalores reales distintos:
1
,=
2
. La solucin general del sistema es
_
x(t) =
1
C
1
e

1
t
+
2
C
2
e

2
t
,
y(t) =
1
C
1
e

1
t
+
2
C
2
e

2
t
,
siendo C
1
y C
2
constantes arbitrarias y (
i
,
i
)
t
un autovector asociado a
i
, para
i = 1, 2.
Analicemos de dnde surge la expresin anterior. Para i = 1, 2, asociemos al auto-
valor
i
funciones de la forma
_
x
i
(t) =
i
e

i
t
,
y
i
(t) =
i
e

i
t
.
A continuacin, veamos qu condiciones deben vericar los coecientes
i
y
i
para
que dichas funciones formen una solucin del sistema:
_
x
/
i
(t) = ax
i
(t) + by
i
(t)
i

i
e

i
t
= a
i
e

i
t
+ b
i
e

i
t
,
y
/
i
(t) = cx
i
(t) + dy
i
(t)
i

i
e

i
t
= c
i
e

i
t
+ d
i
e

i
t
.
114 Sistemas de ecuaciones diferenciales
Simplicando y agrupando, obtenemos
_
(a
i
)
i
+ b
i
= 0
c
i
+ (d
i
)
i
= 0

_
a
i
b
c d
i
__

i
_
=
_
0
0
_
.
Es decir, el vector (
i
,
i
)
t
debe ser un autovector de la matriz de coecientes A,
asociado al autovalor
i
.
Por otra parte, notemos que
W(t) =

x
1
(t) x
2
(t)
y
1
(t) y
2
(t)

1
e

1
t

2
e

2
t

1
e

1
t

2
e

2
t

= e
(
1
+
2
)t

1

2

1

2

,= 0,
ya que dos autovectores asociados a autovalores distintos son linealmente indepen-
dientes (esto es fcil de demostrar).
En resumen, si
1
y
2
son autovalores distintos de A, podemos construir la solu-
cin general del sistema como
_
x(t) =
1
C
1
e

1
t
+
2
C
2
e

2
t
,
y(t) =
1
C
1
e

1
t
+
2
C
2
e

2
t
,
siendo C
1
y C
2
constantes arbitrarias.
Ejemplo 4.8. Consideremos el sistema
_
x
/
= x + y,
y
/
= 4x 2y,
cuya matriz de coecientes es
A =
_
1 1
4 2
_
.
Resolvamos la ecuacin caracterstica para determinar los autovalores de A:

2
+ 6 = 0
_

1
= 2,

2
= 3.
Para calcular un autovector asociado a un autovalor , resolvemos la siguiente ecua-
cin:
_
1 1
4 2
__

_
=
_
0
0
_

_
(1 ) + = 0,
4 (2 + ) = 0.
Despejando en la primera ecuacin y sustituyendo en la segunda, obtenemos:
(
2
+ 6) = 0.
4.3 Mtodo de autovalores 115
Para = 2 o = 3 el primer factor es nulo, por lo que podemos tomar un valor
arbitrario no nulo de , por ejemplo, = 1; el valor correspondiente de se determina
a partir de la primera ecuacin. De esta forma, se obtienen los siguientes autovectores:
v
1
=
_
1
1
_
, v
2
=
_
1
4
_
.
Veamos qu resultado produce Sage:
sage: A = matrix ([[1, 1], [4, -2]])
sage: A.eigenvectors_right ()
[(2, [(1, 1)], 1), (-3, [(1, -4)], 1)]
Finalmente, las funciones
_
x(t) = C
1
e
2t
+ C
2
e
3t
,
y(t) = C
1
e
2t
4C
2
e
3t
,
forman la solucin general del sistema.
Directamente, en Sage:
sage: var(t)
sage: x = function(x, t)
sage: y = function(y, t)
sage: ec1 = diff(x, t) == x + y
sage: ec2 = diff(y, t) == 4*x - 2*y
sage: desolve_system ([ec1 , ec2], [x, y])
[x(t) == 1/5*(x(0) - y(0))*e^(-3*t) + 1/5*(4*x(0) + y(0))*e^(2*t),
y(t) == -4/5*(x(0) - y(0))*e^(-3*t) + 1/5*(4*x(0) + y(0))*e^(2*t)]
Observemos, de nuevo, que las constantes arbitrarias C
1
y C
2
vienen dadas en funcin
de los valores iniciales x(0) e y(0).
En los dos casos restantes se puede razonar de manera similar. A continuacin
damos la forma de la solucin general del sistema en cada uno de ellos.
II. Autovalor real doble: . La solucin general del sistema es, en este caso,
_
x(t) = C
1
e
t
+ C
2
(M
1
+ M
2
t)e
t
,
y(t) = C
1
e
t
+ C
2
(N
1
+ N
2
t)e
t
,
siendo C
1
y C
2
constantes arbitrarias, (, ) un autovector asociado a , y M
1
, M
2
, N
1
y N
2
valores a determinar por sustitucin en el sistema.
Ejemplo 4.9. Consideremos el sistema
_
x
/
= 3x 4y,
y
/
= x y,
116 Sistemas de ecuaciones diferenciales
y calculemos sus autovalores a partir de la ecuacin caracterstica:

2
2 + 1 = 0 = 1 (raz doble).
Determinemos un autovector asociado a = 1:
_
3 4
1 1
__

_
=
_
0
0
_

_
2 4
1 2
__

_
=
_
0
0
_

_
2 4 = 0,
2 = 0.
Ambas ecuaciones son equivalentes: = 2; podemos pues tomar = 2 y = 1.
Usando Sage, obtenemos:
sage: A = matrix ([[3, -4], [1, -1]])
sage: A.eigenvectors_right ()
[(1, [(1, 1/2)], 2)]
Es decir, se tiene un autovalor = 1 con multiplicidad dos y autovector asociado
(1, 1/2)
t
, que es proporcional al obtenido anteriormente.
La solucin general del sistema ser de la forma
_
x(t) = 2C
1
e
t
+ C
2
(M
1
+ M
2
t)e
t
,
y(t) = C
1
e
t
+ C
2
(N
1
+ N
2
t)e
t
.
Los coecientes M
1
, M
2
, N
1
y N
2
se determinan a partir de las ecuaciones del sistema.
Sustituyendo en la primera ecuacin y agrupando convenientemente, resulta
(M
1
+ M
2
) + M
2
t = (3M
1
4N
1
) + (3M
2
4N
2
)t.
Igualando los coecientes del mismo orden, obtenemos
_
M
1
+ M
2
= 3M
1
4N
1
2M
1
M
2
= 4N
1
,
M
2
= 3M
2
4N
2
M
2
= 2N
2
.
De igual forma, a partir de la segunda ecuacin tenemos
N
1
+ N
2
+ N
2
t = M
1
N
1
+ (M
2
N
2
)t
_
2N
1
+ N
2
= M
1
,
M
2
= 2N
2
.
Observemos que las cuatro relaciones obtenidas pueden reducirse a dos:
_
2N
1
+ N
2
= M
1
,
M
2
= 2N
2
.
Tomando, por ejemplo, M
1
= 1 y N
2
= 1, deducimos que M
2
= 2 y N
1
= 0.
Finalmente, las funciones
_
x(t) = 2C
1
e
t
+ C
2
(1 + 2t)e
t
,
y(t) = C
1
e
t
+ C
2
te
t
,
denen la solucin general del sistema.
Veamos qu opina Sage:
4.3 Mtodo de autovalores 117
sage: var(t)
sage: x = function(x, t)
sage: y = function(y, t)
sage: ec1 = diff(x, t) == 3*x - 4*y
sage: ec2 = diff(y, t) == x - y
sage: desolve_system ([ec1 , ec2], [x, y])
[x(t) == 2*t*e^t*x(0) - 4*t*e^t*y(0) + e^t*x(0),
y(t) == t*e^t*x(0) - 2*t*e^t*y(0) + e^t*y(0)]
Teniendo en cuenta que C
1
= y(0) y C
2
= x(0) + 2y(0), vemos que la solucin obte-
nida es la misma.
III. Autovalores complejos: = a bi, b > 0. La solucin general del sistema tiene la
siguiente forma:
_
x(t) = e
at
_
C
1
(
1
cos(bt)
2
sen(bt)) + C
2
(
1
sen(bt) +
2
cos(bt))
_
,
y(t) = e
at
_
C
1
(
1
cos(bt)
2
sen(bt)) + C
2
(
1
sen(bt) +
2
cos(bt))
_
,
siendo C
1
y C
2
constantes arbitrarias y (
1
+
2
i,
1
+
2
i) un autovector complejo
asociado a = a + bi.
Ejemplo 4.10. Consideremos el sistema
_
x
/
= x 2y,
y
/
= 4x + 5y,
cuyos autovalores son de la forma = 3 2i. Para buscar un autovector asociado a
3 + 2i, consideramos la ecuacin matricial
_
1 (3 + 2i) 2
4 5 (3 + 2i)
__

1
+
2
i

1
+
2
i
_
=
_
0
0
_
,
que, en componentes, es equivalente al sistema
_
(
2

1

1
) (
1
+
2
+
2
)i = 0,
(2
1
+
1
+
2
) + (2
2

1
+
2
)i = 0.
Igualando las partes reales e imaginarias a cero, obtenemos las ecuaciones
_

1

1
= 0,

1
+
2
+
2
= 0,
2
1
+
1
+
2
= 0,
2
2

1
+
2
= 0,
118 Sistemas de ecuaciones diferenciales
que pueden reducirse a dos:
_

1
+
2
+
2
= 0,
2
1
+
1
+
2
= 0.
Tomando
1
= 1 y
1
= 1, deducimos que
2
= 2 y
2
= 3.
En Sage se obtiene el siguiente resultado:
sage: A = matrix ([[1, -2], [4, 5]])
sage: A.eigenvectors_right ()
[(3 - 2*I, [(1, -1 + 1*I)], 1), (3 + 2*I, [(1, -1 - 1*I)], 1)]
En resumen, las funciones
_
x(t) = e
3t
_
C
1
(cos(2t) 2 sen(2t)) + C
2
(sen(2t) + 2 cos(2t))
_
,
y(t) = e
3t
_
C
1
(cos(2t) + 3 sen(2t)) + C
2
(sen(2t) 3 cos(2t))
_
,
son las componentes de la solucin general del sistema.
Calculemos la solucin usando Sage directamente:
sage: var(t)
sage: x = function(x, t)
sage: y = function(y, t)
sage: ec1 = diff(x, t) == x - 2*y
sage: ec2 = diff(y, t) == 4*x + 5*y
sage: desolve_system ([ec1 , ec2], [x, y])
[x(t) == -((x(0) + y(0))* sin (2*t) - cos (2*t)*x(0))*e^(3*t),
y(t) == ((2*x(0) + y(0))* sin (2*t) + cos (2*t)*y(0))*e^(3*t)]
Podemos recuperar la solucin obtenida anteriormente haciendo los cambios x(0) =
C
1
+ 2C
2
, y(0) = C
1
3C
2
.
Observacin. Tanto el mtodo de variacin de las constantes como el de coecientes
indeterminados pueden adaptarse para resolver sistemas lineales no homogneos.
Observacin. El mtodo de autovalores presentado en esta seccin puede extenderse
de forma natural para resolver sistemas lineales de orden arbitrario.
4.4. Teora geomtrica: el diagrama de fases
Como sabemos, una solucin particular de un sistema lineal de orden dos consta
de dos funciones, x(t) e y(t). Nos planteamos en esta seccin el problema de repre-
sentar grcamente dicha solucin de la manera ms adecuada posible. Este camino
nos llevar a una interpretacin de corte geomtrico de la estructura de las soluciones
del sistema.
Una primera idea consiste en representar por separado las grcas de las funciones
x(t) e y(t). Sin embargo, con este tipo de representacin no podemos reejar de forma
4.4 Teora geomtrica: el diagrama de fases 119
clara la relacin existente entre ambas variables. Tambin podramos plantearnos el
considerar en el espacio R
3
la curva formada por los puntos de la forma (t, x(t), y(t)).
En este caso la dicultad estriba en la propia realizacin de la representacin grca:
en general no es sencillo dibujar curvas en el espacio.
Consideremos un punto arbitrario (x
0
, y
0
) R
2
y sea (x(t), y(t)) la nica solucin
del sistema que verica las condiciones iniciales x(0) = x
0
, y(0) = y
0
. La curva en
R
2
formada por los puntos (x(t), y(t)) es la rbita o trayectoria del sistema asociada al
punto (x
0
, y
0
). Es habitual referirse, en este contexto, a la variable t como el tiempo. De
este modo, la rbita de un punto nos dice cmo vara su posicin en R
2
conforme el
tiempo cambia. El sentido de avance de la rbita suele indicarse con una echa sobre
la curva.
Mediante las rbitas podemos representar la relacin cualitativa existente entre
las componentes de la solucin. Para ello, expresaremos la relacin entre las varia-
bles x e y, de forma explcita o implcita, mediante la eliminacin del parmetro t.
Obtendremos as una curva en el plano x-y sobre la cual estar situada la rbita co-
rrespondiente. Ilustremos este proceso mediante un par de ejemplos.
Ejemplo 4.11. La solucin del sistema
_
x
/
= x,
y
/
= 2x,
con condiciones iniciales x(0) = 1, y(0) = 2, viene dada por las funciones
_
x(t) = e
t
,
y(t) = 2e
t
.
Dicho de otra forma, la rbita que pasa por el punto (1, 2) es la curva denida por
(e
t
, 2e
t
).
En este caso es fcil eliminar el parmetro t. Teniendo en cuenta que e
t
= x, resulta
y = 2e
t
= 2x y = 2x.
La expresin obtenida nos dice que los puntos de la rbita (e
t
, 2e
t
) estn sobre la curva
y = 2x, pero no que la rbita sea toda la curva. Notemos que x = e
t
> 0 e y = 2e
t
> 0,
por lo que la rbita queda connada en el primer cuadrante. Adems,
lm
t
(x(t), y(t)) = (, ),
lo que indica que la rbita tiende a innito, en ambas variables, conforme el tiempo
avanza. Asimismo,
lm
t
(x(t), y(t)) = (0, 0),
120 Sistemas de ecuaciones diferenciales
Funciones x(t) = e
t
, y(t) = 2e
t
. rbita del punto (1, 2).
Figura 4.2: Distintas formas de representar la solucin del ejemplo 4.11.
lo que signica que la rbita tiende al origen cuando el tiempo retrocede (suele decirse
que la rbita sale del origen). En la gura 4.2 se representan las funciones x(t) e y(t),
as como la rbita correspondiente al punto (1, 2).
En Sage podemos resolver el sistema y calcular los lmites de la solucin de la
siguiente forma:
sage: t = var(t)
sage: x = function(x, t)
sage: y = function(y, t)
sage: ec1 = diff(x, t) == x
sage: ec2 = diff(y, t) == 2*x
sage: sol = desolve_system ([ec1 , ec2], [x, y], ics=[0, 1, 2]); sol
[x(t) == e^t, y(t) == 2*e^t]
sage: sol1 = sol [0]. rhs()
sage: sol2 = sol [1]. rhs()
sage: limit(sol1 , t=oo), limit(sol2 , t=oo)
(+Infinity , +Infinity)
sage: limit(sol1 , t=-oo), limit(sol2 , t=-oo)
(0, 0)
Para dibujar la rbita correspondiente, digamos para t (10, 1), podemos usar el
comando parametric_plot:
sage: fig = parametric_plot ((sol1 , sol2), (t, -10, 1))
sage: show(fig)
El resultado obtenido puede verse en la gura 4.2.
Ejemplo 4.12. Consideremos el sistema
_
x
/
= y,
y
/
= x,
con condiciones iniciales x(0) = 1, y(0) = 0. Su solucin est denida por las funcio-
4.4 Teora geomtrica: el diagrama de fases 121
nes
_
x(t) = cos(t),
y(t) = sen(t).
De este modo, la curva denida por (cos(t), sen(t)) es la rbita que pasa por el punto
(1, 0).
Para eliminar el parmetro t, notemos que
x
2
+ y
2
= cos
2
(t) + sen
2
(t) = 1,
lo que indica que la rbita correspondiente est sobre la circunferencia de centro el
origen y radio unidad. De hecho, al variar t en el intervalo [0, 2), recorremos todos
los puntos de la circunferencia. En consecuencia, la rbita del punto (1, 0) es toda la
circunferencia
x
2
+ y
2
= 1.
En este caso la rbita es peridica, con periodo 2, ya que la solucin (x(t), y(t)) toma
el mismo valor en un punto t que en los puntos de la forma t + 2k, para k Z.
En la gura 4.3 se representan los resultados obtenidos.
Funciones x(t) = cos(t), y(t) = sen(t). rbita del punto (1, 0).
Figura 4.3: Distintas formas de representar la solucin del ejemplo 4.12.
No es difcil demostrar que dos rbitas distintas nunca pueden cortarse, debido al
teorema de existencia y unicidad de soluciones. De esta forma, el espacio R
2
, denomi-
nado espacio de fases, puede particionarse mediante rbitas: por cada punto pasa una
nica rbita y dos de stas nunca se cortan. Dichas rbitas estn orientadas segn el
sentido de avance del tiempo. El espacio de fases junto con la estructura dada por el
conjunto de todas las rbitas orientadas se denomina diagrama de fases del sistema.
122 Sistemas de ecuaciones diferenciales
Observacin. La teora cualitativa o geomtrica de ecuaciones diferenciales (que forma
asimismo parte de la teora de Sistemas Dinmicos) permite estudiar el comporta-
miento de las soluciones de un sistema de ecuaciones diferenciales sin necesidad de
obtenerlas explcitamente. La herramienta bsica de dicha teora es el diagrama de
fases, a travs del cual podemos responder a cuestiones sobre el comportamiento de
las soluciones a largo plazo, la estabilidad de las rbitas, la existencia de rbitas pe-
ridicas, etc. La teora cualitativa para sistemas no lineales hace uso de herramientas
matemticas avanzadas que estn fuera del alcance de este trabajo.
Una clase especial de rbitas son los puntos crticos o de equilibrio, que corresponden
a soluciones constantes del sistema, esto es, soluciones que verican x
/
(t) = y
/
(t) = 0
para cualquier valor de t. Su representacin grca se reduce a un punto en R
2
.
Ejemplo 4.13. Calculemos los puntos crticos del sistema
_
x
/
= x y,
y
/
= x + y.
Para ello, basta con igualar las derivadas a cero y resolver el sistema resultante:
_
x y = 0
x + y = 0
x = 0, y = 0.
Por tanto, (0, 0) es el nico punto crtico del sistema. Su rbita se reduce al punto
(0, 0), ya que la solucin que parte del origen sera x(t) = 0, y(t) = 0.
Ejemplo 4.14. El sistema
_
x
/
= x + y,
y
/
= x + y,
posee innitos puntos crticos. En efecto, igualando las derivadas a cero nos queda la
condicin x + y = 0. Cualquier punto (x
0
, y
0
) que verique x
0
+ y
0
= 0 es un punto
crtico. Tenemos pues toda una recta de puntos crticos: y = x.
Ejemplo 4.15. Consideremos una partcula de masa unidad que se desplaza sobre
una recta, y denotemos por x su posicin respecto de un sistema de referencia jado.
Supongamos que sobre la partcula acta una fuerza que es funcin de la posicin y
la velocidad: f (x, x
/
). La segunda ley de Newton nos permite escribir la ecuacin del
movimiento: x
//
= f (x, x
/
). Llamando y = x
/
a la velocidad de la partcula, podemos
escribir la ecuacin diferencial como un sistema:
_
x
/
= y,
y
/
= f (x, y).
Los puntos crticos tienen la forma (x
0
, 0), donde x
0
debe ser solucin de la ecuacin
f (x
0
, 0) = 0. En tales puntos, tanto la velocidad x
/
como la aceleracin y
/
= x
//
son
nulas, por lo que la partcula permanece en estado de equilibrio.
4.4 Teora geomtrica: el diagrama de fases 123
Es claro que, dado un sistema lineal
_
x
/
= ax + by,
y
/
= cx + dy,
el origen (0, 0) siempre es un punto crtico del mismo. Para que sea el nico punto
crtico, el sistema
_
ax + by = 0,
cx + dy = 0,
debe tener solucin nica, lo cual es cierto si y slo si
det(A) =

a b
c d

= ad bc ,= 0.
Es decir, el origen es el nico punto crtico del sistema si y slo si det(A) ,= 0. A partir
de ahora supondremos que se verica esta condicin.
Para representar el diagrama de fases de un sistema tenemos que calcular su solu-
cin general y representar en el plano de fases un nmero adecuado de rbitas. Para
sistemas lineales que verican det(A) ,= 0, el diagrama de fases slo admite cuatro
conguraciones bsicas, en las cuales el origen es el nico punto crtico presente. Las
posibles conguraciones son:
Nodo. Todas las rbitas entran en el origen (nodo estable) o salen de ste (nodo
inestable). Vase la gura 4.4.
Foco. Ahora las rbitas tienden o parten del origen (foco estable o inestable, res-
pectivamente), pero dando innitas vueltas alrededor del mismo. Grcamente,
las rbitas tienen forma de espirales, que pueden girar en el sentido de las agujas
del reloj o al contrario. Vase la gura 4.5.
Punto de silla. En este caso hay dos rbitas que tienden al origen (formando con
ste la denominada variedad estable), otras dos que salen del origen (formando la
variedad inestable) y el resto de rbitas tienden de forma asinttica a las anterio-
res. Vase la gura 4.6.
Centro. El diagrama de fases consta de curvas cerradas concntricas alrededor
del origen. Vase la gura 4.6.
Observacin. La idea intuitiva del concepto de estabilidad es muy sencilla. Un punto
crtico es estable si las rbitas de los puntos cercanos al punto crtico permanecen
cerca de ste conforme el tiempo avanza. Adems, si dichas rbitas convergen cuando
t al punto crtico, se dice que ste es asintticamente estable. De hecho, los nodos
124 Sistemas de ecuaciones diferenciales
x
y
x
y
Nodo estable Nodo inestable
Figura 4.4: Diagrama de fases alrededor del origen (0, 0): nodos.
x
y
x
y
Foco estable Foco inestable
Figura 4.5: Diagrama de fases alrededor del origen (0, 0): focos.
y focos estables son asintticamente estables, mientras que un centro es estable pero
no asintticamente estable. Cuando falla la condicin de estabilidad, se dice que el
punto crtico es inestable; por ejemplo, un punto de silla.
A continuacin veremos, mediante diversos ejemplos, cmo aparecen los distintos
tipos de diagramas de fases.
4.4 Teora geomtrica: el diagrama de fases 125
x
y
x
y
Punto de silla Centro
Figura 4.6: Diagrama de fases alrededor del origen (0, 0): punto de silla y centro.
Ejemplo 4.16. Dibujemos el diagrama de fases del sistema
_
x
/
= x,
y
/
= x + 2y.
En primer lugar, notemos que

1 0
1 2

= 2 ,= 0,
por lo que (0, 0) es el nico punto crtico.
La solucin general del sistema es de la forma
_
x(t) = C
1
e
t
,
y(t) = C
1
e
t
+ C
2
e
2t
,
siendo C
1
y C
2
constantes arbitrarias. El punto crtico (0, 0) se obtiene para los valores
C
1
= 0 y C
2
= 0. A continuacin analizaremos cmo son las dems rbitas, en funcin
de los valores de las constantes C
1
y C
2
.
Supongamos C
1
= 0 y C
2
,= 0; en tal caso, x = 0 e y = C
2
e
2t
. Si C
2
> 0 se tiene
que y > 0; adems, y cuando t , mientras que y 0 si t . La rbita
correspondiente consiste en el semieje y positivo, orientado en el sentido creciente
de y. De forma anloga, la rbita correspondiente a C
2
< 0 consiste en el semieje y
negativo, orientado en el sentido decreciente de y. Grcamente, en ambos casos la
rbita sale del origen.
126 Sistemas de ecuaciones diferenciales
Si C
1
,= 0 y C
2
= 0, tenemos x = C
1
e
t
e y = C
2
e
t
, por lo que y = x; esto indica
que las rbitas correspondientes estarn sobre la recta y = x. Para C
1
> 0 se tiene
que x = y > 0, por lo que la rbita estar en el primer cuadrante. Se verica que
x = y si t , mientras que x = y 0 cuando t . La rbita obtenida es
la semirrecta y = x contenida en el primer cuadrante, orientada en sentido creciente
(hacia el noreste). Para C
1
< 0 se obtiene la semirrecta y = x en el cuarto cuadrante,
orientada en sentido decreciente (hacia el suroeste).
Supongamos ahora que C
1
,= 0 y C
2
,= 0. Teniendo en cuenta que x = C
1
e
t
,
podemos escribir
y = C
1
e
t
+ C
2
e
2t
= C
1
e
t
+
C
2
C
2
1
(C
1
e
t
)
2
= x +
C
2
C
2
1
x
2
.
Por tanto, las rbitas estarn sobre parbolas de la forma y = x + Cx
2
, con C ,= 0
constante. Cada una de estas parbolas pasa por (0, 0), y es claro que x 0 e y 0
cuando t , por lo que todas las rbitas salen del origen. Cada parbola consta
pues de tres rbitas: el punto crtico (0, 0) y los dos trozos de parbola restantes, que
salen del origen.
La conguracin del diagrama de fases obtenida corresponde a un nodo inestable,
que se representa en la gura 4.7.
Figura 4.7: Nodo inestable del ejemplo 4.16.
Ejemplo 4.17. Consideremos el sistema
_
x
/
= x y,
y
/
= x y.
4.4 Teora geomtrica: el diagrama de fases 127
El origen es el nico punto crtico, ya que

1 1
1 1

= 2 ,= 0.
La solucin general del sistema es
_
x(t) = e
t
(C
1
cos(t) + C
2
sen(t)),
y(t) = e
t
(C
1
sen(t) C
2
cos(t)).
La solucin correspondiente a C
1
= 0 y C
2
,= 0 viene dada por la curva de com-
ponentes x(t) = C
2
e
t
sen(t) e y(t) = C
2
e
t
cos(t), cuya representacin grca es
una espiral que da innitas vueltas alrededor del origen
1
. Por otra parte, x(t) e y(t)
tienden a 0 cuando t , por lo que las rbitas entran en el origen. Los restantes
casos se tratan de manera anloga.
Hemos visto que todas las rbitas son espirales que entran en el origen, por lo que
el diagrama de fases correspondiente es un foco estable: vase la gura 4.8.
Figura 4.8: Foco estable del ejemplo 4.17.
1
Podemos dar una idea intuitiva del porqu. Para ello, elevemos x(t) e y(t) al cuadrado y sumemos:
x(t)
2
+ y(t)
2
= C
2
2
e
2t
(cos
2
(t) + sen
2
(t)) = C
2
2
e
2t
.
Para cada valor de t, el punto (x(t), y(t)) est sobre la circunferencia de centro el origen y radio
[C
2
[e
t
. Al ir variando el ngulo de giro t el radio va decreciendo, por lo que los puntos (x(t), y(t))
van describiendo una espiral que tiende al origen. El nmero de vueltas que da la espiral es innito,
ya que el ngulo t recorre todos los intervalos de la forma [k, 2 + k], k Z.
128 Sistemas de ecuaciones diferenciales
Ejemplo 4.18. Un ejemplo de punto de silla nos lo proporciona el diagrama de fases
del siguiente sistema:
_
x
/
= 2x + y,
y
/
= y.
Se verica que

2 1
0 1

= 2 ,= 0,
por lo que el origen es el nico punto crtico. La solucin general del sistema es
_
x(t) = C
1
e
t
+ C
2
e
2t
,
y(t) = 3C
1
e
t
.
Para C
1
= 0, tenemos que x = C
2
e
2t
e y = 0. Determinamos as la variedad
inestable, que est formada por el semieje x positivo (orientado hacia la derecha; co-
rresponde a C
2
> 0) y el semieje x negativo (orientado hacia la izquierda; corresponde
a C
2
< 0), separados por el punto crtico (0, 0).
Al considerar C
1
,= 0 y C
2
= 0, resulta que x = C
1
e
t
e y = 3C
1
e
t
, de donde
y = 3x. El origen divide a esta recta en dos rbitas que tienden al punto crtico. La
recta y = 3x forma la variedad estable.
Supongamos ahora C
1
,= 0 y C
2
,= 0. De y = 3C
1
e
t
podemos despejar e
t
=

y
3C
1
; por tanto,
x = C
1
e
t
+ C
2
e
2t
= C
1
_

y
3C
1
_
+ C
2
_

3C
1
y
_
2
=
y
3
+
9C
2
1
C
2
y
2
.
En consecuencia, las rbitas corresponden a las ramas de las curvas denidas por la
ecuacin
x =
y
3
+
C
y
2
, C ,= 0.
Su sentido viene determinado por el sentido de las rbitas que forman las variedades
estable e inestable.
En la gura 4.9 se representa el esquema de fases correspondiente.
Ejemplo 4.19. Consideremos el sistema
_
x
/
= 4y,
y
/
= x.
En primer lugar, comprobemos que el origen es el nico punto crtico:

0 4
1 0

= 4 ,= 0.
4.4 Teora geomtrica: el diagrama de fases 129
Figura 4.9: Punto de silla del ejemplo 4.18.
La solucin general del sistema es
_
_
_
x(t) = C
1
cos(2t) + C
2
sen(2t),
y(t) =
1
2
(C
1
sen(2t) C
2
cos(2t)).
Notemos que
x
2
+ 4y
2
= (C
2
1
+ C
2
2
)(cos
2
(2t) + sen
2
(2t)) = C
2
1
+ C
2
2
C
2
,
lo que signica que cada rbita distinta del origen est sobre una elipse de ecuacin
x
2
+ 4y
2
= C
2
,
para una cierta constante arbitraria C ,= 0. Como ninguna elipse contiene al punto
crtico, resulta que cada elipse es una rbita completa. Este tipo de rbita se denomina
cerrada o peridica.
Veamos a continuacin cmo determinar el sentido de giro de las rbitas. Supon-
gamos que x > 0 e y > 0 (esto es, estamos en el primer cuadrante); a partir de las
ecuaciones, deducimos que x
/
= 4y < 0 e y
/
= x > 0, lo que signica que x decrece
mientras que y crece. Por tanto, las rbitas deben girar en el sentido contrario a las
agujas del reloj.
El diagrama de fases resultante es un centro, que se representa en la gura 4.10.
La estructura del diagrama de fases de un sistema lineal que verica det(A) ,= 0
queda perfectamente determinada a partir de las races del polinomio caracterstico
130 Sistemas de ecuaciones diferenciales
Figura 4.10: Centro del ejemplo 4.19.
asociado,
P() =
2
tr(A) + det(A).
Los posibles casos son los siguientes:
I. Races reales del mismo signo:
1
,
2
R,
1

2
> 0. El diagrama de fases resultante
es:
Un nodo estable si las races son negativas:
1
,
2
< 0.
Un nodo inestable si las races son positivas:
1
,
2
> 0.
II. Races reales con signos opuestos:
1
,
2
R,
1

2
< 0. El diagrama de fases es un
punto de silla.
III. Races complejas no imaginarias puras: = a bi, a ,= 0. Obtenemos:
Un foco estable si la parte real es negativa: a < 0.
Un foco inestable si la parte real es positiva: a > 0.
IV. Races complejas imaginarias puras: = bi, b ,= 0. El diagrama de fases corres-
pondiente es un centro.
4.4 Teora geomtrica: el diagrama de fases 131
Ejemplo 4.20. Retomemos los ejemplos estudiados anteriormente para determinar la
conguracin del diagrama de fases de forma directa.
El sistema
_
x
/
= x,
y
/
= x + 2y,
tiene como polinomio caracterstico P() =
2
3 +2, cuyas races son
1
= 1
y
2
= 2. Al ser reales y del mismo signo, el diagrama de fases es un nodo; al
ser positivas, el nodo es inestable.
El polinomio caracterstico del sistema
_
x
/
= x y,
y
/
= x y,
es P() =
2
+ 2 + 2. Sus races son = 1 i, por lo que el diagrama de
fases es un foco. Como la parte real de las races es negativa, el foco es estable.
El sistema
_
x
/
= 2x + y,
y
/
= y,
tiene a P() =
2
2 como polinomio caracterstico. El diagrama de fases
correspondiente es un punto de silla, ya que las races
1
= 1 y
2
= 2 son
reales y de distinto signo.
Por ltimo, el polinomio caracterstico del sistema
_
x
/
= y,
y
/
= x,
es P() =
2
+ 1. Sus races son imaginarias puras: = i, por lo que el
diagrama de fases es un centro.
Los resultados son consistentes con los obtenidos en los ejemplos 4.164.19.
Notemos que las races del polinomio caracterstico nos proporcionan informacin
cualitativa sobre el diagrama de fases, es decir, nos dice cul es la estructura general
del diagrama pero sin precisar la forma exacta de sus rbitas. Para obtener esto lti-
mo, tendramos que resolver el sistema y dibujar las rbitas a partir de su expresin
explcita, tal y como hicimos en los ejemplos 4.164.19.
Consideramos a continuacin un ejemplo en el que se analiza el diagrama de fases
de un sistema que no verica la condicin det(A) ,= 0.
132 Sistemas de ecuaciones diferenciales
Ejemplo 4.21. Consideremos el sistema lineal
_
x
/
= x,
y
/
= x.
En este caso, la matriz de coecientes tiene determinante nulo. Los puntos crticos son
de la forma (0, y
0
), con y
0
R; esto es, el eje y est compuesto de puntos crticos.
Figura 4.11: Diagrama de fases del ejemplo 4.21.
Para determinar la solucin general, resolvemos la primera ecuacin de forma
directa:
x
/
= x x(t) = C
1
e
t
,
y a continuacin integramos en la segunda:
y
/
= x y(t) =
_
x(t)dt =
_
C
1
e
t
dt = C
1
e
t
+ C
2
.
Por tanto, resulta que la solucin general del sistema es
_
x(t) = C
1
e
t
,
y(t) = C
1
e
t
+ C
2
.
Observemos que para C
1
= 0 se obtiene la recta de puntos crticos x = 0. Para
C
1
,= 0 es claro que y = x +C
2
, por lo que las rbitas correspondientes sern rectas de
pendiente 1. Notemos que, independientemente del signo de C
1
, las rbitas se alejan
del eje x cuando t . La estructura del diagrama de fases puede apreciarse en la
gura 4.11.
4.5 Aplicaciones 133
4.5. Aplicaciones
4.5.1. Calentamiento de edicios
En la seccin 2.7.3 estudiamos un modelo de calentamiento de edicios en el que
se supona que la temperatura estaba uniformemente distribuida en el interior del
edicio. Dicho modelo es apropiado para estudiar el caso de un edicio con un nico
compartimento.
En esta seccin vamos a considerar un modo algo ms preciso de representar aquel
modelo, a saber:
_
_
_
T
/
(t) =
T(t) T
e
(t)
K
+ C
_
H(t) + U(t, T(t))
_
, t [0, t

],
T(0) = T
0
,
donde T(t) (en

C) denota la temperatura en el interior del edicio y T
e
(t) es la tem-
peratura en el exterior; la constante positiva K (en horas, h) es la constante de tiempo
de transferencia de calor, que depende de la calidad del aislamiento; C (en

C/kcal)
es la capacidad calorca del edicio, que depende de su tamao; H(t) (en kcal/h)
representa el calor generado por personas, luces, etc., en el interior del edicio; y
U(t, T(t)) (en kcal/h) denota los efectos del sistema de calefaccin o de aire acondi-
cionado, que dependen tanto del tiempo t como de la temperatura en cada instante
T(t); por ltimo, t

es el tiempo nal y T
0
denota la temperatura inicial del edicio.
Vamos a considerar ahora un edicio con varios compartimentos, cada uno de los
cuales puede tener una temperatura diferente a la del resto. Por simplicidad, ana-
lizaremos un modelo con dos compartimentos (gura 4.12), aunque la idea puede
extenderse para un nmero arbitrario de ellos.
Denotemos por T
i
(t), H
i
(t) y U
i
(t, T(t)) la temperatura, fuentes de calor y fuentes
de calefaccin/refrigeracin, respectivamente, del compartimento i = 1, 2. Sean C
1
y
C
2
las constantes de capacidad calorca de los compartimentos. K
i
es la constante de
tiempo de transferencia de calor correspondiente a las paredes que limitan el com-
partimento i-simo con el exterior. Asimismo, es necesario introducir las constantes
de tiempo de transferencia de calor entre ambos compartimentos, K
12
y K
21
; dichos
valores deben vericar la relacin C
1
K
12
= C
2
K
21
.
El sistema de ecuaciones diferenciales a considerar es el siguiente:
_

_
T
/
1
(t) =
T
1
(t) T
e
(t)
K
1
+ C
1
_
H
1
(t) + U
1
(t, T
1
(t))
_

1
K
12
(T
1
(t) T
2
(t)),
T
/
2
(t) =
T
2
(t) T
e
(t)
K
2
+ C
2
_
H
2
(t) + U
2
(t, T
2
(t))
_

1
K
21
(T
2
(t) T
1
(t)),
junto con las condiciones iniciales
_
T
1
(0) = T
1,0
,
T
2
(0) = T
2,0
,
134 Sistemas de ecuaciones diferenciales
T
e
(t)
K
1
K
2
C
1
C
2
T
1
(t)
T
2
(t)
U
1
(t,T)
H
1
(t)
U
2
(t,T)
H
2
(t)
K
12
K
21
Figura 4.12: Edicio con dos compartimentos.
siendo T
i,0
la temperatura inicial en el compartimento i = 1, 2.
Observacin. El trmino extra que aparece en la primera ecuacin,
1
K
12
(T
1
(t)
T
2
(t)), proviene de la ley del enfriamiento de Newton, y representa la prdida (si
T
1
(t) > T
2
(t)) o ganancia (si T
1
(t) < T
2
(t)) de calor en el primer compartimento a
travs de la pared que lo separa del segundo compartimento. Un trmino anlogo
aparece en la segunda ecuacin.
Ejemplo 4.22. Consideremos un edicio dividido en dos zonas, A y B. La zona A,
cuya capacidad calorca es de 5,5 10
4
C/kcal, se calienta mediante una estufa que
proporciona 2 10
4
kcal/h. La constante de tiempo para la transferencia de calor entre
la zona A y el exterior es de 4 horas, entre la zona B y el exterior es de 5 horas, y entre
las dos zonas es de 2 horas. Si la temperatura exterior es de 0

C, vamos a determinar
la temperatura mnima que se alcanza en la zona B al cabo de 4 horas, suponiendo
que las temperatura inicial en la zona A es de 10

C y en la zona B de 12

C.
Segn el enunciado del problema, se tiene que T
e
= 0, K
1
= 4, K
2
= 5, K
12
= K
21
=
2 y C
1
= 5,5 10
4
; C
2
puede calcularse a partir de la relacin C
1
K
12
= C
2
K
21
, aunque
no ser necesario. Por otra parte, tenemos que H
1
H
2
0, ya que no consideramos
el calor generado por personas o maquinaria en el interior del edicio. Por ltimo,
U
2
0 ya que no hay calefaccin en la zona B, y
C
1
U
1
=
_
5,5 10
4

C

kcal
_

_
2 10
4

kcal
h
_
= 11

C/h
para la zona A. El sistema de ecuaciones diferenciales queda pues de la siguiente
4.5 Aplicaciones 135
forma:
_
T
/
1
=
1
4
T
1

1
2
(T
1
T
2
) + 11,
T
/
2
=
1
5
T
2

1
2
(T
2
T
1
),
o bien
_
T
/
1
=
3
4
T
1
+
1
2
T
2
+ 11,
T
/
2
=
1
2
T
1

7
10
T
2
.
Podemos resolver el sistema mediante el mtodo de sustitucin. Derivamos en la
segunda ecuacin:
T
//
2
=
1
2
T
/
1

7
10
T
/
2
,
y sustituimos T
/
1
usando la primera ecuacin:
T
//
2
=
1
2
_

3
4
T
1
+
1
2
T
2
+ 11
_

7
10
T
/
2
.
Despejando T
1
de la segunda ecuacin y sustituyendo en la expresin anterior, se
obtiene:
T
//
2
+
29
20
T
/
2
+
11
40
T
2
=
11
2
.
Las races del polinomio caracterstico son
1
=
29+

401
40
y
2
=
29

401
40
. Tras
aplicar el mtodo de variacin de las constantes, llegamos a que la solucin general
de la ecuacin de segundo orden es
T
2
(t) = C
1
e

1
t
+ C
2
e

2
t
+
R

2
,
donde R =
11
2
es el trmino independiente. Por ltimo, a partir de la segunda ecuacin
podemos calcular T
1
:
T
1
(t) = C
1
(2
1
+
7
5
)e

1
t
+ C
2
(2
2
+
7
5
)e

2
t
+
7R
5
1

2
.
Las condiciones iniciales del problema son T
1
(0) = 10 y T
2
(0) = 12, lo que da
lugar a los valores
C
1
=
1

2
_

17
5
12
2
+
R

1
_
, C
2
=
1

1
_

17
5
12
1
+
R

2
_
.
En la gura 4.13 se representa la evolucin de las temperaturas en las zonas A y B
durante cuatro horas. Como puede observarse, la temperatura en la zona A aumenta
de forma continua hasta alcanzar una temperatura mxima de T
1
(4) 22,8

C. En
cambio, la temperatura en la zona B comienza disminuyendo y luego tiende a aumen-
tar hasta alcanzar una temperatura mxima de T
2
(4) 14,7

C. Si queremos calcular
la temperatura mnima en la zona B, podemos usar la derivada de T
2
:
T
/
2
(t) = 0
1
C
1
e

1
t
+
2
C
2
e

2
t
= 0 t =
1

2
ln
_

2
C
2

1
C
1
_
0,76.
136 Sistemas de ecuaciones diferenciales
Figura 4.13: Temperaturas en las zonas A y B.
En dicho instante se alcanza la temperatura mnima: T
2
(0,76) 10,92

C.
Vamos a resolver el problema usando Sage. En primer lugar, obtenemos la solucin
del sistema y la dibujamos:
sage: t = var(t)
sage: T1 = function(T1, t)
sage: T2 = function(T2, t)
sage: ec1 = diff(T1,t) + 3/4*T1 - 1/2*T2 - 11 == 0
sage: ec2 = diff(T2,t) - 1/2*T1 + (1/5+1/2)* T2 == 0
sage: [sol1 , sol2] = desolve_system ([ec1 , ec2], [T1 , T2],
ics=[0, 10, 12])
sage: sol1 = sol1.rhs()
sage: sol2 = sol2.rhs()
sage: fig1 = plot(sol1 , 0, 4, color = blue, legend_label=T1)
sage: fig2 = plot(sol2 , 0, 4, color = green, legend_label=T2)
sage: show(fig1 + fig2)
El resultado puede verse en la gura 4.13. A continuacin, calculamos la temperatura
mxima en la zona A y el instante en que se alcanza:
sage: sol1.find_maximum_on_interval (0, 4)
(22.846076301719574 , 3.9999998801867243)
as como la temperatura mnima en la zona B y su instante correspondiente:
sage: sol1.find_maximum_on_interval (0, 4)
(10.92326505335898 , 0.76403288092266153)
4.5.2. Ms sobre vibraciones mecnicas
En la seccin 3.9.1 estudiamos el comportamiento de un mvil de masa m
1
sujeto
por un muelle de constante elstica k
1
a una pared. Supongamos ahora que a dicho
4.5 Aplicaciones 137
mvil se le une otro mvil de masa m
2
mediante un muelle de constante k
2
. Llamemos
x
1
(t) y x
2
(t), respectivamente, a los desplazamientos de los mviles respecto de sus
posiciones de equilibrio, 0
1
y 0
2
. En la gura 4.14 se esquematiza el planteamiento del
problema. Supondremos que sobre el sistema no acta ninguna otra fuerza.
x
2
(t)
0
2
0
1
k
2
k
1
m
2
m
1
+ +
x
1
(t)
Figura 4.14: Vibraciones mecnicas: planteamiento del sistema.
La fuerza que ejerce un muelle sobre un mvil es proporcional a la elongacin del
muelle y opuesta al movimiento (ley de Hooke). As pues, las fuerzas ejercidas por los
muelles sobre el mvil de masa m
1
son de la forma k
1
x
1
y k
2
(x
2
x
1
). Asimismo,
sobre el muelle de masa m
2
se ejerce una fuerza de la forma k
2
(x
2
x
1
).
A partir de la segunda ley de Newton podemos deducir las ecuaciones del movi-
miento:
_
m
1
x
//
1
= k
1
x
1
+ k
2
(x
2
x
1
),
m
2
x
//
2
= k
2
(x
2
x
1
),
que pueden escribirse de la siguiente forma:
_
m
1
x
//
1
= (k
1
+ k
2
)x
1
+ k
2
x
2
,
m
2
x
//
2
= k
2
x
1
k
2
x
2
.
Para plantear un problema de Cauchy, es necesario jar las posiciones y velocidades
iniciales de ambos mviles:
x
1
(0) = x
1
, x
/
1
(0) = v
1
, x
2
(0) = x
2
, x
/
2
(0) = v
2
.
Las ecuaciones del movimiento forman un sistema de dos ecuaciones de segundo
orden. Para pasar a una sla ecuacin diferencial, comenzamos derivando dos veces
la primera ecuacin
m
1
x
(4)
1
= (k
1
+ k
2
)x
//
1
+ k
2
x
//
2
,
138 Sistemas de ecuaciones diferenciales
y sustituimos x
//
2
usando la segunda ecuacin:
m
1
x
(4)
1
= (k
1
+ k
2
)x
//
1
+
k
2
2
m
2
x
1

k
2
2
m
2
x
2
.
A continuacin, despejamos x
2
de la primera ecuacin
x
2
=
m
1
k
2
x
//
1
+
k
1
+ k
2
k
2
x
1
, (4.1)
y sustituimos en la expresin anterior:
m
1
x
(4)
1
= (k
1
+ k
2
)x
//
1
+
k
2
2
m
2
x
1

k
2
2
m
2
_
m
1
k
2
x
//
1
+
k
1
+ k
2
k
2
x
1
_
.
Por ltimo, pasamos todos los trminos al primer miembro y simplicamos:
m
1
x
(4)
1
+
_
k
1
+ k
2
+
k
2
m
1
m
2
_
x
//
1
+
k
1
k
2
m
2
x
1
= 0.
Esta ecuacin de cuarto orden determina el movimiento del mvil de masa m
1
. Una
vez calculada la solucin x
1
, usamos la relacin (4.1) para determinar el comporta-
miento del mvil de masa m
2
.
Figura 4.15: Grcas de x
1
(t) y x
2
(t).
Consideremos un caso particular: supongamos que los valores de las constantes
son m
1
= 2, m
2
= 1, k
1
= 4 y k
2
= 2, sin preocuparnos del sistema de unidades
utilizado. En tal caso, la ecuacin de cuarto orden sera
2x
(4)
1
+ 10x
//
1
+ 8x
1
= 0 x
(4)
1
+ 5x
//
1
+ 4x
1
= 0.
4.5 Aplicaciones 139
La correspondiente ecuacin caracterstica es

4
+ 5
2
+ 4 = 0.
Haciendo el cambio =
2
obtenemos una ecuacin polinomial de segundo orden,
que podemos resolver fcilmente:

2
+ 5 + 4 = 0 = 1, = 4.
Deshaciendo el cambio, resulta
= 1 = i, = 4 = 2i.
Por tanto, la solucin general para x
1
es
x
1
(t) = C
1
cos(t) + C
2
sen(t) + C
3
cos(2t) + C
4
sen(2t).
Usando (4.1), determinamos la solucin general para x
2
:
x
2
(t) = 2C
1
cos(t) + 2C
2
sen(t) C
3
cos(2t) C
4
sen(2t).
Supongamos ahora que tenemos las siguientes condiciones iniciales:
x
1
(0) = 1, x
/
1
(0) = 1, x
2
(0) = 1, x
/
2
(0) = 0.
Es decir, el primer mvil se desplaza una unidad hacia la izquierda y el segundo una
unidad hacia la derecha respecto de sus posiciones de equilibrio; adems, al primer
mvil se le imprime una velocidad inicial positiva de mdulo uno, mientras que el
segundo se suelta sin velocidad inicial. La imposicin de las condiciones iniciales
conduce a
C
1
+ C
3
= 1
C
2
+ 2C
4
= 1
2C
1
C
3
= 1
C
2
C
4
= 0
_

_
C
1
= 0, C
2
=
1
3
, C
3
= 1, C
4
=
1
3
.
Por tanto, se obtienen las soluciones
x
1
(t) =
1
3
sen(t) cos(2t) +
1
3
sen(2t), x
2
(t) =
2
3
sen(t) + cos(2t)
1
3
sen(2t),
que se representan en la gura 4.15.
La solucin obtenida representa un movimiento peridico de ambos mviles alre-
dedor de sus respectivas posiciones de equilibrio.
140 Sistemas de ecuaciones diferenciales
4.5.3. El pndulo amortiguado
Consideremos un pndulo de longitud L y masa m, y llamemos x(t) al ngulo que
forma el pndulo con la vertical en el instante t (vase la gura 4.16); supondremos
que el origen se halla en la posicin de equilibrio del pndulo. La ecuacin del mo-
vimiento puede deducirse a partir de la segunda ley de Newton, y tiene la siguiente
expresin:
x
//
+
g
L
sen(x) = 0,
siendo g la constante gravitatoria. Introduzcamos una fuerza de amortiguacin o ro-
zamiento proporcional a la velocidad del pndulo. En tal caso, la ecuacin del movi-
miento es
x
//
+
a
m
x
/
+
g
L
sen(x) = 0,
siendo a > 0 la constante de rozamiento. Introduciendo la variable y = x
/
(velocidad),
la ecuacin anterior puede escribirse como un sistema no lineal:
_
_
_
x
/
= y,
y
/
=
g
L
sen(x)
a
m
y.
m
L
0
g
x(t)
Figura 4.16: Sistema de referencia del problema del pndulo.
Es bien sabido que
lm
x0
sen(x)
x
= 1,
4.5 Aplicaciones 141
lo que signica que, para valores de x cercanos a 0, sen(x) puede aproximarse por x.
Podemos entonces considerar la siguiente aproximacin del sistema no lineal:
_
_
_
x
/
= y,
y
/
=
g
L
x
a
m
y.
Se trata de un sistema lineal que representa el movimiento del pndulo para pequeas
oscilaciones alrededor del punto de equilibrio.
El determinante de la matriz de coecientes del sistema es

0 1
g/L a/m

=
g
L
,= 0,
por lo que el origen es el nico punto crtico. Para determinar la conguracin del
diagrama de fases, consideremos la ecuacin caracterstica

2
+
a
m
+
g
L
= 0,
cuyas races son
=
a
2m

1
2
_
a
2
m
2
4
g
L
.
Hemos de distinguir pues tres casos:
a
2
m
2
> 4
g
L
. En tal caso las races son reales, distintas y negativas, por lo que se
obtiene un nodo estable.
a
2
m
2
= 4
g
L
. Se tiene una raz real doble negativa, por lo que el diagrama de fases
es un nodo estable.
a
2
m
2
< 4
g
L
. Ahora las races son complejas con parte real negativa, por lo que
tenemos un foco estable.
En cualquiera de los casos, el origen es un punto crtico estable. Este hecho puede
interpretarse del siguiente modo: si el pndulo se encuentra inicialmente en equilibrio
y se perturba ligeramente su posicin o su velocidad, el movimiento resultante se
extinguir con el paso del tiempo.
En el caso en que no haya rozamiento (a = 0), las races del polinomio caracters-
tico son de la forma
=
1
2
_
4
g
L
= i
_
g
L
.
Al ser imaginarias puras, la conguracin del diagrama de fases corresponde a un
centro. Su interpretacin en trminos fsicos corresponde a un movimiento oscilatorio
perpetuo alrededor de la posicin de equilibrio.
142 Sistemas de ecuaciones diferenciales
CAPTULO
5
MTODOS NUMRICOS PARA
PROBLEMAS DE VALOR INICIAL
5.1. Introduccin
En los captulos anteriores hemos estudiado diversas tcnicas para la resolucin
analtica de ecuaciones diferenciales ordinarias. Dichas tcnicas son slo aplicables a
determinados tipos de ecuaciones: homogneas, lineales, exactas, etc. Sin embargo, la
mayora de ecuaciones que aparecen en problemas cientcos y tcnicos no pueden
resolverse de forma exacta. Adems, en determinados casos puede ocurrir que la
complejidad de la solucin exacta sea tal, que aun pudindose calcular de forma
explcita no seamos capaces de interpretarla adecuadamente.
En los casos en que no sea posible resolver de forma exacta una ecuacin diferen-
cial, podemos plantearnos la obtencin de una aproximacin sucientemente buena
de la solucin. Esta solucin, denominada solucin numrica, se determina mediante
un mtodo o algoritmo numrico que se ejecutar con la ayuda de un ordenador. Este
es el camino habitual que se sigue en las aplicaciones cientcas y tcnicas, donde
surgen ecuaciones no lineales de difcil o imposible resolucin analtica.
En este captulo vamos a presentar una serie de tcnicas para la obtencin de
soluciones numricas de problemas de valor inicial (los problemas de contorno se
tratarn en el captulo 6) que pueden aplicarse tanto a ecuaciones escalares como
a sistemas de ecuaciones. Dichas tcnicas forman parte de una de las ramas de las
144 Mtodos numricos para problemas de valor inicial
Matemticas conocida como Anlisis Numrico.
Nos centraremos en el estudio de un problema de valor inicial de primer orden:
_
y
/
(x) = f (x, y(x)), x [a, b],
y(a) = y
0
.
Supondremos que la funcin f (x, y) verica las condiciones del teorema de existencia
y unicidad (vase la seccin 2.6), por lo que el problema de valor inicial posee una

IJnica solucin.
Consideremos una discretizacin o mallado del intervalo [a, b], esto es, una particin
del mismo de la forma
a = x
0
< x
1
< x
2
< < x
N1
< x
N
= b.
Por simplicidad, supondremos que el mallado es uniforme: la longitud de cada subin-
tervalo [x
k
, x
k+1
], k = 0, . . . , N 1, es igual a un cierto valor h > 0 jo. De esta forma,
se verica la siguiente relacin:
x
k+1
= x
k
+ h, k = 0, . . . , N 1.
El valor h se denomina paso de malla y los puntos x
k
son los nodos del mallado. Ntese
que la relacin entre el paso de malla h y el nmero de subintervalos N es la siguiente:
h =
b a
N
.
Observacin. El paso de malla juega un papel fundamental en el anlisis de los m-
todos numricos que vamos a presentar. Intuitivamente, mientras menor sea el paso
de malla (esto es, mientras ms puntos tenga el mallado) mejor ser la aproximacin
de la solucin.
Observacin. En la prctica se ja el nmero de subintervalos N, que debe ser un
nmero entero, y despus se dene el paso de malla usando la relacin h =
ba
N
. No-
temos que si damos directamente el paso de malla h y denimos N =
ba
h
, podramos
obtener un valor no entero.
Un mtodo numrico para la resolucin del problema de valor inicial es un algoritmo
que permite obtener, para cada nodo x
k
del mallado, una aproximacin y
k
del valor
de la solucin exacta en el nodo, y(x
k
):
y
k
y(x
k
), k = 0, . . . , N.
El conjunto de puntos
y
1
, y
2
, . . . , y
N

5.2 El mtodo de Euler 145


Figura 5.1: Comparacin entre la solucin exacta del problema y
/
=
xy
2
, y(0) = 1, y el
resultado obtenido con el mtodo de Euler con paso de malla h = 0,1.
se denomina solucin numrica. Ntese que el primer valor de la solucin numrica es
siempre exacto, y
0
= y(a), por tratarse de la condicin inicial del problema.
El error local cometido en cada nodo se dene como
e
k
= [y(x
k
) y
k
[, k = 0, 1, . . . , N.
Si queremos considerar un error global, que involucre a toda la solucin numrica,
podemos denir
e = m ax
k=0,1,...,N
e
k
= m ax
k=0,1,...,N
[y(x
k
) y
k
[.
Notemos que el error e depende del paso de malla h; si queremos hacer resaltar esta
dependencia, escribiremos e(h) en lugar de e. Una propiedad deseable de cualquier
mtodo numrico es que el error tienda a cero cuando el paso de malla decrezca, esto
es:
lm
h0
e(h) = 0.
Cuando esto sucede, diremos que el mtodo es convergente. Intuitivamente signi-
ca que al aumentar progresivamente el nmero de puntos de la particin (esto es,
al hacer el paso de malla cada vez ms pequeo), las correspondientes soluciones
numricas van reconstruyendo la solucin exacta del problema.
5.2. El mtodo de Euler
El mtodo de Euler se fundamenta en una sencilla idea geomtrica: aproximar el
valor de la solucin en cada nodo por el valor que proporciona la recta tangente a la
solucin trazada desde el nodo anterior.
146 Mtodos numricos para problemas de valor inicial
Comenzamos construyendo la recta tangente a la solucin exacta y(x) del proble-
ma de valor inicial
_
y
/
(x) = f (x, y(x)), x [a, b],
y(a) = y
0
,
en el punto (x
0
, y
0
):
y = y
0
+ y
/
(x
0
)(x x
0
).
Evaluemos ahora dicha recta en el nodo x
1
= x
0
+ h y llamemos y
1
al resultado
obtenido:
y
1
= y
0
+ y
/
(x
0
)(x
1
x
0
) y
1
= y
0
+ hy
/
(x
0
).
Teniendo que cuenta que y(x) es solucin de la ecuacin diferencial, podemos susti-
tuir el valor y
/
(x
0
) por f (x
0
, y(x
0
)):
y
1
= y
0
+ h f (x
0
, y(x
0
)).
Por ltimo, haciendo uso de la condicin inicial y teniendo en cuenta que x
0
= a,
deducimos que
y
1
= y
0
+ h f (x
0
, y
0
).
Esta es la primera iteracin o paso del mtodo de Euler. En la gura 5.2 se representa
la idea geomtrica del mtodo.
y
(x
1
, y(x
1
))
(x
0
, y
0
)
(x
1
, y
1
)
x
x
0
x
1
y
1
y(x
1
)
e
1
h
Figura 5.2: Interpretacin geomtrica del mtodo de Euler.
Observacin. Notemos que el valor y
1
puede determinarse, ya que x
0
, y
0
y f (x, y)
son datos del problema, y h es conocido.
5.2 El mtodo de Euler 147
El valor y
1
es la aproximacin que proporciona el mtodo de Euler al valor exacto
de la solucin en x
1
:
y
1
y(x
1
),
siendo el error cometido
e
1
= [y(x
1
) y
1
[.
Una vez construido el punto (x
1
, y
1
), consideramos el problema de valor inicial
_
y
/
(x) = f (x, y(x)), x [x
1
, b],
y(x
1
) = y
1
,
y repetimos el proceso anterior para obtener una aproximacin y
2
en el nodo x
2
=
x
1
+ h. Dicha aproximacin tendr la forma
y
2
= y
1
+ h f (x
1
, y
1
).
Observacin. Ntese que la solucin de este nuevo problema de valor inicial no tiene
por qu ser la misma solucin del problema original, ya que la condicin inicial es dis-
tinta. Sin embargo, si la funcin f (x, y) es sucientemente regular, puede demostrarse
que las soluciones a ambos problemas son sucientemente aproximadas.
Eulers Method (E342), Inst. Calc. Integralis 1768, 650:
!1
1
A
B
C
h = 1/4
p.6/64
Figura 5.3: Publicacin original del mtodo de Euler. E342, Inst. Calc. Integralis 1768, 650.
El proceso anterior se repite hasta llegar al ltimo nodo x
N
= b, obtenindose as
una serie de valores aproximados
y
1
, y
2
, . . . , y
N

que forman la solucin numrica. Dicha solucin depender del paso de malla h
elegido.
Estamos ya en condiciones de denir la forma general del mtodo de Euler:
y
k+1
= y
k
+ h f (x
k
, y
k
), k = 0, 1, . . . , N 1,
donde los valores iniciales x
0
e y
0
vienen dados por la condicin inicial del problema.
Cada valor y
k
proporciona una aproximacin del valor exacto de la solucin en el
nodo x
k
:
y
k
y(x
k
), k = 0, 1, . . . , N,
148 Mtodos numricos para problemas de valor inicial
siendo el error cometido
e
k
= [y(x
k
) y
k
[, k = 0, 1, . . . , N,
Observacin. Adems del error e
k
anteriormente denido, denominado error de dis-
cretizacin, en la prctica tambin hay que tener en cuenta los errores de redondeo que
provienen de la representacin de los nmeros reales en el ordenador con una canti-
dad nita de cifras decimales.
Ejemplo 5.1. Consideremos el problema de valor inicial
_
y
/
=
1
2
(x
2
y), x [0, 1],
y(0) = 1,
cuya solucin exacta, obtenida mediante separacin de variables, es
y(x) = x
2
4x + 8 7e
x/2
.
El mtodo de Euler tiene en este caso la siguiente forma:
y
k+1
= y
k
+
h
2
(x
2
k
y
k
), k = 0, 1, . . . , N 1,
donde h = 1/N.
En la tabla 5.1 se muestran, con una precisin de seis cifras decimales, los valores
obtenidos con el mtodo de Euler para N = 10 (paso de malla h = 0,1), as como los
valores exactos de la solucin y los errores cometidos. En este caso, el error global es
igual a e = 0,025697.
En la gura 5.4 se representan la solucin exacta del problema y la solucin numrica
obtenida.
Existe una implementacin del mtodo de Euler en Sage, cuyo uso se ilustra en el
siguiente cdigo:
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # numero de particiones
sage: h = (b-a)/N # paso de malla
sage: eulers_method(fun , a, y0 , h, b)
x y h*f(x,y)
0.000000000000000 1.00000000000000 -0.0500000000000000
0.100000000000000 0.950000000000000 -0.0470000000000000
0.200000000000000 0.903000000000000 -0.0431500000000000
0.300000000000000 0.859850000000000 -0.0384925000000000
0.400000000000000 0.821357500000000 -0.0330678750000000
0.500000000000000 0.788289625000000 -0.0269144812500000
0.600000000000000 0.761375143750000 -0.0200687571875000
0.700000000000000 0.741306386562500 -0.0125653193281250
0.800000000000000 0.728741067234375 -0.00443705336171875
0.900000000000000 0.724304013872656 0.00428479930636718
1.00000000000000 0.728588813179023 0.0135705593410488
5.2 El mtodo de Euler 149
k x
k
y
k
y(x
k
) e
k
0 0,0 1,000000 1,000000 0,000000
1 0,1 0,950000 0,951394 0,001394
2 0,2 0,903000 0,906138 0,003138
3 0,3 0,859850 0,865044 0,005194
4 0,4 0,821357 0,828885 0,007527
5 0,5 0,788290 0,798395 0,010105
6 0,6 0,761375 0,774272 0,012897
7 0,7 0,741306 0,757183 0,015877
8 0,8 0,728741 0,747760 0,019019
9 0,9 0,724304 0,746603 0,022299
10 1,0 0,728589 0,754285 0,025697
Tabla 5.1: Mtodo de Euler: solucin del ejemplo 5.1 con paso h = 0,1.
Vamos a representar en una misma grca el resultado obtenido y la solucin exacta.
Para ello, hagamos lo siguiente:
sage: sol = eulers_method(fun , a, y0, h, b, method=None)
sage: sol
[[0.000000000000000 , 1.00000000000000] ,
[0.100000000000000 , 0.950000000000000] ,
[0.200000000000000 , 0.903000000000000] ,
[0.300000000000000 , 0.859850000000000] ,
[0.400000000000000 , 0.821357500000000] ,
[0.500000000000000 , 0.788289625000000] ,
[0.600000000000000 , 0.761375143750000] ,
[0.700000000000000 , 0.741306386562500] ,
[0.800000000000000 , 0.728741067234375] ,
[0.900000000000000 , 0.724304013872656] ,
[1.00000000000000 , 0.728588813179023] ,
[1.10000000000000 , 0.742159372520072]]
Como vemos, se ha calculado un punto de ms. Podemos eliminarlo as:
sage: sol.pop(-1) # quitamos el elemento final de la lista
A continuacin dibujamos los puntos obtenidos unidos por segmentos y la solucin
exacta del problema:
sage; # dibujamos los puntos obtenidos
sage: fig1 = list_plot(sol , color=blue, legend_label=Euler )
sage: # y los unimos con segmentos
sage: fig1 += line(sol)
sage: #
sage: # Calculo de la solucio n exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0]); expand(sol_exacta)
x^2 - 4*x - 7*e^( -1/2*x) + 8
sage: #
150 Mtodos numricos para problemas de valor inicial
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
El resultado puede contemplarse en la gura 5.4. Por ltimo, si queremos determinar
el error global cometido, ejecutamos las siguientes instrucciones:
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
Error = 0.0256965688325422
Alternativamente, en el siguiente cdigo
1
se realiza una implementacin del m-
todo de Euler y se aplica para resolver el problema anterior:
sage: # Metodo de Euler
sage: def euler(fun , a, b, N, y0):
h = (b-a)/N # paso de malla
x = [a] # primer nodo
y = [y0] # valor inicial
for k in range(N):
x.append(x[k]+h)
y.append(y[k]+h*fun(x[k], y[k]))
return zip(x, y)
sage: #
sage: ### Programa principal ###
sage: #
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # numero de particiones
sage: sol = euler(fun , a, b, N, y0) # metodo de Euler
sage: #
sage: # solucio n exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0])
sage: #
sage: # errores
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
sage: #
sage: # graficas
sage: fig1 = list_plot(sol , color=blue, legend_label=Euler ,
size=20)
sage: fig1 += line(sol , color=blue)
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
Error = 0.0256965688325422
Si queremos ver los errores cometidos en cada nodo, basta con escribir error en la
lnea de comandos:
1
Es interesante sealar que Sage est basado en el lenguaje de programacin Python. En particular,
la denicin del mtodo de Euler utiliza la sintaxis propia de dicho lenguaje.
5.2 El mtodo de Euler 151
sage: error
[0.000000000000000 , 0.00139402849500125 , 0.00313807374828301 ,
0.00519416502459535 , 0.00752722845412812 , 0.0101048935001661 ,
0.0128973114779739 , 0.0158769854065062 , 0.0190186105161513 ,
0.0222989247749311 , 0.0256965688325422]
Asimismo, para ver los valores de los nodos y de las soluciones aproximadas, basta
con escribir sol.
Figura 5.4: Soluciones numrica y exacta del ejemplo 5.1.
El siguiente teorema proporciona un resultado bsico relativo al mtodo de Euler.
Teorema. Supngase que la funcin f (x, y) es de clase C
1
en [a, b] R, y consideremos el
problema de valor inicial
_
y
/
(t) = f (x, y(x)), x [a, b],
y(a) = y
0
.
Existe entonces una constante C > 0, independiente del paso de malla h, tal que
e(h) Ch,
donde e(h) es el error global cometido al aproximar la nica solucin del problema de valor
inicial mediante el mtodo de Euler con paso de malla h. Como consecuencia, el mtodo de
Euler es convergente, en el siguiente sentido:
lm
h0
e(h) = 0.
152 Mtodos numricos para problemas de valor inicial
Observacin. En la prctica, la desigualdad e(h) Ch se interpreta como
e(h) Ch,
es decir, el error cometido con paso de malla h se comporta como Ch. Al respecto, existe
una notacin que ayuda a recordar esta interpretacin: cuando existe C > 0 tal que
e(h) Ch se dice que
e(h) = O(h)
(se lee e(h) es o grande de h).
Cuando un mtodo numrico verica una condicin del tipo e(h) Ch, se dice
que el mtodo tiene orden uno. Para comprender la idea intuitiva que hay detrs de
este concepto, supongamos que se aplica el mtodo de Euler con pasos de malla h
1
y
h
2
, siendo h
2
= h
1
/2. En tal caso, se tiene:
e(h
1
) Ch
1
e(h
2
) Ch
2
_

e(h
1
)
e(h
2
)

Ch
1
Ch
2
=
h
1
h
2
= 2 e(h
2
)
e(h
1
)
2
.
Es decir, al dividir por dos el paso de malla el error tambin se divide aproximada-
mente por dos. En general, al dividir el paso de malla por un cierto valor M el error
obtenido tambin se dividir aproximadamente por M.
Observacin. En general, un mtodo numrico tiene orden p si existe una constante
C > 0 tal que
e(h) Ch
p
.
Razonando como antes, podemos deducir que
e(h
1
)
e(h
2
)

Ch
p
1
Ch
p
2
=
_
h
1
h
2
_
p
= 2
p
e(h
2
)
e(h
1
)
2
p
.
Tomando logaritmos y despejando p, se obtiene una frmula para determinar el orden
del mtodo:
p
ln(e(h
1
)/e(h
2
))
ln2
, con h
2
=
h
1
2
.
En el siguiente ejemplo se comprueba empricamente que el mtodo de Euler tiene
orden uno.
Ejemplo 5.2. Consideremos el problema del ejemplo 5.1. Habamos visto que el error
global obtenido con paso de malla h = 0,1 (N = 10) era
e(0,1) = 0,025697.
Doblemos ahora el nmero de subintervalos (N = 20) o, lo que es lo mismo, divida-
mos entre dos el paso de malla (h = 0,05). Al aplicar el mtodo de Euler se obtiene
un error global igual a
e(0,05) = 0,012830.
5.2 El mtodo de Euler 153
Observemos que
e(0,1)
e(0,05)
= 2,002792 2 e(0,05)
e(0,1)
2
,
es decir, al dividir entre dos el paso de malla el error cometido se divide aproxima-
damente entre dos. Por otra parte, al aplicar la frmula para aproximar el orden se
obtiene:
p
ln(0,025697/0,012830)
ln2
1,002079 1.
Al realizar el experimento un cierto nmero de veces se obtienen los resultados de
la tabla 5.2, donde en la penltima columna se escriben los cocientes entre dos errores
consecutivos, y en la ltima las correspondientes aproximaciones del orden.
N h e(h) cocientes orden
10 0,100000 0,025697
20 0,050000 0,012830 2,002792 1,002012
40 0,025000 0,006410 2,001471 1,001061
80 0,012500 0,003204 2,000753 1,000543
160 0,006250 0,001602 2,000381 1,000275
Tabla 5.2: Estudio del orden del mtodo de Euler.
Como puede verse, estas aproximaciones tienden a 1, que es el orden del mtodo de
Euler.
Una consecuencia inmediata de la condicin e(h) Ch, como arma la segunda
parte del teorema, es que el mtodo de Euler es convergente. En efecto:
0 lm
h0
e(h) lm
h0
Ch = C lm
h0
h = 0 lm
h0
e(h) = 0.
La idea intuitiva es que, conforme el paso de malla tiende a cero, la solucin numrica
converge hacia la solucin analtica. Este hecho se ilustra en el siguiente ejemplo.
Ejemplo 5.3. Consideremos de nuevo el problema del ejemplo 5.1. En la tabla 5.3 se
muestran los errores obtenidos con una serie de pasos de malla que tienden a cero.
Como puede observarse, dichos errores se van aproximando a cero.
Asimismo, en la gura 5.5 se representan la solucin exacta y las soluciones apro-
ximadas con pasos de malla 10
1
y 10
2
(el resto de las soluciones son indistinguibles
de la solucin exacta en la gura). Observamos que mientras menor es el paso de
malla, ms se aproxima la solucin numrica a la solucin exacta.
154 Mtodos numricos para problemas de valor inicial
N h e(h)
10 10
1
2,5697 10
2
10
2
10
2
2,5630 10
3
10
3
10
3
2,5623 10
4
10
4
10
4
2,5626 10
5
10
5
10
5
2,5622 10
6
10
6
10
6
2,5623 10
7
Tabla 5.3: Convergencia del mtodo de Euler.
Figura 5.5: Soluciones numricas y exacta del ejemplo 5.3.
5.3. Mtodos de orden superior
Comenzaremos esta seccin dando una interpretacin fsica del mtodo de Euler.
Para ello, consideremos una partcula cuya posicin en el instante x denotaremos
por y(x). Supongamos que la velocidad de la partcula puede expresarse como una
funcin f (x, y), dependiente del tiempo x y la posicin y. En tal caso, y(x) es solucin
de la ecuacin diferencial
y
/
= f (x, y).
La primera iteracin del mtodo de Euler se puede escribir como
y
1
= y
0
+ (x
1
x
0
) f (x
0
, y
0
),
donde x
1
x
0
= h es el paso de malla. El punto y
0
representa la posicin inicial de
la partcula e y
1
su posicin nal. El trmino f (x
0
, y
0
) puede interpretarse como la
velocidad inicial de la partcula, mientras que x
1
x
0
es el tiempo transcurrido. El
5.3 Mtodos de orden superior 155
producto (x
1
x
0
) f (x
0
, y
0
) representa por tanto el espacio recorrido por la partcula
entre los instantes x
0
y x
1
, si se supone que sta viaja siempre a velocidad f (x
0
, y
0
).
Estamos pues aproximando la posicin nal de la partcula como la posicin inicial
ms el espacio recorrido al viajar a una velocidad constante igual a la velocidad inicial.
Esta es la interpretacin cintica del mtodo de Euler.
En lugar de considerar la velocidad inicial f (x
0
, y
0
) como estimacin de la velo-
cidad en el intervalo [x
0
, x
1
], podramos considerar una aproximacin distinta. Por
ejemplo, podramos pensar en utilizar la media de las velocidades inicial y nal, la
velocidad en el punto medio, o incluso un promedio general de velocidades. Al consi-
derar cada una de estas posibilidades se obtienen diferentes mtodos numricos, que
presentaremos a continuacin.
5.3.1. Mtodo de Heun o de Euler mejorado
Consideremos la media entre las velocidades inicial f (x
0
, y
0
) y nal f (x
1
, y
1
) de
la partcula. Podemos entonces escribir la aproximacin y
1
de la posicin nal de la
siguiente forma:
y
1
= y
0
+ (x
1
x
0
)
f (x
0
, y
0
) + f (x
1
, y
1
)
2
y
1
= y
0
+
h
2
( f (x
0
, y
0
) + f (x
1
, y
1
)).
Notemos que el trmino f (x
1
, y
1
) depende explcitamente de y
1
, que es desconocido
a priori. Para solventar este problema, podemos aproximar el valor de y
1
en f (x
1
, y
1
)
mediante una iteracin del mtodo de Euler, que denotaremos por p
1
:
p
1
= y
0
+ h f (x
0
, y
0
) f (x
1
, y
1
) f (x
1
, p
1
).
Obtenemos de esta forma:
y
1
= y
0
+
h
2
( f (x
0
, y
0
) + f (x
1
, p
1
)),
que es la primera iteracin del mtodo de Heun.
La expresin general del mtodo de Heun o de Euler mejorado es la siguiente:
_
_
_
p
k+1
= y
k
+ h f (x
k
, y
k
),
y
k+1
= y
k
+
h
2
( f (x
k
, y
k
) + f (x
k+1
, p
k+1
)), k = 0, 1, . . . , N 1.
Notemos que el punto x
k+1
= x
k
+ h es conocido en cada paso.
Observacin. El mtodo de Heun es un ejemplo de mtodo predictor-corrector. El valor
p
k+1
se interpreta como una prediccin para el valor buscado y(x
k+1
), que luego se
corrige para obtener el valor nal y
k+1
.
156 Mtodos numricos para problemas de valor inicial
Puede probarse que el mtodo de Heun es de orden dos: existe una constante
C > 0, independiente del paso de malla h, tal que
e(h) Ch
2
,
(o dicho de otro modo, e(h) = O(h
2
)) siendo e(h) el error global obtenido al aproxi-
mar la solucin mediante el mtodo de Heun con paso de malla h. Como consecuen-
cia, el mtodo de Heun es convergente.
Al ser el mtodo de Heun de orden dos, al dividir el paso de malla entre dos
el error cometido se dividir aproximadamente entre 2
2
= 4. Por tanto, el mtodo
de Heun proporciona un resultado ms preciso que el mtodo de Euler, si en am-
bos usamos el mismo paso de malla. Estos hechos quedarn patentes en el siguiente
ejemplo.
Ejemplo 5.4. Retomemos el problema del ejemplo 5.1. Al aplicar el mtodo de Heun
para resolverlo con paso de malla h = 0, 1, se obtienen los resultados de la tabla 5.4.
Si comparamos estos resultados con los de la tabla 5.1, vemos que la precisin del
mtodo de Heun es superior a la del mtodo de Euler.
k t
k
x
k
y(x
k
) e
k
0 0,0 1,000000 1,000000 0,000000
1 0,1 0,951500 0,951394 1,0597 10
4
2 0,2 0,906352 0,906138 2,1380 10
4
3 0,3 0,865367 0,865044 3,2306 10
4
4 0,4 0,829318 0,828885 4,3334 10
4
5 0,5 0,798939 0,798395 5,4429 10
4
6 0,6 0,774928 0,774272 6,5559 10
4
7 0,7 0,757950 0,757183 7,6693 10
4
8 0,8 0,748638 0,747760 8,7805 10
4
9 0,9 0,747591 0,746603 9,8870 10
4
10 10,0 0,755384 0,754285 1,0987 10
3
Tabla 5.4: Mtodo de Heun: solucin del ejemplo 5.1 con paso h = 0,1.
En la gura 5.6 se comparan grcamente los resultados obtenidos con los mto-
dos de Euler y Heun.
Los resultados obtenidos al dividir sucesivamente entre dos el paso de malla se
muestran en la tabla 5.5 . Como puede comprobarse, el cociente entre errores sucesivos
tiende a 2
2
= 4 y las aproximaciones del orden convergen hacia 2.
El mtodo de Heun no viene implementado en Sage, por lo que es necesario pro-
gramarlo directamente. El siguiente cdigo Sage, que incluye una implementacin del
mtodo de Heun, se ha utilizado para generar parte de la gura 5.6:
5.3 Mtodos de orden superior 157
Figura 5.6: Ejemplo 5.4: resultados obtenidos con los mtodos de Euler y Heun.
N h e(h) cocientes orden
10 0,100000 1,0987 10
3

20 0,050000 2,7270 10
4
4,028877 2,010378
40 0,025000 6,7926 10
5
4,014620 2,005263
80 0,012500 1,6950 10
5
4,007353 2,002650
160 0,006250 4,2337 10
6
4,003687 2,001329
Tabla 5.5: Estudio del orden del mtodo de Heun.
sage: # Metodo de Heun
sage: def heun(fun , a, b, N, y0):
h = (b-a)/N # paso de malla
x = [a] # primer nodo
y = [y0] # valor inicial
for k in range(N):
x.append(x[k]+h)
aux = fun(x[k], y[k])
p = y[k]+h*aux # prediccio n
y.append(y[k]+(h/2)*( aux+fun(x[k]+h, p))) # correccio n
return zip(x, y)
sage: #
sage: ### Programa principal ###
sage: #
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # numero de particiones
158 Mtodos numricos para problemas de valor inicial
sage: sol = heun(fun , a, b, N, y0) # metodo de Heun
sage: #
sage: # solucio n exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0])
sage: #
sage: # errores
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
sage: #
sage: # graficas
sage: fig1 = list_plot(sol , color=blue, legend_label=Heun,
size=20)
sage: fig1 += line(sol , color=blue)
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
Error = 0.00109866300079819
5.3.2. Mtodo del punto medio
Sea y(x
1/2
) el valor de la solucin en el punto medio x
1/2
= x
0
+
h
2
del intervalo
[x
0
, x
1
], y sea y
1/2
una aproximacin del mismo. Si consideramos la velocidad en dicho
punto, f (x
1/2
, y
1/2
), la posicin nal y
1
puede escribirse como
y
1
= y
0
+ (x
1
x
0
) f (x
1/2
, y
1/2
) y
1
= y
0
+ h f (x
0
+
h
2
, y
1/2
).
Para aproximar el valor y
1/2
consideramos una iteracin del mtodo de Euler con
paso de malla h/2:
y
1/2
x
0
+
h
2
f (x
0
, y
0
).
Obtenemos as la primera iteracin del mtodo del punto medio:
y
1
= y
0
+ h f (x
0
+
h
2
, y
0
+
h
2
f (x
0
, y
0
)).
La expresin general del mtodo del punto medio es la siguiente:
_
y
k+1
= y
k
+ h f (x
k
+
h
2
, y
k
+
h
2
f (x
k
, y
k
)),
x
k+1
= x
k
+ h,
k = 0, 1, . . . , N 1.
El mtodo del punto medio tiene orden dos, por lo que en general ser comparable al
mtodo de Heun.
Ejemplo 5.5. Al realizar el experimento del ejemplo 5.1, se obtienen los resultados
de la tabla 5.6. Para este problema, los resultados obtenidos con el mtodo del punto
5.3 Mtodos de orden superior 159
k x
k
y
k
y(x
k
) e
k
0 0,0 1,000000 1,000000 0,000000
1 0,1 0,951375 0,951394 1,9028 10
5
2 0,2 0,906108 0,906138 3,0105 10
5
3 0,3 0,865010 0,865044 3,3960 10
5
4 0,4 0,828853 0,828885 3,1271 10
5
5 0,5 0,798372 0,798395 2,2667 10
5
6 0,6 0,774264 0,774272 8,7313 10
6
7 0,7 0,757193 0,757183 9,9954 10
6
8 0,8 0,747797 0,747760 3,3013 10
5
9 0,9 0,746663 0,746603 5,9858 10
5
10 10,0 0,754375 0,754285 9,0104 10
5
Tabla 5.6: Mtodo del punto medio: solucin del ejemplo 5.1 con paso h = 0,1.
N h e(h) cocientes
10 0,100000 9,0104 10
5

20 0,050000 2,3686 10
5
3,804051
40 0,025000 6,0610 10
6
3,907965
80 0,012500 1,5324 10
6
3,955388
160 0,006250 3,8520 10
7
3,978037
320 0,003125 9,6563 10
8
3,989102
Tabla 5.7: Estudio del orden del mtodo del punto medio.
medio son ms precisos que los obtenidos con el mtodo de Heun, aunque ambos
mtodos tengan orden dos.
Por otra parte, al dividir sucesivamente el paso de malla por dos se obtienen los
resultados de la tabla 5.7, que muestran que el mtodo tiene orden dos.
Los resultados anteriores han sido obtenidos con el siguiente cdigo Sage:
sage: # Metodo del punto medio
sage: def punto_medio(fun , a, b, N, y0):
h = (b-a)/N # paso de malla
x = [a] # primer nodo
y = [y0] # valor inicial
for k in range(N):
x.append(x[k]+h)
aux = y[k]+(h/2)* fun(x[k], y[k]) # Euler con paso h/2
y.append(y[k]+h*fun(x[k]+h/2, aux))
return zip(x, y)
sage: #
sage: ### Programa principal ###
160 Mtodos numricos para problemas de valor inicial
sage: #
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # numero de particiones
sage: sol = punto_medio(fun , a, b, N, y0) # metodo del punto medio
sage: #
sage: # solucio n exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0])
sage: #
sage: # errores
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
sage: #
sage: # graficas
sage: fig1 = list_plot(sol , color=blue, legend_label=punto medio,
size=20)
sage: fig1 += line(sol , color=blue)
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
Error = 0.0000901036871040484
5.3.3. Mtodo de Runge-Kutta de cuarto orden
El mtodo de Runge-Kutta de cuarto orden (de forma abreviada, RK4) tiene la siguien-
te expresin:
y
k+1
= y
k
+
h
6
(K
1
+ 2K
2
+ 2K
3
+ K
4
), k = 0, 1, . . . , N 1,
donde
_

_
K
1
= f (x
k
, y
k
),
K
2
= f (x
k
+
h
2
, y
k
+
h
2
K
1
),
K
3
= f (x
k
+
h
2
, y
k
+
h
2
K
2
),
K
4
= f (x
k
+ h, y
k
+ hK
3
).
En este caso se ha considerado un promedio de cuatro velocidades diferentes: una en
el nodo inicial x
k
, dos correcciones en el nodo intermedio x
k
+
h
2
, y otra en el nodo
nal x
k
+ h.
El mtodo de Runge-Kutta tiene orden cuatro, es decir, existe una constante C > 0,
independiente del paso de malla h, tal que
e(h) Ch
4
,
5.3 Mtodos de orden superior 161
donde e(h) es el error global que se produce al aproximar la solucin del problema
mediante el mtodo de Runge-Kutta con paso de malla h (dicho de otra forma, e(h) =
O(h
4
)). De este modo, al dividir el paso de malla entre dos el error se divide entre
2
4
= 16.
Observacin. Existe una clase general de mtodos Runge-Kutta de orden arbitrario,
de los cuales el aqu estudiado no es ms que un caso particular.
Ejemplo 5.6. Al aplicar el mtodo de Runge-Kutta con paso de malla h = 0,1 al
problema del ejemplo 5.1, se obtienen los resultados de la tabla 5.8. Es claro que el
mtodo de Runge-Kutta produce resultados mucho ms precisos que los mtodos de
Euler o de Heun para el mismo paso de malla.
k t
k
x
k
y(x
k
) e
k
0 0,0 1,000000 1,000000 0,000000
1 0,1 0,951394 0,951394 7,9633 10
9
2 0,2 0,906138 0,906138 1,6420 10
8
3 0,3 0,865044 0,865044 2,5303 10
8
4 0,4 0,828885 0,828885 3,4550 10
8
5 0,5 0,798395 0,798395 4,4106 10
8
6 0,6 0,774273 0,774272 5,3917 10
8
7 0,7 0,757183 0,757183 6,3936 10
8
8 0,8 0,747760 0,747760 7,4120 10
8
9 0,9 0,746603 0,746603 8,4429 10
8
10 10,0 0,754285 0,754285 9,4825 10
8
Tabla 5.8: Mtodo de Runge-Kutta: solucin del ejemplo 5.1 con paso h = 0,1.
N h e(h) cocientes orden
10 0,100000 9,4825 10
8

20 0,050000 5,9132 10
9
16,036346 4,003274
40 0,025000 3,6911 10
10
16,020039 4,001806
80 0,012500 2,3053 10
11
16,011356 4,001024
160 0,006250 1,4405 10
12
16,003314 4,000299
Tabla 5.9: Estudio del orden del mtodo de Runge-Kutta.
Asimismo, al realizar el experimento de divisiones sucesivas del paso de malla, se
obtienen los resultados de la tabla 5.9. Dichos resultados muestran que el mtodo de
Runge-Kutta tiene orden cuatro.
162 Mtodos numricos para problemas de valor inicial
En Sage existe una implementacin del mtodo RK4, cuyo uso puede verse en el
siguiente cdigo:
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # particiones
sage: h = (b-a)/N # paso de malla
sage: desolve_rk4(fun , y, ics=[a, y0], end_points =[a, b], step=h)
[[0.000000000000000 , 1.00000000000000] ,
[0.1, 0.951394036458] ,
[0.2, 0.906138090168] ,
[0.3, 0.865044190327] ,
[0.4, 0.828884763004] ,
[0.5, 0.798394562606] ,
[0.6, 0.774272509145] ,
[0.7, 0.757183435905] ,
[0.8, 0.747759751871] ,
[0.9, 0.746603023076] ,
[1.0, 0.754285476837]]
Si queremos dibujar el resultado, as como la solucin exacta, basta con hacer:
sage: sol = desolve_rk4(fun , y, ics=[a, y0], end_points =[a, b], step=h)
sage: fig1 = list_plot(sol , color=green , legend_label=RK4,
size=20)
sage: fig1 += line(sol , color=green )
sage: # exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0])
sage: #
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
La grca resultante es similar a la de la gura 5.7, donde tambin se ha dibujado
el resultado obtenido con el mtodo de Euler para comparar. Para calcular el error
cometido, ejecutamos:
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
Error = 9.48253844335e-08
De forma alternativa, el siguiente cdigo proporciona una implementacin directa
del mtodo RK4:
sage: # Metodo RK4 (Runge -Kutta de cuarto orden)
sage: def rk4(fun , a, b, N, y0):
h = (b-a)/N # paso de malla
x = [a] # primer nodo
y = [y0] # valor inicial
for k in range(N):
x.append(x[k]+h)
K1 = fun(x[k], y[k])
K2 = fun(x[k]+h/2, y[k]+(h/2)*K1)
5.3 Mtodos de orden superior 163
K3 = fun(x[k]+h/2, y[k]+(h/2)*K2)
K4 = fun(x[k]+h, y[k]+h*K3)
y.append(y[k]+(h/6)*( K1+2*K2+2*K3+K4))
return zip(x, y)
sage: #
sage: ### Programa principal ###
sage: #
sage: var(x, y)
sage: fun(x, y) = (x^2-y)/2 # segundo miembro de la ecuacio n
sage: a = 0. # extremo inferior
sage: b = 1. # extremo superior
sage: y0 = 1. # valor inicial
sage: N = 10 # numero de particiones
sage: sol = rk4(fun , a, b, N, y0) # metodo RK4
sage: #
sage: # solucio n exacta
sage: y = function(y, x)
sage: ec = diff(y, x) == fun(x, y)
sage: sol_exacta = desolve(ec , y, ics=[0, y0])
sage: #
sage: # errores
sage: error = [abs(sol_exacta(x)-y) for (x, y) in sol]
sage: print(Error = %r % max(error ))
sage: #
sage: # graficas
sage: fig1 = list_plot(sol , color=blue, legend_label=RK4, size=20)
sage: fig1 += line(sol , color=blue)
sage: fig2 = plot(sol_exacta , a, b, color=red, legend_label=exacta ,
gridlines=True)
sage: show(fig1 + fig2)
Error = 9.48253855437287e-8
Figura 5.7: Ejemplo 5.6: resultados obtenidos con los mtodos de Euler y RK4.
164 Mtodos numricos para problemas de valor inicial
Ejemplo 5.7. Consideremos el problema de valor inicial
_
y
/
= y + cos(x), x [0, 4],
y(0) = 1,
cuya solucin exacta es
y(x) =
sen(x) + cos(x) + e
x
2
.
Al resolver el problema mediante los mtodos presentados en esta seccin se ob-
tienen los resultados de la tabla 5.10. Como puede observarse, el mtodo de Euler es
el que proporciona peores resultados, mientras que el mtodo de Runge-Kutta es el
ms preciso.
N Euler Heun Runge-Kutta
25 1,4781 10
1
4,3932 10
2
3,9247 10
4
50 6,9090 10
2
9,6635 10
3
2,1724 10
5
100 3,3713 10
2
2,2901 10
3
1,2866 10
6
250 1,3254 10
2
3,5386 10
4
3,1808 10
8
500 6,5896 10
3
8,7449 10
5
1,9651 10
9
1000 3,2856 10
3
2,1738 10
5
1,2211 10
10
2500 1,3120 10
3
3,4662 10
6
3,1230 10
12
Tabla 5.10: Errores obtenidos al resolver el problema del ejemplo 5.7.
En las guras 5.8 y 5.9 se han representado las soluciones numricas obtenidas
con N = 25 y N = 50 particiones, respectivamente.
5.4. Algunas consideraciones
Existe una forma alternativa de deducir los mtodos numricos presentados en
la seccin anterior, ms formal desde el punto de vista matemtico. Si integramos la
ecuacin diferencial y
/
= f (x, y) entre dos nodos consecutivos, obtenemos:
_
x
k+1
x
k
y
/
(x) dx =
_
x
k+1
x
k
f (x, y(x)) dx y(x
k+1
) y(x
k
) =
_
x
k+1
x
k
f (x, y(x)) dx,
tras aplicar la regla de Barrow en el primer miembro. Por tanto, tenemos que
y(x
k+1
) = y(x
k
) +
_
x
k+1
x
k
f (x, y(x)) dx.
5.4 Algunas consideraciones 165
Figura 5.8: Ejemplo 5.7: soluciones obtenidas con N = 25.
Figura 5.9: Ejemplo 5.7: soluciones obtenidas con N = 50.
A continuacin aproximamos y(x
k
) e y(x
k+1
) por y
k
e y
k+1
, respectivamente. La inte-
gral se aproxima mediante una frmula de cuadratura o de integracin numrica:
y
k+1
= y
k
+
_
frmula de cuadratura para
_
x
k+1
x
k
f (x, y(x)) dx
_
.
Al aplicar distintas frmulas de cuadraturas, se obtienen distintos mtodos numri-
cos. Por ejemplo, al aproximar la integral mediante la frmula del rectngulo,
_
x
k+1
x
k
f (x, y(x)) dx h f (x
k
, y
k
),
166 Mtodos numricos para problemas de valor inicial
se obtiene el mtodo de Euler:
y
k+1
= y
k
+ h f (x
k
, y
k
).
Esta tcnica permite construir mtodos numricos ms generales que los estudiados
en esta seccin.
Todos los mtodos numricos estudiados pueden aplicarse para la resolucin de
sistemas de ecuaciones diferenciales. Para ello, basta con aplicar el mtodo elegido
a cada una de las componentes del sistema. Por ejemplo, el mtodo de Euler para
resolver el problema de valores iniciales dado por
_

_
x
/
(t) = f (t, x(t), y(t)), t [a, b],
y
/
(t) = g(t, x(t), y(t)),
x(a) = x
0
,
y(a) = y
0
,
adoptara la siguiente forma:
_
x
k+1
= x
k
+ h f (t
k
, x
k
, y
k
),
y
k+1
= y
k
+ hg(t
k
, x
k
, y
k
), k = 0, 1, . . . , N 1.
De manera anloga se escribiran los mtodos de Heun y Runge-Kutta.
Por ltimo, consideremos un problema de valores iniciales para una ecuacin di-
ferencial de segundo orden:
_

_
x
//
(t) = f (t, x(t), y(t)),
x(a) = x
0
,
x
/
(a) = x
/
0
.
Su resolucin numrica pasa por transformarlo en un problema de valores iniciales
y aplicar alguno de los mtodos numricos estudiados a dicho problema. Llamando
y(t) = x
/
(t) e y
0
= x
/
0
, obtenemos:
_

_
x
/
(t) = y(t),
y
/
(t) = f (t, x(t), y(t)),
x(a) = x
0
,
y(a) = y
0
.
En este caso, la solucin numrica del sistema consta de dos sucesiones de valores
aproximados: x
k

N
k=0
, que aproxima a la solucin x(t), e y
k

N
k=0
, que aproxima a la
derivada de la solucin y(t) = x
/
(t).
5.5 Aplicaciones 167
5.5. Aplicaciones
5.5.1. Deexin de vigas en voladizo
La ecuacin diferencial que determina el desplazamiento de una viga puede de-
terminarse a partir de la relacin existente entre el momento ector M(x) (que depende
de la distribucin de carga que soporta la viga), el radio de curvatura (x) de la curva
y(x) que dene la forma de la viga, el mdulo de elasticidad E (que depende del
material) y el momento de inercia I (que depende de la geometra de la viga). Dicha
relacin es la siguiente:
M(x) =
(x)
EI
.
Teniendo en cuenta que el radio de curvatura depende de las dos primeras derivadas
de y(x), puede deducirse la siguiente ecuacin no lineal:
y
//
(x) =
M(x)
EI
(1 + y
/
(x))
3/2
, x [0, L],
donde L es la longitud de la viga.
Cuando la exin de la viga es pequea, se tiene que y
/
(x) 0. Por tanto, asu-
miendo esta hiptesis de pequeas deformaciones, obtenemos:
y
//
(x) =
M(x)
EI
, x [0, L].
Si consideramos el caso de una viga en voladizo, debemos imponer las siguientes
condiciones iniciales:
y(0) = 0, y
/
(0) = 0.
La condicin y(0) = 0 indica que el extremo izquierdo de la viga est situado en
el origen de coordenadas, mientras que la condicin y
/
(0) = 0 nos dice que dicho
extremo permanece jo. De esta forma hemos expresado y(x) como solucin de un
problema de valores iniciales. Para resolverlo numricamente ser necesario escribirlo
en forma de sistema, tal y como comentamos al nal de la seccin 5.3.
La ecuacin diferencial obtenida depende de la forma del momento ector, que a
su vez depende de la distribucin de la carga que soporta la viga. Vamos a tener en
cuenta dos casos:
Carga uniformemente distribuida P (gura 5.10):
M(x) =
_
L
x
P
L
(t x) dt =
P
2L
(L x)
2
.
Carga puntual P en el extremo de la viga en voladizo (gura 5.11):
M(x) = P(L x).
168 Mtodos numricos para problemas de valor inicial
P
L
Figura 5.10: Deexin de una viga en voladizo con carga uniformemente distribuida: esque-
ma.
P
L
Figura 5.11: Deexin de una viga en voladizo con carga puntual en un extremo: esquema.
Consideremos una viga de longitud L = 2 m y tomemos los valores E = 2 10
11
N/m
2
y I = 7,85 10
9
m
4
(vase el ejemplo 3.35). En las guras 5.12 y 5.13 se repre-
sentan los resultados obtenidos al aplicar el mtodo RK4 con N = 20 particiones y
P = 150. En la gura 5.12 se ha supuesto que la carga est uniformemente distribuida
a lo largo de la viga, mientras que la gura 5.13 representa el caso de una carga pun-
tual situada en el extremo derecho de la viga. Como puede observarse, en este ltimo
caso la hiptesis de pequeas deformaciones es menos plausible.
Damos a continuacin el cdigo Sage que se ha utilizado para resolver los proble-
mas considerados:
sage: # Deflexio n de vigas en voladizo
sage: # -------------------------------
sage: #
sage: # Ecuacio n: y =(M(x)/(EI ))*(1+y )^(3/2) en [0, L].
sage: # Condiciones iniciales: y(0)=0, y (0)=0.
sage: #
sage: # En forma de sistema:
sage: # y1 = y2
sage: # y2 = (M(x)/(EI ))*(1+ y2 )^(3/2)
sage: #
sage: # Condiciones iniciales: y1(0)=0, y2 (0)=0.
sage: #
sage: # Metodo: RK4 para sistemas
5.5 Aplicaciones 169
Figura 5.12: Viga en voladizo: carga uniformemente distribuida.
Figura 5.13: Viga en voladizo: carga puntual en el extremo de la viga.
sage: #
sage: # datos del problema
sage: L = 2. # longitud de la viga
sage: Q = 0. # carga axial
sage: E = 2.e11 # modulo de elasticidad
sage: I = 7.85e-9 # momento de inercia
sage: P = 150. # carga
sage: #
sage: # condiciones iniciales
sage: y10 = 0.
sage: y20 = 0.
sage: #
sage: # segundo miembro de la ecuacio n no lineal
sage: op = 0 # opciones:
170 Mtodos numricos para problemas de valor inicial
# 0: carga uniformemente distribuida
# 1: carga puntual en el extremo de la viga
sage: if (op == 0):
# carga uniformemente distribuida
R(x) = -(P/(2.*L))*(L-x)^2/(E*I)
else:
# carga puntual en el extremo de la viga
R(x) = -P*(L-x)/(E*I)
sage: #
sage: ### Metodo RK4 para sistemas ###
sage: #
sage: N = 20 # numero de particiones
sage: h = L/N # paso de malla
sage: #
sage: var(x, y1 , y2)
sage: # solucio n del caso no lineal
sage: sol_NL = desolve_system_rk4 ([y2 , R(x)*(1.+ y2)^1.5] , [y1, y2],
ics=[0, y10 , y20], ivar=x, step=h, end_points =2)
sage: #
sage: # solucio n del caso lineal
sage: sol_L = desolve_system_rk4 ([y2 , R(x)], [y1 , y2],
ics=[0, y10 , y20], ivar=x, step=h, end_points =2)
sage: #
sage: # dibujamos las soluciones
sage: sol1 = [[i, j] for (i, j, k) in sol_NL] # solucio n no lineal
sage: sol2 = [[i, j] for (i, j, k) in sol_L] # solucio n lineal
sage: fig1 = list_plot(sol1 , legend_label=no lineal , size=20,
gridlines=True)
sage: fig1 += line(sol1)
sage: fig2 = list_plot(sol2 , color=red, legend_label=lineal )
sage: fig2 += line(sol2 , color=red)
sage: show(fig1 + fig2)
5.5.2. El pndulo perturbado
En la seccin 4.5.3 habamos considerado el sistema no lineal
_
_
_
x
/
= y,
y
/
=
g
L
sen(x)
a
m
y,
que modeliza el comportamiento de un pndulo de longitud L y masa m, sometido
a la fuerza gravitatoria y a una fuerza de rozamiento, cuyas constantes respectivas
son g y a. La variable x representa el ngulo que forma el pndulo con la vertical,
mientras que y es la correspondiente velocidad angular.
A continuacin, resolveremos numricamente el sistema en el intervalo [0, 10], con-
siderando las condiciones iniciales
_
x(0) = 1,
y(0) = 0,
5.5 Aplicaciones 171
y los datos m = 1, L = 1 y g = 9,81; supondremos adems que no hay rozamiento,
es decir, a = 0. En la gura 5.14 se representa la componente x de la solucin obte-
nida con los mtodos de Euler, Heun, punto medio y Runge-Kutta, usando N = 300
particiones. Como puede observarse, el mtodo de Euler falla estrepitosamente al
aproximar dicha solucin con el nmero de particiones elegido, mientras que los de-
ms mtodos dan resultados muy similares. La solucin obtenida es peridica, lo que
indica que el pndulo oscila indenidamente en torno a la posicin de equilibrio.
Observacin. En el caso estudiado, para obtener resultados aceptables con el mto-
do de Euler haran falta del orden de N = 10000 particiones. La falta de precisin
observada es debida a que el mtodo es tan slo de orden uno.
Figura 5.14: Pndulo no amortiguado: soluciones obtenidas con N = 300 particiones.
A continuacin consideraremos tan slo el mtodo de Runge-Kutta para realizar
los experimentos, ya que es el ms preciso de todos los que hemos estudiado. Si intro-
ducimos rozamiento en el sistema, con constante a = 1,2, se obtienen los resultados
de la gura 5.15, donde hemos representado tanto el ngulo como la velocidad. Puede
observarse que por efecto de la fuerza de rozamiento las oscilaciones iniciales se van
amortiguando, tendiendo de este modo el pndulo hacia la posicin de equilibrio.
Por ltimo, supongamos que sobre el pndulo acta una fuerza peridica externa
de la forma g(t) = cos(2t). Para estudiar el efecto de esta fuerza externa, considera-
remos los valores m = 1, L = 1, g = 9,81 y a = 0,1; las condiciones iniciales sern de
la forma
_
x(0) = 0,
y(0) = 5.
172 Mtodos numricos para problemas de valor inicial
Figura 5.15: Pndulo amortiguado: solucin obtenida con N = 300 particiones.
En tal caso, la solucin del problema obtenida con N = 1000 particiones se representa
en la gura 5.16.
Figura 5.16: Pndulo perturbado: solucin obtenida con N = 1000 particiones.
De hecho, el problema perturbado con una fuerza externa es terriblemente sensiti-
vo a la eleccin de las condiciones iniciales. En la gura 5.17 se representa la variacin
del ngulo para distintos valores cercanos de la velocidad inicial. Como puede obser-
5.5 Aplicaciones 173
varse, aunque el comportamiento del sistema est determinado por un sistema de
ecuaciones diferenciales, es difcil predecir el comportamiento de la solucin a largo
plazo.
Figura 5.17: Pndulo perturbado: componente x de las soluciones obtenidas con distintas
velocidades iniciales.
174 Mtodos numricos para problemas de valor inicial
CAPTULO
6
MTODOS NUMRICOS PARA
PROBLEMAS DE CONTORNO
6.1. Introduccin
En este tema nos centraremos en el desarrollo de mtodos numricos para la reso-
lucin de problemas de contorno, de la forma
_

_
y
//
= f (x, y, y
/
), x [a, b],
y(a) = ,
y(b) = .
En los mtodos estudiados en el tema anterior para problemas de valor inicial, la
solucin numrica se construa de forma recursiva: a partir del valor aproximado y
k
en
el nodo x
k
, se calcula el valor aproximado y
k+1
en el siguiente nodo x
k+1
; este proceso
se repite hasta llegar al nal del intervalo donde queremos resolver la ecuacin. El
enfoque para problemas de contorno es distinto: la solucin numrica va a venir dada
como solucin de un sistema de ecuaciones, cuyo tamao depender del nmero de
nodos de la particin.
Presentaremos dos mtodos fundamentales para el estudio de problemas de con-
torno: el mtodo de diferencias nitas y el mtodo de elementos nitos. El mtodo de dife-
rencias nitas se basa en aproximar las derivadas que aparecen en la ecuacin dife-
176 Mtodos numricos para problemas de contorno
rencial mediante frmulas adecuadas en cada nodo. El mtodo de elementos nitos
se construye a partir de la denominada formulacin variacional del problema de con-
torno, y ofrece mayor adaptabilidad que el mtodo de diferencias nitas a la hora de
estudiar fenmenos complejos. En la actualidad, el mtodo de elementos nitos es
ampliamente utilizado para resolver problemas cientcos y tcnicos: clculo de es-
tructuras, aerodinmica de vehculos, interacciones uido-estructura, procesamiento
de imgenes mdicas, optimizacin de formas, etc.
6.2. Mtodo de diferencias nitas
Uno de los mtodos bsicos para la resolucin numrica de problemas de contorno
es el conocido como mtodo de diferencias nitas, que estudiaremos en esta seccin. Por
simplicidad, nos centraremos en el estudio numrico de un problema lineal de la
forma
_

_
y
//
+ p(x)y
/
+ q(x)y = r(x), x [a, b],
y(a) = ,
y(b) = .
Comencemos construyendo una particin del intervalo [a, b] de la siguiente forma:
a = x
0
< x
1
< < x
N1
< x
N
= b,
con x
j
= a + jh para j = 0, 1, . . . , N, siendo h =
ba
N
el paso de malla. Los puntos
x
1
, . . . , x
N1
son los nodos interiores de la particin. Evaluando la ecuacin diferencial
en cada nodo interior, se obtiene:
y
//
(x
j
) + p
j
y
/
(x
j
) + q
j
y(x
j
) = r
j
, j = 1, . . . , N 1,
donde, por simplicidad, hemos denido p
j
= p(x
j
), q
j
= q(x
j
) y r
j
= r(x
j
).
Las derivadas de y(x) en cada nodo x
j
pueden aproximarse mediante las siguien-
tes frmulas:
y
/
(x
j
)
y(x
j+1
) y(x
j1
)
2h
, y
//
(x
j
)
y(x
j+1
) 2y(x
j
) + y(x
j1
)
h
2
,
que son las diferencias nitas que dan nombre al mtodo (gura 6.1).
Observacin. Veamos de dnde surgen las frmulas anteriores. En primer lugar, no-
temos que y
/
(x
j
) no es ms que la pendiente de la recta tangente a la curva solucin
en el punto (x
j
, y(x
j
)). Podemos aproximar dicha pendiente de varias formas:
Como la pendiente m
+
de la recta que pasa por (x
j
, y(x
j
)) y (x
j+1
, y(x
j+1
)):
y
/
(x
j
)
y(x
j+1
) y(x
j
)
x
j+1
x
j
=
y(x
j+1
) y(x
j
)
h
m
+
.
6.2 Mtodo de diferencias nitas 177
(x
j
, y(x
j
))
x
j
x
j-1
x
j+1
h h
2h
m_
m
+
m
c
(x
j+1
, y(x
j+1
))
(x
j-1
, y(x
j-1
))
Figura 6.1: Aproximaciones de la derivada de y(x) en el punto x
j
.
Como la pendiente m

de la recta que pasa por (x


j
, y(x
j
)) y (x
j1
, y(x
j1
)):
y
/
(x
j
)
y(x
j
) y(x
j1
)
x
j
x
j1
=
y(x
j
) y(x
j1
)
h
m

.
Como la pendiente m
c
de la recta que pasa por (x
j+1
, y(x
j+1
)) y (x
j1
, y(x
j1
)):
y
/
(x
j
)
y(x
j+1
) y(x
j1
)
x
j+1
x
j1
=
y(x
j+1
) y(x
j1
)
2h
m
c
.
Claramente, m
c
es la media de los valores m
+
y m

.
Las aproximaciones m
+
y m

se denominan descentradas, mientras que m


c
es una
aproximacin centrada. Puede probarse que, en general, la aproximacin centrada es
ms precisa que cualquiera de las dos descentradas.
Por otra parte, la segunda derivada en x
j
se aproxima de la siguiente forma:
y
//
(x
j
)
y
/
(x
j
)
+
y
/
(x
j
)

h
,
donde y
/
(x
j
)

son aproximaciones laterales de la primera derivada en x


j
. Tomando
m
+
y
/
(x
j
)
+
y m

y
/
(x
j
)

, obtenemos:
y
//
(x
j
)
m
+
m

h
=
y(x
j+1
)y(x
j
)
h

y(x
j
)y(x
j1
)
h
h
=
y(x
j+1
) 2y(x
j
) + y(x
j1
)
h
2
,
que es la frmula buscada.
178 Mtodos numricos para problemas de contorno
Sustituyendo las expresiones para las derivadas en las ecuaciones anteriores y
cambiando los valores exactos y(x
j
) por valores aproximados y
j
, resulta:
y
j+1
2y
j
+ y
j1
h
2
+ p
j
y
j+1
y
j1
2h
+ q
j
y
j
= r
j
, j = 1, . . . , N 1.
Ntese que los valores en los extremos del intervalo son conocidos, gracias a las
condiciones de contorno:
y
0
= y(x
0
) = y(a) = , y
N
= y(x
N
) = y(b) = .
En resumen, hemos construido un sistema lineal de N 1 ecuaciones con N 1 in-
cgnitas, a saber, y
1
, y
2
, . . . , y
N1
. Reagrupando, el sistema puede escribirse de la
siguiente forma:
_

_
_
h
2
p
j
1
_
y
j1
+ (2 h
2
q
j
)y
j
+
_

h
2
p
j
1
_
y
j+1
= h
2
r
j
, j = 1, 2, . . . , N 1,
y
0
= ,
y
N
= .
La solucin del sistema nos proporciona un conjunto de aproximaciones a los valores
de la solucin exacta en cada uno de los nodos interiores: y
j
y(x
j
).
Notemos que todas las ecuaciones anteriores poseen la misma estructura, a excep-
cin de la primera y la ltima. En efecto, para j = 1 se tiene que
_
h
2
p
1
1
_

y
0
+ (2 h
2
q
1
)y
1
+
_

h
2
p
1
1
_
y
2
= h
2
r
1
,
de donde
(2 h
2
q
1
)y
1
+
_

h
2
p
1
1
_
y
2
= h
2
r
1
+
_
1
h
2
p
1
_
,
mientras que para j = N 1 se deduce, de forma anloga:
_
h
2
p
N1
1
_
y
N2
+ (2 h
2
q
N1
)y
N1
= h
2
r
N1
+
_
1 +
h
2
p
N1
_
.
Podemos escribir el sistema lineal en forma matricial:
AY = B,
donde
Y =
_
_
_
_
_
_
_
_
_
_
y
1
y
2
.
.
.
y
j
.
.
.
y
N1
_
_
_
_
_
_
_
_
_
_
, B =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
h
2
r
1
+
_
1
h
2
p
1
_
h
2
r
2
.
.
.
h
2
r
j
.
.
.
h
2
r
N1
+
_
1 +
h
2
p
N1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
,
6.2 Mtodo de diferencias nitas 179
y
A =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
2 h
2
q
1

h
2
p
1
1 0 0 0
h
2
p
2
1 2 h
2
q
2

h
2
p
2
1 0 0
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
h
2
p
j
1 2 h
2
q
j

h
2
p
j
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
h
2
p
N2
1 2 h
2
q
N2

h
2
p
N2
1
0 0
h
2
p
N1
1 2 h
2
q
N1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
Como vemos, la matriz A tiene estructura tridiagonal. Este tipo de matrices tiene innu-
merables ventajas desde un punto de vista numrico a la hora de resolver el sistema
lineal.
Observacin. La resolucin numrica de sistemas lineales constituye una rama fun-
damental del Anlisis Numrico, con importantes aplicaciones prcticas. Las tcnicas
empleadas se salen del mbito de este curso, por lo que no entraremos en ms deta-
lles.
Observacin. Cuando se consideran condiciones de contorno de tipo Neumann, es
decir, y
/
(a) = e y
/
(b) = , es necesario aadir las ecuaciones correspondientes a
j = 0 y j = N, y usar discretizaciones adecuadas para las derivadas en las condiciones
de contorno.
Ejemplo 6.1. Consideremos el problema de contorno
_

_
y
//
y = x
2
+ 1, x [0, 1],
y(0) = 0,
y(1) = 0,
cuya solucin exacta es
y(x) = 3 x
2
+
4e 3
e
2
1
e
x

4e 3e
2
e
2
1
e
x
.
Dividamos el intervalo [0, 1] en cuatro subintervalos; de este modo, N = 4, el paso
de malla es h =
1
4
y los nodos de la particin son x
0
= 0, x
1
=
1
4
, x
2
=
1
2
, x
3
=
3
4
y
x
4
= 1. Evaluando la ecuacin diferencial en los nodos interiores, resulta:
y
//
(x
j
) y(x
j
) = x
2
j
+ 1, j = 1, 2, 3.
180 Mtodos numricos para problemas de contorno
A continuacin, aproximamos mediante diferencias nitas:
y
j+1
2y
j
+ y
j1
h
2
y
j
= x
2
j
+ 1, j = 1, 2, 3,
Teniendo en cuenta las condiciones de contorno y
0
= y(x
0
) = 0 e y
4
= y(x
4
) = 0,
podemos escribir las ecuaciones anteriores del siguiente modo:
_

_
y
2
2y
1
+

0
y
0
h
2
y
1
= x
2
1
+ 1
y
3
2y
2
+ y
1
h
2
y
2
= x
2
2
+ 1


0
y
4
2y
3
+ y
2
h
2
y
3
= x
2
3
+ 1

_
(2 + h
2
)y
1
y
2
= h
2
(x
2
1
+ 1)
y
1
+ (2 + h
2
)y
2
y
3
= h
2
(x
2
2
+ 1)
y
2
+ (2 + h
2
)y
3
= h
2
(x
2
3
+ 1)
que en forma matricial se expresan como
_
_
2 + h
2
1 0
1 2 + h
2
1
0 1 2 + h
2
_
_
_
_
y
1
y
2
y
3
_
_
= h
2
_
_
x
2
1
+ 1
x
2
2
+ 1
x
2
3
+ 1
_
_
.
La solucin de dicho sistema, una vez sustituidos los valores de h y de los nodos, es:
y
1
0,102151, y
2
0,144281, y
3
= 0,117303.
En la gura 6.2 se representan la solucin exacta y los valores aproximados obtenidos.
Dicha gura se ha realizado con el siguiente cdigo Sage:
sage: #
sage: ### Metodo de diferencias finitas ###
sage: #
sage: # Ecuacio n: y +p(x)y+q(x)y=r(x), a<x<b.
sage: # Condiciones de contorno de tipo Dirichlet:
sage: # y(a)=alpha , y(b)=beta.
sage: #
sage: # Datos del problema
sage: #
sage: a = 0. # extremo inferior del intervalo
sage: b = 1. # extremo superior del intervalo
sage: #
sage: N = 4 # numero de particiones
sage: #
sage: p(x) = 0. # coeficiente de y
sage: q(x) = -1. # coeficiente de y
sage: r(x) = x^2+1. # termino independiente
sage: #
sage: alpha = 0. # c. contorno izquierda
sage: beta = 0. # c. contorno derecha
sage: #
sage: ### Implementacio n del metodo ###
sage: #
6.2 Mtodo de diferencias nitas 181
sage: h = (b-a)/N # paso de malla
sage: #
sage: X = vector ([a+j*h for j in range(N+1)]) # mallado
sage: Y = vector ([0. for j in range(N+1)]) # solucio n
sage: #
sage: # condiciones de contorno
sage: Y[0] = alpha
sage: Y[N] = beta
sage: #
sage: # termino independiente
sage: B = vector ([(-h^2)*r(X[j+1]) for j in range(N-1)])
sage: B[0] += alpha *(1 -0.5*h*p(X[1]))
sage: B[N-2] += beta *(1+0.5*h*p(X[N -1]))
sage: #
sage: # matriz del sistema
sage: A = matrix(RR, N-1, N-1)
sage: #
sage: for j in range(1, N-1):
A[j-1, j-1] = 2.-q(X[j])*h^2 # diagonal
A[j-1, j] = -1.-0.5*h*p(X[j]) # superdiagonal
A[j, j-1] = -1.+0.5*h*p(X[j]) # subdiagonal
sage: A[N-2, N-2] = 2.-q(X[N -1])*h^2 # ultimo elemento de la diagonal
sage: #
sage: # solucio n del sistema lineal
sage: sol = A.inverse ()*B # y=A^(-1)*B
sage: #
sage: # actualizacio n del vector y
sage: for j in range(0, N-1):
Y[j+1] = sol[j]
sage: #
sage: #################################
sage: #
sage: # dibujamos los puntos
sage: sol = zip(X, Y)
sage: fig1 = list_plot(sol , color=blue, legend_label=aprox.)
sage: # y los unimos con segmentos
sage: fig1 += line(sol)
sage: #
sage: ### Comparacio n con la solucio n exacta ###
sage: y = function(y, x)
sage: ec = diff(y, x, 2) + p(x)*diff(y, x) + q(x)*y == r(x)
sage: sol = desolve(ec, y, ics=[a, alpha , b, beta])
sage: #
sage: fig2 = plot(sol , a, b, color=red, legend_label=exacta )
sage: show(fig1 + fig2)
Como disponemos de la solucin exacta, es posible determinar el error e
j
=
[y(x
j
) y
j
[ cometido en cada uno de los nodos:
e
1
0,001366, e
2
0,001853, e
3
0,001443.
Por tanto, el error global ser e = m ax(e
1
, e
2
, e
3
) 0,001853.
Con Sage, haramos lo siguiente:
sage: # Calculo de los errores en los nodos interiores
sage: err = [abs(Y[j]-sol(X[j])) for j in range(1, N)]; err
[0.00136648039024440 , 0.00185314651061488 , 0.00144315391661615]
182 Mtodos numricos para problemas de contorno
Figura 6.2: Ejemplo 6.1: solucin exacta y valores aproximados.
y despus
sage: # Error global
sage: max(err)
0.00185314651061488
para determinar el error global.
6.3. Aproximacin variacional
En esta seccin vamos a introducir las ideas bsicas relativas a la formulacin varia-
cional de un problema de contorno. Como veremos, esta formulacin ser la base que
nos permitir denir el mtodo de elementos nitos.
Consideremos un problema de contorno lineal de la forma
_

_
u
//
(x) + q(x)u(x) = f (x), x [0, 1],
u(0) = 0,
u(1) = 0,
(1)
donde q(x) y f (x) son funciones continuas en [0, 1]. En este contexto es habitual
denotar por u a la variable dependiente en lugar de y.
Observacin. Si las condiciones de contorno son del tipo u(0) = , u(1) = , basta
con hacer el cambio w(x) = u(x) (1 x) x para pasar a un problema equi-
valente con condiciones de contorno w(0) = 0, w(1) = 0. Asimismo, el cambio
w(x) = u(a + (b a)x) permite considerar el problema en un intervalo arbitrario
[a, b]. Por otra parte, el aadir un trmino de la forma p(x)u
/
(x) a la ecuacin no
6.3 Aproximacin variacional 183
introduce dicultades matemticas adicionales en la deduccin del mtodo de ele-
mentos nitos, por lo que no lo consideraremos en aras de la simplicidad.
Observacin. Las condiciones de contorno del tipo u(0) = , u(1) = se denominan
condiciones de tipo Dirichlet: en ellas se impone el valor que ha de tener la solucin en
los extremos del dominio [0, 1]. Otro tipo habitual de condiciones de contorno son
las condiciones de tipo Neumann, en las que se especican los valores de la derivada
de la solucin en los extremos: u
/
(0) = , u
/
(1) = . Ambos tipos de condiciones
de contorno pueden combinarse, dando lugar a condiciones de tipo mixto; por ejemplo,
u(0) = , u
/
(1) = .
Aunque en esta seccin slo estudiaremos el mtodo de elementos nitos para
problemas de tipo Dirichlet, dicho mtodo puede adaptarse para resolver problemas
de tipo Neumann o de tipo mixto.
Sea u C
2
([0, 1]) solucin del problema (1): diremos que u es una solucin fuerte.
Multipliquemos la ecuacin diferencial por una funcin arbitraria v C
1
([0, 1]) e
integremos en el intervalo [0, 1]:

_
1
0
u
//
(x)v(x) dx +
_
1
0
q(x)u(x)v(x) dx =
_
1
0
f (x)v(x) dx.
Supongamos adems que v(0) = v(1) = 0 e integremos por partes la primera integral:

_
1
0
u
//
(x)v(x) dx =
_
1
0
u
/
(x)v
/
(x) dx
_
u
/
(x)v(x)

1
0
=
_
1
0
u
/
(x)v
/
(x) dx.
De esta forma, obtenemos la ecuacin variacional asociada al problema (1):
_
1
0
u
/
(x)v
/
(x) dx +
_
1
0
q(x)u(x)v(x) dx =
_
1
0
f (x)v(x) dx,
para cada funcin v C
1
([0, 1]) tal que v(0) = v(1) = 0.
Es importante notar que basta con suponer u C
1
([0, 1]) para que la ecuacin
anterior tenga sentido; de hecho es suciente con que las funciones u y v sean de
clase C
1
a trozos y veriquen las condiciones de contorno. Estos hechos motivan la
introduccin del espacio V formado por todas las funciones v de clase C
1
a trozos
en [0, 1] que verican las condiciones de contorno v(0) = v(1) = 0. Notemos que, en
particular, la solucin u del problema (1) pertenece a V.
La formulacin variacional o formulacin dbil del problema (1) consiste en hallar
u V tal que
_
1
0
u
/
(x)v
/
(x) dx +
_
1
0
q(x)u(x)v(x) dx =
_
1
0
f (x)v(x) dx, v V. (2)
En tal caso, diremos que u V es una solucin dbil o variacional; notemos que las con-
diciones de contorno u(0) = u(1) = 0 se verican de forma automtica al pertenecer
u al espacio V.
184 Mtodos numricos para problemas de contorno
La principal dicultad que nos encontramos al intentar resolver la ecuacin varia-
cional (2) est en el hecho de que el espacio vectorial V es un espacio de dimensin
innita; esto hace que no sea factible una implementacin directa en el ordenador. El
mtodo de aproximacin variacional o mtodo de Galerkin se basa en considerar un subes-
pacio V
h
de V de dimensin nita, y a continuacin aproximar la solucin u de (2)
por la solucin u
h
V
h
de la siguiente ecuacin variacional discreta:
_
1
0
u
/
h
(x)v
/
h
(x) dx +
_
1
0
q(x)u
h
(x)v
h
(x) dx =
_
1
0
f (x)v
h
(x) dx, v
h
V
h
. (3)
Diremos que V
h
es el espacio de funciones test. La notacin V
h
hace referencia a que el
espacio va a depender del paso de malla elegido: mientras menor sea ste, mejor ser
la aproximacin de la solucin.
Supongamos que
1
, . . . ,
n
es una base del espacio V
h
, donde n es su dimen-
sin. En tal caso, cualquier elemento v
h
V
h
puede escribirse como combinacin
lineal de los elementos de dicha base:
v
h
(x) =
n

i=1
v
i

i
(x), v
1
, . . . , v
n
R.
Sustituyendo en (3), resulta:
_
1
0
u
/
h
(x)
_
n

i=1
v
i

/
i
(x)
_
dx +
_
1
0
q(x)u
h
(x)
_
n

i=1
v
i

i
(x)
_
dx =
_
1
0
f (x)
_
n

i=1
v
i

i
(x)
_
dx,
de donde
n

i=1
v
i
_
1
0
u
/
h
(x)
/
i
(x) dx +
n

i=1
v
i
_
1
0
q(x)u
h
(x)
i
(x) dx =
n

i=1
v
i
_
1
0
f (x)
i
(x) dx,
y por tanto
n

i=1
v
i
_
_
1
0
u
/
h
(x)
/
i
(x) dx +
_
1
0
q(x)u
h
(x)
i
(x) dx
_
=
n

i=1
v
i
_
1
0
f (x)
i
(x) dx.
Al ser los coecientes v
1
, . . . , v
n
arbitrarios, deducimos que la ecuacin (3) es equi-
valente a
_
1
0
u
/
h
(x)
/
i
(x) dx +
_
1
0
q(x)u
h
(x)
i
(x) dx =
_
1
0
f (x)
i
(x) dx, i = 1, . . . , n,
es decir, basta con que la ecuacin (3) se verique para los elementos
i
de la base.
Escribamos ahora la solucin buscada u
h
en la base
1
, . . . ,
n
:
u
h
(x) =
n

j=1
u
j

j
(x), u
1
, . . . , u
n
R.
6.3 Aproximacin variacional 185
Sustituyendo en la ecuacin anterior y razonando como antes, obtenemos:
n

j=1
u
j
_
1
0

/
i
(x)
/
j
(x) dx +
n

j=1
u
j
_
1
0
q(x)
i
(x)
j
(x) dx =
_
1
0
f (x)
i
(x) dx, i = 1, . . . , n,
o, lo que es lo mismo,
n

j=1
u
j
_
_
1
0

/
i
(x)
/
j
(x) dx +
_
1
0
q(x)
i
(x)
j
(x) dx
_
=
_
1
0
f (x)
i
(x) dx, i = 1, . . . , n.
Si denotamos
a
ij
=
_
1
0

/
i
(x)
/
j
(x) dx +
_
1
0
q(x)
i
(x)
j
(x) dx, f
i
=
_
1
0
f (x)
i
(x) dx,
podemos escribir la expresin anterior de la siguiente forma:
n

j=1
a
ij
u
j
= f
i
, i = 1, . . . , n.
Hemos obtenido as un sistema lineal de n ecuaciones y n incgnitas (a saber, los
coecientes u
i
de la solucin u
h
). En forma matricial, dicho sistema se escribe
AU = F,
donde
A =
_
_
_
_
_
a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
nn
_
_
_
_
_
, U =
_
_
_
_
_
u
1
u
2
.
.
.
u
n
_
_
_
_
_
, F =
_
_
_
_
_
f
1
f
2
.
.
.
f
n
_
_
_
_
_
.
La solucin del sistema nos permitir construir la solucin del problema discreto (3).
La matriz A se denomina matriz de rigidez y F es el vector de cargas
1
, aunque en teora
no tengan signicado fsico alguno.
Observacin. La solucin U = (u
1
, . . . , u
n
)
T
del sistema lineal permite construir la
solucin numrica de la forma
u
h
(x) = u
1

1
(x) + u
2

2
(x) + + u
n

n
(x).
En este caso, dicha solucin numrica es una funcin y no un conjunto de valores
aproximados, como suceda en el mtodo de diferencias nitas. Podemos por tanto
usar u
h
(x) para aproximar la solucin del problema de contorno en cualquier punto
del intervalo [0, 1].
1
La terminologa proviene de la Mecnica de Slidos, que es el rea donde se desarroll el mtodo
de elementos nitos en la dcada de los cincuenta del pasado siglo, concretamente en la industria
aeronutica.
186 Mtodos numricos para problemas de contorno
En resumen, hemos visto cmo la solucin del problema variacional (2) puede
aproximarse mediante la solucin de un problema discreto (3), cuyo clculo se reduce
a la resolucin de un sistema lineal. En la siguiente seccin veremos cmo elegir los
elementos
i
de la base de forma adecuada para que el sistema pueda resolverse de
la forma ms eciente posible.
6.4. Mtodo de elementos nitos
El mtodo de elementos nitos se basa en aproximar, mediante el mtodo de Galer-
kin, la solucin variacional del problema (1) haciendo una eleccin adecuada de los
elementos del espacio de discretizacin V
h
. Dicha eleccin se realiza intentando que
la matriz del sistema resultante tenga una estructura lo ms sencilla posible.
Observacin. En las aplicaciones prcticas, las matrices que resultan de realizar el
proceso de discretizacin detallado en la seccin anterior pueden tener miles, o in-
cluso millones de elementos. La resolucin de sistemas de tales tamaos requieren el
uso de ordenadores de gran potencia, as como la aplicacin de tcnicas matemticas
adecuadas.

i
x
i
x
i+1
x
i-1
Figura 6.3: Grca de la funcin de base
i
(x).
Consideremos una discretizacin del intervalo [0, 1],
0 = x
0
< x
1
< < x
N1
< x
N
= 1,
con paso de malla h =
1
N
. Para cada i = 1, . . . , N1, consideremos la funcin de base

i
(x) denida como

i
(x) =
_

_
x x
i1
h
si x
i1
x x
i
,
x
i+1
x
h
si x
i
x x
i+1
,
0 en otro caso,
6.4 Mtodo de elementos nitos 187
cuya grca se representa en la gura 6.3. Cada
i
(x) es una funcin de clase C
1
a
trozos, cuya derivada es

/
i
(x) =
_

_
1
h
si x
i1
< x < x
i
,

1
h
si x
i
< x < x
i+1
,
0 en otro caso.
Ntese que las funciones
i
(x) y
/
i
(x) se anulan fuera del intervalo (x
i1
, x
i+1
).
Puede demostrarse que la familia de funciones
1
, . . . ,
N1
constituyen una
base del subespacio vectorial V
h
formado por las funciones continuas y lineales a
trozos en [0, 1] que se anulan en los extremos x = 0 y x = 1; en particular, la dimensin
de V
h
es n = N 1.
Observacin. Para condiciones de contorno de tipo Neumann es necesario aadir
dos funciones de base adicionales,
0
(x) y
N
(x), para imponer las condiciones de
contorno en cada uno de los extremos del intervalo. Asimismo, el espacio de funciones
test V
h
debe modicarse de manera adecuada.
A continuacin vamos a calcular los coecientes a
ij
de la matriz A, as como los
trminos independientes f
i
. Por simplicidad, a partir de ahora supondremos que las
funciones q(x) y f (x) son constantes: q(x) q, f (x) f .
Observacin. Cuando las funciones q(x) y f (x) no son constantes, es necesario utili-
zar frmulas de cuadratura para aproximar numricamente las integrales que apare-
cen en la denicin de los coecientes a
ij
y f
i
.
Fijado un subndice arbitrario i, notemos que
i
(x)
j
(x) 0 si j ,= i 1, i, i + 1,
ya que en tal caso los conjuntos donde
i
(x) y
j
(x) no se anulan no tienen puntos
en comn (vase la gura 6.4); lo mismo sucede para el producto de las derivadas.
Por otro lado, resulta que
_
1
0

i
(x)
i
(x) dx =
_
x
i+1
x
i1
(
i
(x))
2
dx
=
_
x
i
x
i1
_
x x
i1
h
_
2
dx +
_
x
i+1
x
i
_
x
i+1
x
h
_
2
dx =
2h
3
,
teniendo en cuenta que x
i1
= x
i
h y x
i+1
= x
i
+ h. De forma similar, se obtienen
las igualdades
_
1
0

i
(x)
i1
(x) dx =
_
x
i
x
i1
x
i
x
h

x x
i1
h
dx =
h
6
,
188 Mtodos numricos para problemas de contorno
x
i
x
i+1
x
i-1

i
x
i
x
j

j
x
i
x
i+1
x
i-1

i
x
i-2

i-1
x
i+2

i+1

i
(a) (b) (c)
Figura 6.4: (a)
i

i1
,= 0 en [x
i1
, x
i
]; (b)
i

i+1
,= 0 en [x
i
, x
i+1
]; (c)
i

j
0 si j ,= i 1, j ,= i
o j ,= i + 1.
y
_
1
0

i
(x)
i+1
(x) dx =
_
x
i+1
x
i
x x
i
h

x
i+1
x
h
dx =
h
6
.
Razonando de manera anloga, se deducen las siguientes expresiones:
_
1
0

/
i
(x)
/
i
(x) dx =
2
h
,
_
1
0

/
i
(x)
/
i1
(x) dx =
1
h
,
_
1
0

/
i
(x)
/
i+1
(x) dx =
1
h
.
Finalmente, deducimos las frmulas para los coecientes a
ij
:
a
ij
=
_

_
2
h
+
2
3
qh si j = i,

1
h
+
1
6
qh si j = i 1 o j = i + 1,
0 en otro caso.
Por otra parte, notemos que
_
1
0

i
(x) dx =
_
x
i
x
i1
x x
i1
h
dx +
_
x
i+1
x
i
x
i+1
x
h
dx =
h
2
+
h
2
= h,
lo que implica que todos los coecientes f
i
tienen la siguiente forma:
f
i
= f h, i = 1, . . . , N 1.
A partir de los resultados obtenidos, podemos escribir el sistema lineal que dene
el mtodo de elementos nitos como sigue:
_
_
_
_
_
_
_
_
_
_
_
_
2 +
2
3
qh
2
1 +
1
6
qh
2
0 0 0
1 +
1
6
qh
2
2 +
2
3
qh
2
1 +
1
6
qh
2
0 0
0 1 +
1
6
qh
2
2 +
2
3
qh
2
1 +
1
6
qh
2
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 1 +
1
6
qh
2
2 +
2
3
qh
2
1 +
1
6
qh
2
0 0 1 +
1
6
qh
2
2 +
2
3
qh
2
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
u
1
u
2
u
3
.
.
.
u
N2
u
N1
_
_
_
_
_
_
_
_
_
_
_
_
=
_
_
_
_
_
_
_
_
_
_
_
_
h
2
f
h
2
f
h
2
f
.
.
.
h
2
f
h
2
f
_
_
_
_
_
_
_
_
_
_
_
_
.
6.4 Mtodo de elementos nitos 189
La matriz A es simtrica y tridiagonal, lo que la hace especialmente adecuada a la
hora de resolver numricamente el sistema lineal.
Ejemplo 6.2. Consideremos el problema de contorno
_

_
u
//
(x) + u(x) = 2, x [0, 1],
u(0) = 0,
u(1) = 0,
que tiene como solucin exacta la funcin
u(x) =
2
1 + e
(e
x
+ e
1x
) + 2.
Para construir la formulacin variacional del problema, multiplicamos la ecuacin
dife-rencial por una funcin arbitraria v(x), que sea de clase C
1
a trozos en [0, 1] y
verique v(0) = v(1) = 0, y a continuacin integramos en [0, 1]:

_
1
0
u
//
(x)v(x) dx +
_
1
0
u(x)v(x) dx =
_
1
0
2v(x) dx.
Integrando por partes el primer sumando,

_
1
0
u
//
(x)v(x) dx =
_
u
/
(x)v(x)

1
0
+
_
1
0
u
/
(x)v
/
(x) dx,
y teniendo en cuanta que v(0) = v(1) = 0, resulta:

_
1
0
u
//
(x)v(x) dx =
_
1
0
u
/
(x)v
/
(x) dx.
De esta forma, deducimos la siguiente igualdad:
_
1
0
u
/
(x)v
/
(x) dx +
_
1
0
u(x)v(x) dx =
_
1
0
2v(x) dx.
Denamos V como el espacio vectorial formado por todas las funciones v(x) de
clase C
1
a trozos en [0, 1] y que verican v(0) = v(1) = 0. La formulacin variacional
del problema es entonces la siguiente: hallar u V tal que
_
1
0
u
/
(x)v
/
(x) dx +
_
1
0
u(x)v(x) dx =
_
1
0
2v(x) dx, v V.
El siguiente paso consiste en discretizar la ecuacin variacional. Para ello, consi-
deremos una particin del intervalo [0, 1] con N = 4; de esta forma, el paso de malla
190 Mtodos numricos para problemas de contorno
1/2 3/4 1/4

2
0

1

3
1
Figura 6.5: Funciones de base para h =
1
4
.
es h =
1
4
y los nodos vienen dados por x
0
= 0, x
1
=
1
4
, x
2
=
1
2
, x
3
=
3
4
y x
4
= 1. Las
correspondientes funciones de base
1
(x),
2
(x),
3
(x) se representan en la gura
6.5.
Sea V
h
el subespacio vectorial de V formado por todas las funciones v
h
(x) de la
forma
v
h
(x) = v
1

1
(x) + v
2

2
(x) + v
3

3
(x),
siendo v
1
, v
2
, v
3
R valores arbitrarios. El espacio V
h
est formado por todas las
funciones poligonales que se anulan en x = 0 y x = 1, y cuyos posibles puntos de no
derivabilidad se localizan en los nodos internos x
1
=
1
4
, x
2
=
1
2
y x
3
=
3
4
.
La formulacin variacional discreta del problema es la siguiente: determinar u
h

V
h
tal que
_
1
0
u
/
h
(x)v
/
h
(x) dx +
_
1
0
u
h
(x)v
h
(x) dx =
_
1
0
2v
h
(x) dx, v
h
V
h
.
Tomemos un elemento arbitrario v
h
(x) = v
1

1
(x) + v
2

2
(x) + v
3

3
(x) en V
h
y susti-
tuymoslo en la ecuacin variacional:
_
1
0
u
/
h
(x)(v
1

/
1
(x) + v
2

/
2
(x) + v
3

/
3
(x)) dx+
_
1
0
u
h
(x)(v
1

1
(x) + v
2

2
(x) + v
3

3
(x)) dx
=
_
1
0
2(v
1

1
(x) + v
2

2
(x) + v
3

3
(x)) dx.
6.4 Mtodo de elementos nitos 191
Reagrupando los trminos, resulta:
v
1
_
_
1
0
u
/
h
(x)
/
1
(x) dx +
_
1
0
u
h
(x)
1
(x) dx
_
+
v
2
_
_
1
0
u
/
h
(x)
/
2
(x) dx +
_
1
0
u
h
(x)
2
(x) dx
_
+
v
3
_
_
1
0
u
/
h
(x)
/
3
(x) dx +
_
1
0
u
h
(x)
3
(x) dx
_
= v
1
_
1
0
2
1
(x) dx + v
2
_
1
0
2
2
(x) dx + v
3
_
1
0
2
3
(x) dx.
Tomemos ahora v
1
= 1, v
2
= v
3
= 0; en tal caso, de la igualdad anterior se deduce:
_
1
0
u
/
h
(x)
/
1
(x) dx +
_
1
0
u
h
(x)
1
(x) dx =
_
1
0
2
1
(x) dx.
Para v
1
= v
3
= 0 y v
2
= 1 se obtiene la ecuacin
_
1
0
u
/
h
(x)
/
2
(x) dx +
_
1
0
u
h
(x)
2
(x) dx =
_
1
0
2
2
(x) dx,
mientras que
_
1
0
u
/
h
(x)
/
3
(x) dx +
_
1
0
u
h
(x)
3
(x) dx =
_
1
0
2
3
(x) dx
resulta al elegir v
1
= v
2
= 0 y v
3
= 1.
Como la solucin buscada u
h
es un elemento de V
h
, podemos escribirla en la forma
u
h
(x) = u
1

1
(x) + u
2

2
(x) + u
3

3
(x),
donde u
1
, u
2
, u
3
son incgnitas a determinar. Sustituyendo la expresin de u
h
en la
primera de las tres ecuaciones anteriores, se obtiene:
_
1
0
(u
1

/
1
(x) + u
2

/
2
(x) + u
3

/
3
(x))
/
1
(x) dx+
_
1
0
(u
1

1
(x) + u
2

2
(x) + u
3

3
(x))
1
(x) dx
=
_
1
0
2
1
(x) dx,
192 Mtodos numricos para problemas de contorno
de donde
u
1
_
_
1
0

/
1
(x)
/
1
(x) dx +
_
1
0

1
(x)
1
(x) dx
_
+
u
2
_
_
1
0

/
1
(x)
/
2
(x) dx +
_
1
0

1
(x)
2
(x) dx
_
+
u
3
_
_
1
0

/
1
(x)
/
3
(x) dx +
_
1
0

1
(x)
3
(x) dx
_
=
_
1
0
2
1
(x) dx.
Si denimos
a
ij
=
_
1
0

/
i
(x)
/
j
(x) dx +
_
1
0

i
(x)
j
(x) dx, f
i
=
_
1
0
2
i
(x) dx,
la expresin anterior puede escribirse como:
a
11
u
1
+ a
12
u
2
+ a
13
u
3
= f
1
.
De manera totalmente anloga, pueden deducirse las ecuaciones
a
21
u
1
+ a
22
u
2
+ a
23
u
3
= f
2
y
a
31
u
1
+ a
32
u
2
+ a
33
u
3
= f
3
.
Los coecientes a
ij
y f
i
se determinan explcitamente:
a
11
= a
22
= a
33
=
49
24
, a
12
= a
21
= a
23
= a
32
=
95
96
, a
13
= a
31
= 0, f
1
= f
2
= f
3
=
1
8
.
En resumen, las incgnitas u
1
, u
2
, u
3
se obtienen como solucin de un sistema
lineal de tres ecuaciones, que en forma matricial se escribe como
_
_
_
49
24

95
96
0

95
96
49
24

95
96
0
95
96
49
24
_
_
_
_
_
_
u
1
u
2
u
3
_
_
_
=
_
_
_
1
8
1
8
1
8
_
_
_
.
Obviamente, dicho sistema corresponde al caso general con q = 1 y f = 2.
La solucin del sistema viene dada por
u
1
0,171462, u
2
0,227438, u
3
0,171462.
El error e
i
= [u(x
i
) u
i
[ cometido en cada nodo interior puede determinarse en este
caso, ya que conocemos la solucin exacta:
e
1
0,000815, e
2
0,001076, e
3
0,000815.
El error global cometido es pues e = m ax(e
1
, e
2
, e
3
) 0,001076.
Los resultados obtenidos se representan en la gura 6.6, que ha sido generada con
el siguiente cdigo Sage:
6.4 Mtodo de elementos nitos 193
Figura 6.6: Ejemplo 6.2: solucin exacta y valores aproximados.
sage: #
sage: ### Metodo de elementos finitos ###
sage: #
sage: # Ecuacio n: -u +qu=f(x), a<x<b.
sage: # Condiciones de contorno de tipo Dirichlet:
sage: # u(a)=0, u(b)=0.
sage: #
sage: #
sage: # Datos del problema
sage: #
sage: a = 0. # extremo inferior del intervalo
sage: b = 1. # extremo superior del intervalo
sage: #
sage: N = 4 # numero de particiones
sage: #
sage: q = 1. # coeficiente de u
sage: f(x) = 2. # termino independiente
sage: #
sage: alpha = 0. # c. contorno izquierda
sage: beta = 0. # c. contorno derecha
sage: #
sage: ### Implementacio n del metodo ###
sage: #
sage: h = (b-a)/N # paso de malla
sage: #
sage: X = vector ([a+j*h for j in range(N+1)]) # mallado
sage: U = vector ([0. for i in range(N+1)]) # solucio n
sage: #
sage: # condiciones de contorno
sage: U[0] = alpha
sage: U[N] = beta
sage: #
sage: # termino independiente
sage: F = vector ([0. for i in range(N-1)])
sage: for i in range(1, N):
aux = integral(f(x)*(x-X[i-1])/h, x, X[i-1], X[i])
194 Mtodos numricos para problemas de contorno
aux += integral(f(x)*(X[i+1]-x)/h, x, X[i], X[i+1])
F[i-1] = h*aux
sage: #
sage: # matriz del sistema
sage: A = matrix(RR, N-1, N-1)
sage: #
sage: for i in range(1, N-1):
A[i-1, i-1] = 2.+(2/3)*q*h^2 # diagonal
A[i-1, i] = -1.+(1/6)*q*h^2 # superdiagonal
A[i, i-1] = -1.+(1/6)*q*h^2 # subdiagonal
sage: A[N-2, N-2] = 2.+(2/3)*q*h^2 # ultimo elemento de la diagonal
sage: #
sage: # solucio n del sistema lineal
sage: sol = A.inverse ()*F # U=A^(-1)*F
sage: #
sage: # actualizamos el vector U
sage: for i in range(N-1):
U[i+1] = sol[i]
sage: #
sage: #################################
sage: #
sage: # dibujamos los puntos
sage: sol = zip(X, U)
sage: fig1 = list_plot(sol , color=blue, legend_label=aprox.)
sage: # y los unimos con segmentos
sage: fig1 += line(sol)
sage: #
sage: # Comparacio n con la solucio n exacta
sage: u = function(u, x)
sage: ec = -diff(u, x, 2) + q*u == f(x)
sage: sol = desolve(ec, u, ics=[a, alpha , b, beta])
sage: #
sage: fig2 = plot(sol , a, b, color=red, legend_label=exacta )
sage: show(fig1 + fig2)
Por ltimo, calculamos los errores cometidos en cada nodo:
sage: # Calculo de los errores en los nodos interiores
sage: err = [abs(U[j]-sol(X[j])) for j in range(1, N)]; err
[0.000815468791417362 , 0.00107565359683126 , 0.000815467679347037]
as como el error global:
sage: # Error global
sage: max(err)
0.00107565359683126
6.5 Algunos comentarios 195
6.5. Algunos comentarios
Los mtodos numricos estudiados en las secciones precedentes pueden aplicarse
para la resolucin de problemas de contorno no lineales, de la forma
_

_
y
//
= f (x, y, y
/
), x [a, b],
y(a) = ,
y(b) = ,
o con otros tipos de condiciones de contorno. En tal caso, la solucin numrica se
determina a partir de la solucin de un sistema de ecuaciones no lineales, que debe
resolverse mediante tcnicas matemticas apropiadas. El estudio de tales cuestiones
queda fuera del alcance de este curso, por lo que no insistiremos ms en ellas.
Los problemas que surgen en las aplicaciones prcticas suelen modelizarse me-
diante ecuaciones en derivadas parciales, tanto estacionarias como de evolucin (depen-
dientes del tiempo), en dominios bi- o tridimensionales. Tanto el mtodo de diferen-
cias nitas como el de elementos nitos pueden extenderse para resolver problemas
de esta ndole, siendo el mtodo de elementos nitos el ms extendido debido a su
mayor exibilidad y capacidad de adaptacin a problemas en dominios complejos.
Tanto el estudio terico de ecuaciones en derivadas parciales como su resolucin nu-
mrica por el mtodo de elementos nitos requieren de tcnicas matemticas avanza-
das, por lo que no entraremos en ms detalles.
Existen varios paquetes informticos profesionales para aplicar el mtodo de ele-
mentos nitos, especialmente en las reas de Clculo de Estructuras y Mecnica de
Fluidos. Queremos mencionar aqu la existencia del programa gratuito de cdigo
abierto FreeFem++, que puede descargarse desde la pgina web www.freefem.org/
ff++/. Este programa permite resolver diversos tipos de ecuaciones en derivadas par-
ciales, con distintas clases de condiciones de contorno, en dos y tres dimensiones. En
la gura 6.7 se muestra un ejemplo de deexin de una viga tridimensional realizado
con FreeFem++.
6.6. Aplicaciones
6.6.1. Deexin de vigas empotradas
Vamos a estudiar la deformacin sufrida por una viga empotrada, con cargas axia-
les y transversales. Bajo la hiptesis de pequeas deformaciones (esto es, y
/
(x) 0),
196 Mtodos numricos para problemas de contorno
Figura 6.7: Deexin, debido a su propio peso, de una viga tridimensional empotrada en un
extremo.
la deformacin sufrida por la viga es solucin del siguiente problema de contorno:
_

_
y
//
(x)
Q
EI
y(x) =
M(x)
EI
, x [0, L],
y(0) = 0,
y(L) = 0,
siendo Q la carga axial, E el mdulo de elasticidad, I el momento de inercia, M(x)
el momento ector y L la longitud de la viga. Si suponemos que la carga P est
uniformemente distribuida, el momento ector viene dado en este caso por
M(x) =
P
2
x(L x).
P
L
Q Q
Figura 6.8: Deexin de una viga empotrada con cargas axiales y transversales: esquema.
6.6 Aplicaciones 197
En la gura 6.9 se representan los resultados obtenidos con el mtodo de diferen-
cias nitas al considerar diferentes cargas axiales. Los valores de los parmetros son
L = 2 m, E = 2 10
11
N/m
2
, I = 7,85 10
9
m
4
y P = 150; para Q se han tomado los
valores 100, 500 y 1000. Los clculos han sido realizados usando N = 20 particiones.
Figura 6.9: Viga empotrada con diferentes cargas axiales.
A continuacin se muestra un cdigo Sage para resolver el problema considerado:
sage: # Deflexio n de vigas con cargas axiales y transversales
sage: # ------------------------------------------------------
sage: #
sage: # Ecuacio n: y- Q/(EI)y=M(x)/(EI) en [0, L].
sage: # Condiciones de contorno: y(0)=0, y(L)=0.
sage: #
sage: # Metodo: diferencias finitas
sage: #
sage: # Datos del problema
sage: #
sage: L = 2. # longitud de la viga
sage: Q = 100. # carga axial
sage: E = 2.e11 # modulo de elasticidad
sage: I = 7.85e-9 # momento de inercia
sage: P = 150. # carga transversal
sage: #
sage: a = 0. # extremo inferior del intervalo
sage: b = L # extremo superior del intervalo
sage: #
sage: N = 20 # numero de particiones
sage: #
sage: p(x) = 0. # coeficiente de y
sage: q(x) = -Q/(E*I) # coeficiente de y
sage: r(x) = 0.5*P*x*(L-x)/(E*I) # termino independiente
sage: #
sage: alpha = 0. # c. contorno izquierda
sage: beta = 0. # c. contorno derecha
198 Mtodos numricos para problemas de contorno
sage: #
sage: ### Implementacio n del metodo ###
sage: #
sage: h = (b-a)/N # paso de malla
sage: #
sage: X = vector ([a+j*h for j in range(N+1)]) # mallado
sage: Y = vector ([0. for j in range(N+1)]) # solucio n
sage: #
sage: # condiciones de contorno
sage: Y[0] = alpha
sage: Y[N] = beta
sage: #
sage: # termino independiente
sage: B = vector ([(-h^2)*r(X[j+1]) for j in range(N-1)])
sage: B[0] += alpha *(1 -0.5*h*p(X[1]))
sage: B[N-2] += beta *(1+0.5*h*p(X[N -1]))
sage: #
sage: # matriz del sistema
sage: A = matrix(RR, N-1, N-1)
sage: #
sage: for j in range(1, N-1):
A[j-1, j-1] = 2.-q(X[j])*h^2 # diagonal
A[j-1, j] = -1.-0.5*h*p(X[j]) # superdiagonal
A[j, j-1] = -1.+0.5*h*p(X[j]) # subdiagonal
sage: A[N-2, N-2] = 2.-q(X[N -1])*h^2 # ultimo elemento de la diagonal
sage: #
sage: # solucio n del sistema lineal
sage: sol = A.inverse ()*B # y=A^(-1)*B
sage: #
sage: # actualizacio n del vector y
sage: for j in range(0, N-1):
Y[j+1] = sol[j]
sage: #
sage: #################################
sage: #
sage: # dibujamos los puntos
sage: sol = zip(X, Y)
sage: fig = list_plot(sol)
sage: # los unimos con segmentos
sage: fig += line(sol)
sage: # y mostramos el resultado
sage: show(fig)
Para aplicar el mtodo de elementos nitos, reescribimos la ecuacin diferencial
de la siguiente forma:
u
//
(x) + q u(x) = f (x),
donde u y, q =
Q
EI
y f (x) =
M(x)
EI
. Como era de esperar, al aplicar el mtodo de
elementos nitos se obtienen resultados totalmente anlogos a los de la gura 6.9. El
cdigo Sage correspondiente es el siguiente:
sage: # Deflexio n de vigas con cargas axiales y transversales
sage: # ------------------------------------------------------
sage: #
sage: # Ecuacio n: -u + Q/(EI)u=-M(x)/(EI) en [0, L].
sage: # Condiciones de contorno: u(0)=0, u(L)=0.
sage: #
sage: # Metodo: elementos finitos
6.6 Aplicaciones 199
sage: #
sage: # Datos del problema
sage: #
sage: L = 2. # longitud de la viga
sage: Q = 100. # carga axial
sage: E = 2.e11 # modulo de elasticidad
sage: I = 7.85e-9 # momento de inercia
sage: P = 150. # carga transversal
sage: #
sage: a = 0. # extremo inferior del intervalo
sage: b = L # extremo superior del intervalo
sage: #
sage: N = 20 # numero de particiones
sage: #
sage: q = Q/(E*I) # coeficiente de u
sage: r(x) = -0.5*P*x*(L-x)/(E*I) # termino independiente
sage: #
sage: alpha = 0. # c. contorno izquierda
sage: beta = 0. # c. contorno derecha
sage: #
sage: ### Implementacio n del metodo ###
sage: #
sage: h = (b-a)/N # paso de malla
sage: #
sage: X = vector ([a+j*h for j in range(N+1)]) # mallado
sage: U = vector ([0. for i in range(N+1)]) # solucio n
sage: #
sage: # condiciones de contorno
sage: U[0] = alpha
sage: U[N] = beta
sage: #
sage: # termino independiente
sage: F = vector ([0. for i in range(N-1)])
sage: for i in range(1, N):
aux = integral(f(x)*(x-X[i-1])/h, x, X[i-1], X[i])
aux += integral(f(x)*(X[i+1]-x)/h, x, X[i], X[i+1])
F[i-1] = h*aux
sage: #
sage: # matriz del sistema
sage: A = matrix(RR, N-1, N-1)
sage: #
sage: for i in range(1, N-1):
A[i-1, i-1] = 2.+(2/3)*q*h^2 # diagonal
A[i-1, i] = -1.+(1/6)*q*h^2 # superdiagonal
A[i, i-1] = -1.+(1/6)*q*h^2 # subdiagonal
sage: A[N-2, N-2] = 2.+(2/3)*q*h^2 # ultimo elemento de la diagonal
sage: #
sage: # solucio n del sistema lineal
sage: sol = A.inverse ()*F # U=A^(-1)*F
sage: #
sage: # actualizamos el vector U
sage: for i in range(N-1):
U[i+1] = sol[i]
sage: #
sage: #################################
sage: #
sage: # dibujamos los puntos
sage: points = zip(X, U)
sage: fig = list_plot(points)
200 Mtodos numricos para problemas de contorno
sage: # los unimos con segmentos
sage: fig += line(points)
sage: # y mostramos el resultado
sage: show(fig)
Ntese que el trmino independiente no es constante en este caso, por lo que se han
calculado numricamente las integrales correspondientes.
BIBLIOGRAFA COMPLEMENTARIA
[1] M. Braun. Ecuaciones Diferenciales y sus Aplicaciones. Grupo Editorial Iberoamrica,
1990.
[2] R.L. Burden, J.D. Faires. Mtodos Numricos. Thompson-Paraninfo, 2004.
[3] S.C. Chapra, R.P. Canale. Mtodos Numricos para Ingenieros. McGraw-Hill, 2003.
[4] C.H. Edwards, D.E. Penney. Ecuaciones Diferenciales Elementales y Problemas con
Condiciones en la Frontera. Prentice Hall, 2000.
[5] E. Hairer, S.P. Norsett, G. Wanner. Solving Ordinary Differential Equations. vols. I-II,
Springer, 2010.
[6] D. Kincaid, W. Cheney. Anlisis Numrico. Adisson-Wesley, 1994.
[7] M.L. Krasnov, A.I. Kiseliov, G.I. Makrenko. Ecuaciones Diferenciales Ordinarias.
URSS, 2005.
[8] R.J. LeVeque. Finite Difference Methods for Ordinary and Partial Differential Equa-
tions. SIAM, 2007.
[9] J.H. Mathews, K.D. Fink. Mtodos Numricos con Matlab. Prentice-Hall, 2005.
[10] R.K. Nagel, E.B. Saff, A.D. Snider. Ecuaciones Diferenciales y Problemas con Valores
en la Frontera. Pearson, 2002.
[11] J.H. Saiac. Mthode des lments Finis. Analyse Numrique des quations aux Drives
Partielles. http://www.cnam.fr/maths/Membres/saiac/polyB4.pdf
202 BIBLIOGRAFA COMPLEMENTARIA
[12] G.F. Simmons, S.G. Krantz. Ecuaciones Diferenciales. Teora y Prctica. McGraw-Hill,
2007.
[13] The Sage Development Team. Sage Tutorial. http://www.sagemath.org/pdf/
SageTutorial.pdf.

You might also like