Está en la página 1de 70

ndice general

1. Mtodos numricos para ecuaciones diferenciales ordinarias


1.1. Mtodo en diferencias nitas

. . . . . . . . . . . . . . . . . . . . . .

1.2. Mtodo de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.1.

Anlisis del error . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.2.

Ejemplos de sistemas . . . . . . . . . . . . . . . . . . . . . .

18

1.3. El mtodo de Heun y el mtodo del punto medio . . . . . . . . . .

24

1.4. Mtodos explcitos de Runge-Kutta . . . . . . . . . . . . . . . . . . .

40

2. Mtodos numricos para ecuaciones en derivadas parciales (EDPs) 49


2.1. Clasicacin de EDPs de segundo orden . . . . . . . . . . . . . . . .

49

2.2. Mtodos numricos para problemas parablicos . . . . . . . . . . .

50

2.2.1.

Mtodo explcito . . . . . . . . . . . . . . . . . . . . . . . . .

51

2.2.2.

Mtodo implcito . . . . . . . . . . . . . . . . . . . . . . . . .

55

2.2.3.

Mtodo de Crank-Nicholson . . . . . . . . . . . . . . . . . .

59

2.3. Estabilidad, consistencia y convergencia . . . . . . . . . . . . . . . .

61

A. Analisis numrico matricial

65

A.1. Normas vectoriales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

A.2. Normas matriciales

67

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

Captulo 1

Mtodos numricos para


ecuaciones diferenciales
ordinarias
La inmensa mayora de las ecuaciones diferenciales no se pueden resolver
de forma analtica explcita, por lo que resulta esencial disear algoritmos
numricos que permitan hallar una aproximacin numrica precisa. Los
esfuerzos de investigacin en este sentido han proporcionado un vasto
abanico de esquemas numricos que permiten hallar soluciones aproximadas
para una gran variedad de ecuaciones diferenciales. Adems, hoy en da
uno puede elegir entre una amplia despensa de software que proporcionan
resultados precisos y ables en periodos de tiempo moderadamente cortos.
No obstante, todos esos paquetes y los mtodos que subyacen tienen sus
limitaciones, y quienes los utilizan deben ser capaces de reconocer cuando
el software trabaja correctamente y cuando genera resultados espurios.
En este captulo nos ocuparemos de presentar los mtodos numricos
bsicos para resolver problemas de valores iniciales (PVI). Lo cierto es que
los mtodos esenciales que vamos a considerar raramente se utilizan en
la prctica, incluso para ecuaciones diferenciales relativamente sencillas,
puesto que existen mtodos ms sosticados, especializados y verstiles.
Pero cualquier desarrollo avanzado se construye sobre esquemas bsicos y
las ideas que subyacen de stos.
Los problemas representativos con los que se enfrenta un analista numrico
de ecuaciones diferenciales ordinarias aparecen ya en las ecuaciones de
primer orden ms simples. Nuestro objetivo es calcular una aproximacin a

la solucin para el problema de Cauchy:


y 0 (t) = f (t, y(t)),

y(t0 ) = y0 ,

(1.1)

donde y(t) es una funcin real denida en un intervalo I, y f (t, y) es una


funcin denida en I R.
Por el bien de la simplicidad, centraremos nuestra atencin en el caso
escalar; sin embargo, todas las frmulas y resultados se pueden adaptar a
sistemas de primer orden solo con reemplazar las funciones escalares y(t) y
f (t, y) por funciones vectoriales. Por otra parte, sabemos que las ecuaciones
diferenciales de orden superior se reducen a sistemas equivalentes de primer
orden.
Por no ser objeto de este tema, no entraremos a estudiar en profundidad
los diferentes resultados tericos que aseguran, bajo ciertas hiptesis, la
existencia, unicidad o regularidad de las soluciones de los problemas de
Cauchy. No obstante recordamos a continuacin uno de los teoremas clsicos
de existencia y unicidad.

Teorema 1.1 (de Cauchy-Lipschitz) Sea f (t, x) una funcin


continua sobre I R y lipschitciana respecto a la segunda de sus
variables, esto es,

L>0

|f (t, x) f (t, y)| L|x y|,

t I, x, y R,

entonces el problema de Cauchy (1.1) admite una nica solucin.

Observacin 1.2 La condicin de Lipschitz es relativamente suave sobre


la funcin. Obsrvese que si la derivada parcial de f (t, x) respecto de la
segunda variable es una funcin continua, la condicin de Lipschitz se
traduce en que dicha derivada permanezca acotada.
En numerosos problemas fsicos la variable t representa el tiempo y el
intervalo I se suele considerar desde [t0 , t0 + ]. Por ello el instante t0 se
denomina instante inicial y la condicin impuesta en ese instante y(t0 ) = y0
se denomina condicin inicial.

1.1.

Mtodo en diferencias nitas

Uno de los mtodos ms verstiles para resolver ecuaciones diferenciales


ordinarias es el mtodo de diferencias nitas, que consiste, bsicamente,
en aproximar las derivadas de una funcin en un punto mediante una
combinacin de las imgenes de la funcin en puntos del entorno (los
puntos de la malla). La herramienta que nos proporciona tales frmulas,
denominadas de diferencias nitas", es el desarrollo de Taylor de una
funcin en un punto. En primer lugar hallemos la frmula de aproximacin
de la primera derivada:
1
y(t + h) = y(t) + y 0 (t)h + y 00 ()h2 ,
2

[t, t + h],

donde hemos utilizado la frmula del resto de Cauchy. Despejando y 0 (t) de


la ecuacin anterior podemos hallar su valor
y 0 (t) =

y(t + h) y(t) 1 00
y ()h,
h
2

de donde obtenemos la aproximacin


y 0 (t)

y(t + h) y(t)
.
h

La frmula anterior se denomina diferencia progresiva de la primera


derivada. Obsrvese que el error de la aproximacin es proporcional a h,
que lo expresaremos diciendo que es una aproximacin de primer orden.
Cuando interese poner de maniesto el orden de aproximacin omitiremos
el resto de Cauchy escribiendo simplemente
y 0 (t) =

y(t + h) y(t)
+ O(h),
h

donde el trmino O(h) se reere a que el trmino proporcional a h est


acotado por un mltiplo constante de h cuando h tiende a cero. Realizando
el desarrollo de Taylor de y(t h) y procediendo de forma similar se obtiene
una nueva frmula de aproximacin para y 0 (t), pero esta vez en funcin de
los valores de u en el nodo t y t h,
y 0 (t) =

y(t) y(t h)
+ O(h).
h

En este caso, la frmula aproximacin obtenida se denomina diferencia


regresiva de la primera derivada. Las diferencias progresivas y regresivas
son aproximaciones de primer orden a la primera derivada en t. Pero no son

stas las nicas posibilidades para aproximar la primera derivada. Consideremos


los siguientes desarrollos de Taylor:
( )
1
y(t + h) = y(t) + y 0 (t)h + y 00 (t)h2 + O h3 ,
2
( )
1
y(t h) = y(t) y 0 (t)h + y 00 (t)h2 + O h3 ,
2
donde el resto de Taylor es proporcional a h3 . Si restamos las formulas
anteriores obtenemos
( )
y(t + h) y(t h) = 2y 0 (t)h + O h3 ,
de donde se obtiene fcilmente
y 0 (t) =

y(t + h) y(t h)
+ O(h2 ).
2h

Luego he aqu otra frmula de aproximacin a la primera derivada en t,


pero en este caso de segundo orden, denominada diferencia central de
la primera derivada.
Tratemos de hallar ahora una aproximacin a la segunda derivada en un
punto t. Tengamos en cuenta los siguientes desarrollos de Taylor:
( )
1
1
y(t + h) = y(t) + y 0 (t)h + y 00 (t)h2 + y (3) (t)h3 + O h4 ,
2
6
( )
1
1
y(t h) = u(t) y 0 (t)h + y 00 (t)h2 y (3) (t)h3 + O h4 .
2
6

(1.2)

Si en lugar de restar, los sumamos deducimos la identidad


( )
y(t + h) + y(t h) = 2y(t) + y 00 (t)h2 + O h4 ,
de donde podemos despejar sin dicultad y 00 (t),
y 00 (t) =

y(t + h) 2y(t) + y(t h)


+ O(h2 ).
2
h

Despreciando el trmino O(h2 ) hemos obtenido una aproximacin de orden


2 para la segunda derivada de la funcin y en el punto t. Tal aproximacin
se denomina diferencia central de la segunda derivada. Para obtener
aproximaciones de derivadas de orden superior tendramos que proceder
de forma anloga, y necesitaramos evaluar la funcin en ms puntos
del entorno. Observemos que para aproximar la primera derivada hemos
necesitado evaluar la funcin en dos puntos; para aproximar la segunda
derivada hemos evaluado la funcin en tres puntos. En general, aproximar
la derivada n-sima necesitaramos evaluar la funcin en al menos n + 1
puntos distintos.

1.2.

Mtodo de Euler

Nuestra meta consiste en calcular una aproximacin a la nica solucin


para el problema de valor inicial (1.1). En primer lugar, introducimos una
malla de puntos (puntos nodales) comenzando en el instante inicial t0 y
acabando en el tiempo nal tN = t0 + de la forma
t0 < t1 < t2 < < tk < < tN
donde la distancia entre un nodo y otro hk = tk+1 tk est sucientemente
cerca. Por comodidad, utilizaremos una separacin uniforme entre los puntos
del mallado, esto es, hk = h jo para todo k. Este requisito simplica el
anlisis sin afectar signicativamente al estudio general para pasos no
uniformes. En este caso, el punto k-simo de la malla est dado por
tk = t0 +kh. El propsito es construir un algoritmo recursivo que proporcione
aproximaciones uk y(tk ) de la solucin real en los puntos nodales k =
0, 1, 2, . . . elegidos. Los valores de y(t) en los puntos internodales se pueden
calcular mediante cualquier procedimiento de interpolacin, por ejemplo, los
splines cbicos. El polinomio de Taylor de primer orden permite aproximar
el valor de la funcin y(t) alrededor de cualquier nodo tk :
y(t) y(tk ) + (t tk )y 0 (tk ) = y(tk ) + (t tk )f (tk , y(tk )),
donde hemos reemplazado la derivada y 0 (t) por el trmino que aparece en
la ecuacin (1.1) objeto de estudio. En particular, si tomamos t = tk+1 ,
podemos aproximar el valor del siguiente punto nodal de la malla
y(tk+1 ) y(tk ) + (tk+1 tk )f (tk , y(tk )).

(1.3)

En la prctica solamente sabemos la aproximacin uk al valor y(tk ), luego


estamos obligados a reemplazar uk por y(tk ) en la frmula (1.3), por lo tanto
obtenemos el esquema iterativo:
uk+1 = uk + hf (tk , uk ).

(1.4)

Esta simple idea es el punto de partida del mtodo de Euler. Este mtodo
es el esquema numrico unipaso ms simple para integrar una ecuacin
diferencial ordinaria. Con el n de comprender mejor el mtodo de Euler
en la prctica, es conveniente testearlo con algn problema sencillo que
sepamos resolver, lo que permite estudiar el error de nuestra aproximacin
con la solucin real.

8
Mtodo de Euler
2
sol aprox
sol exacta
1.8

1.6

1.4

1.2

0.8

0.6

0.2

0.4

0.6

0.8

1.2

Figura 1.1: y 0 + u = 2 cos t,

1.2.1.

1.4

1.6

1.8

u(0) = 2

Anlisis del error

Antes de continuar, examinaremos algunos aspectos relacionados con el


error en un esquema numrico. Un mtodo numrico unipaso general se
puede escribir como
uk+1 = uk + hg(h, tk , uk ),

(1.5)

donde g es una funcin conocida que, mediante iteraciones, proporciona


la solucin aproximada uk y(tk ) en el instante tk , siendo el tamao del
paso h = tk+1 tk (que por propsitos didcticos lo consideramos jo). En
cualquier esquema de integracin numrica hay distintos de errores que
clasicaremos en tres tipos:

Error local: Es aquel cometido en el paso actual del algoritmo. Incluso


cuando somos capaces de hallar el valor exacto de la solucin uk =
y(tk ) en el instante tk , la aproximacin numrica en el instante tk+1 es
ciertamente no exacta, y se introduce un error en el valor calculado
uk+1 y(tk+1 ). Esencialmente, hay dos subtipos de errores locales: el
error de truncamiento (o error de consistencia) y el error de
redondeo. El error de redondeo es consecuencia de la falta de precisin
de la aritmtica computacional y, en ocasiones, puede ocasionar graves
alteraciones en la aproximacin. El error de truncamiento se debe a
la aproximacin que realizamos en el instante tk+1 a partir de su valor,

an cuando sea exacto, en el instante tk . Debido a su relevancia, el


error de truncamiento ser analizado cuidadosamente ms adelante.
Error inicial: Se maniesta cuando la condicin inicial u0 y(t0 ) no se
puede calcular con exactitud debido, fundamentalmente, a las limitaciones
en la aritmtica computacional. Por ejemplo, si y(t0 ) = , necesariamente
tenemos que tomar una aproximacin de y, en consecuencia, introducimos
algn error inicial que depender del nmero de decimales exactos que
tomemos en .
Error global: Es la diferencia entre el valor aproximado uk y el valor exacto
y(tk ) en el nodo tk . Los errores locales tienden a acumularlo, puesto que,
en general, no partimos del valor exacto en el instante tk1 . De hecho,
ni siquiera podemos garantizar el valor exacto en la condicin inicial
u0 y(t0 ) el el caso de que haya error inicial.
Resumiendo, conforme iteramos nuestro esquema numrico el error se
propaga en cada paso. Por simplicidad, pongmosnos en una situacin
favorable y supongamos que la condicin inicial es exacta u0 = y(t0 ), y que
los errores de redondeo no juegan un papel signicativo (aunque uno debe
siempre tenerlos en cuenta en la computacin). En ese caso el error local
juega un papel fundamental hasta tal punto que, bajo ciertas hiptesis, si
tenemos dominado el error local, podemos dominar tambin la propagacin
del error global. As pues, analizaremos el error local en detalle. Para medir
el error local que va de tk a tk+1 basta con comparar la solucin exacta
y(tk+1 ) con su aproximacin numrica bajo la hiptesis de que uk = y(tk ).
Naturalmente, en la prctica, este caso nunca se da, por lo que el error
local es una cantidad articial que, por s sola, no ilustra correctamente el
funcionamiento del mtodo.

Denicin 1.3 Se denomina error local de discretizacin de un


mtodo numrico de la forma (1.5) al valor:
Ek+1 = (yk+1 yk ) hg(h, tk , yk ),

k = 0, 1, 2, . . .

El valor k+1 = h1 Ek+1 se denomina error de truncacin o error de


consistencia

10

Obsrvese que el error de discretizacin en el instante tk+1 nos proporciona


la diferencia entre el valor exacto de la solucin en dicho punto yk+1 = y(tk+1 )
y el valor que se obtendra al aproximar este valor mediante el esquema
numrico (1.5) si se partiese de la solucin exacta en el instante tk .
Es fcil deducir la ecuacin
yk+1 yk
1
g(h, tk , yk ) = Ek+1 = k+1 ,
h
h
as pues, el error de truncacin (consistencia) es la cantidad por la cual
el mtodo de discretizacin aplicado sobre el valor exacto en los puntos
nodales no satisface la ecuacin diferencial (1.1).

Denicin 1.4 Se dice que un esquema numrico de la forma (1.5)


es consistente con la ecuacin diferencial ordinaria (1.1) si se
verica que
N

|Ek | = 0.
lm
h0

k=1

Adems, diremos que el mtodo es consistente de orden p si para


cualquier valor de h positivo e inferior a un cierto paso mximo h ,
se cumple que
N

|Ek | C hp ,
k=1

donde C es una constante.

Observacin 1.5 Observemos que si |Ek | M hp+1 para todo k, entonces


el mtodo es consistente de orden p. En efecto,
N

k=1

|Ek | N M hp+1 =

M hp+1 = M hp .
h

En la prctica, y siempre y cuando tengamos un orden de derivacin


conveniente, podemos calcular el orden de consistencia de un esquema
numrico desarrollando en Taylor (respecto de h) la solucin exacta, esto
es,
h2
h3
y(tk+1 ) = y(tk ) + hy 0 (tk ) + y 00 (tk ) + y 000 (tk ) +
2
6
(1.6)
2
h3 (2)
h (1)
= yk + hf (tk , yk ) + f (tk , yk ) + f (tk , yk ) +
2
6

11

donde hemos denotado


d (k1)
[f
(t, y)],
dt
Por ejemplo, los primeros trminos son
f (k) (t, y) =

f (0) (t, y) = f (t, y).

d
f
f
[f (t, y)] =
(t, y) + f (t, y) (t, y),
dt
t
y
2
d
f
f
f
f (2) (t, y) = [f (1) (t, y)] = 2 (t, y) +
(t, y) (t, y)
dt
t
t
y
)
((
)2
2f
2f
f
+ f (t, y)
(t, y) + 2
(t, y) + f (t, y)2 2 (t, y),
y
t y
y

f (1) (t, y) =

(3)

(
)2
3f
f
2f
f
2f
f
f
(t, y) = 3 (t, y) + 3 (t, y)
(t, y) +
(t, y) 2 (t, y) +
(t, y)
(t, y)
t
t
t y
y
t
t
y
((
)3
(
))
f
2f
f
f
2f
3f
f (t, y)
(t, y) + 5
(t, y) (t, y) + 3
(t, y) 2 (t, y) + 2 (t, y)
y
t y
y
t
y
t y
)
(
3
2f
3f
f
3 f
2
(t, y) + f (t, y)
(t, y)
f (t, y) 4 (t, y) 2 (t, y) + 3
y
y
t y 2
y 3

Por otra parte, desarrollamos en Taylor la funcin g(h, t, y) respecto de


la variable h alrededor del punto 0
g(h, t, y) = g(0, t, y) + h

g
h2 2 g
(0, t, y) +
(0, t, y) +
h
2 h2

(1.7)

Finalmente, utilizando (1.6) y (1.7) obtenemos:


Ek+1 = (yk+1 yk ) hg(h, tk , yk )

(
)
h2
g
(1)
= h (f (tk , yk ) g(0, tk , yk )) +
f (tk , yk ) 2 (0, tk , yk )
2
h
(
)
(
)
3
2
4
h
g
h
3g
(2)
(3)
f (tk , yk ) 3 2 (0, tk , yk ) +
f (tk , yk ) 4 3 (0, tk , yk ) + . . .
6
h
24
h
(1.8)
As pues, bajo condiciones de regularidad convenientes sobre las derivadas,
el orden de consistencia del esquema numrico ser de orden p siempre y
cuando
pg
(m) g
p
(0,
t
,
y
),
m
<
p,
f
(t
,
y
)
=
6
(p
+
1)
(0, tk , yk ),
k k
k k
h(m)
hp
ya que, en ese caso, el error de discretizacin tiene orden p + 1.
f (m) (tk , yk ) = (m + 1)

Ejemplo 1.1 En el mtodo de Euler uk+1 = uk + hf (tk , uk ) se verifica que g(h, tk , yk ) =


g
(0, tk , yk ) = 0. Entonces el mtodo de Euler
f (tk , yk ), de donde g(0, tk , yk ) = f (tk , yk ) y h
(1)
es de orden de consistencia 1 (a menos que f (t, y) = 0).

12

Denicin 1.6 Dado un mtodo numrico de la forma (1.5), se


denomina error del mtodo la diferencia ek = yk uk (k=0,1,. . . ,N).
Se dice que el mtodo es convergente cuando
(
)
lm sup {|ek |} = 0.
h0

0kN

Diremos que el mtodo es convergente de orden p si se verica:


sup {|ek |} K hp .
0kN

En principio, el error de consistencia y el error del mtodo son conceptos


independientes. De hecho la propiedad de consistencia, por lo general, suele
ser ms fcil de constatar que la convergencia. Mostraremos que, bajo
hiptesis adecuadas, la consistencia de orden p implica la convergencia de
orden p. Consideremos un mtodo genrico unipaso uk+1 = uk + hg(h, tk , uk )
que trata de aproximar la solucin de la ecuacin (1.1). Si conocemos el
valor exacto yk en el instante tk , entonces el valor exacto en el intante tk+1
es
yk+1 = yk + hg(h, tk , yk ) + Ek+1 ,
siendo Ek+1 el error de discretizacin. Restando esta ltima expresin al
esquema numrico que aproxima a la ecuacin obtenemos:
yk+1 uk+1 = yk uk +h (g(h, tk , yk ) g(h, tk , uk )) + Ek+1 .
{z
} | {z }
|
ek+1

ek

Ahora tomamos valor absoluto


|ek+1 | |ek | + h |g(h, tk , yk ) g(h, tk , uk )| + |Ek+1 |.
Asumamos que g(h, t, y) es continua en t y h, y lipschitziana en la variable
y con constante de Lipschitz L, que generalmente se relaciona con la
constante de Lipschitz para f . Entonces
|ek+1 | |ek | + hL|yk uk | + |Ek+1 | = (1 + Lh)|ek | + |Ek+1 |.

(1.9)

Necesitamos el siguiente lema tcnico para continuar acotando el error.

13

N
Lema 1.7
Sea L > 0 una constante y sean {ak }N
k=0 y {bk }k=1
sucesiones no-negativas satisfaciendo

ak+1 (1 + Lh)ak + bk+1 ,

k = 0, 1, . . . , N 1,

h > 0.

Entonces se verica la desigualdad:


L(tk+1 t0 )

ak+1 e

a0 +

eL(tk+1 ti+1 ) bi+1 ,

i=0

donde tk = t0 + kh, k = 0, 1, . . . , N .

Aplicamos el Lema 1.7 a nuestro caso particular; A = L, ak = |ek | y


bk = |Ek |, entonces:
L(tk+1 t0 )

k z
}| {

L(tk+1 t0 )
|ek+1 | e
|e0 | +
eL(tk+1 ti+1 ) |Ei+1 |

(
eL(tk+1 t0 )

|e0 | +

i=0
N

)
|Ek | .

k=1

Si asumimos que el error inicial e0 = 0 y que el mtodo es consistente de


orden p, concluimos que
|ek+1 | eL(tk+1 t0 ) Chp = K hp .
As pues, bajo hiptesis convenientes, hemos probado que si el esquema
numrico tiene orden p como medida de error local, entonces el error global
est acotado por un mltiplo de hp . En otras palabras, si suponemos que
no hay errores de redondeo ni error inicial, el valor calculado uk y la solucin
real y(tk ) en el instante tk se puede acotar por:
|y(tk ) uk | K hp ,
donde la constante K > 0 puede depender del tiempo tk y la solucin
particular y(t). En resumen, cuanto ms alto es el orden, ms preciso ser
nuestro esquema numrico, y el paso se puede elegir ms grande para
conseguir la precisin deseada a la solucin real. Sin embargo, a mayor

14

orden, se requieren mayores esfuerzos computacionales en cada paso. Luego


se debe tratar de equilibrar el orden del mtodo con la eleccin del paso de
forma que el balance total sea ptimo.
Como consecuencia, el siguiente resultado nos proporciona una cota
para el error en el mtodo de Euler en el caso de que no hayan errores
de redondeo, esto es, si suponemos que podemos realizar los clculos con
precisin innita.

Teorema 1.8 Sea F una funcin continua lipschitziana respecto


de la segunda variable, esto es, f (t, x)f (t, y) L|xy| , con t [t0 , t0 +
], x, y R y donde L es una constante real positiva. Supongamos
adems que la solucin y es de clase C 2 en [t0 , t0 + ] y que existe una
constante M > 0 tal que |y 00 (t)| < M . Entonces
|y(tk ) uk |

)
hM ( L(tk t0 )
e
1 .
2L

No obstante, sabedores de que la inuencia del error de redondeo puede


llegar a ser notable bajo ciertas circunstancias, sera interesante saber como
afectan los errores de redondeo al error global. En la prctica el anlisis
de la repercusin del error de redondeo es bastante complicado, pero en el
caso del mtodo de Euler y simulando la misma tcnica que se utiliza en
la demostracin del Teorema 1.8 se demuestra la siguinte acotacin.

15

Teorema 1.9 Sea f una funcin continua lipschitziana respecto


de la segunda variable, esto es, f (t, x)f (t, y) L|xy| , con t [t0 , t0 +
], x, y R y donde L es una constante real positiva. Supongamos
adems que existe una constante M > 0 tal que |y 00 (t)| < M , y que en
cada paso el error de redondeo al evaluar el mtodo de Euler es k .
Entonces
(
)
)
hM
( L(tk t0 )
|y(tk ) uk |
+
e
1 + 0 eL(tk t0 ) ,
2L
hL
donde es una cota superior de k y 0 es el error de redondeo del
dato inicial.

La lectura esencial de este resultado es que el error no est acotado

cuando h tiende a cero debido al factor hL


. Por tanto los resultados obtenidos
son poco ables para pasos cuya longitud es menor que un cierto umbral.
El umbral viene dado por el valor de h que minimiza la expresin
hM

+
,
2L
hL
que tomando
la primera derivada e igualando a cero obtenemos el valor
2
ptimo h M
. En cualquier caso debe tenerse en cuenta que los errores
de redondeo afectan solamente cuando los pasos son muy pequeos.

Sistemas de ecuaciones
Consideremos ahora el sistema de ecuaciones bidimensional
dx
= f (t, x, y) ,
dt
dy
.
= g (t, x, y) ,
dt
x (t0 ) = x0 , y (t0 ) = y0

(1.10)

Tanto la denicin de solucin como los resultados de existencia y


unicidad de soluciones son similares al caso de una ecuacin, por lo que
pasaremos directamente al estudio de los mtodos numricos.

16

Usando, al igual que antes


dx
x (t + h) x (t)
(t)
,
dt
h
y (t + h) y (t)
dy
(t)
dt
h
obtenemos el mtodo de Euler:
uk+1 = uk + hf (tk , uk , vk ) ,
vk+1 = vk + hg (tk , uk , vk ) ,
k = 0, 1, 2, ..., N 1,
donde uk x (tk ) , vk y (tk ) .
En el caso general de un sistema de n ecuaciones
dy1
= f1 (t, y1 , y2 , ..., yn ) ,
dt
..
.
.
dyn
= fn (t, y1 , y2 , ..., yn ) ,
dt
y1 (t0 ) = y0 , y2 (t0 ) = y2 , ..., yn (t0 ) = yn ,
el esquema resultante sera el siguiente:
u1,k+1 = u1,k + hf1 (tk , u1,k , ..., un,k ) ,
..
.
un,k+1 = un,k + hfn (tk , u1,k , ..., un,k ) ,
k = 0, 1, 2, ..., N 1.

Ejemplo 1.2 Resolvamos el sistema


x0 = x + 2y,
y 0 = 3x + 2y
x (0) = 6, y (0) = 4,
en el intervalo [0, 0,04] con h = 0,02.
Solucin.u1 = 6 + 0,02 (6 + 2 4) = 6. 28,
v1 = 4 + 0,02 (3 6 + 2 4) = 4. 52,

(1.11)

17

u2 = 6,28 + 0,02 (6,28 + 2 4,52) = 6. 586 4,


v2 = 4,52 + 0,02 (3 6,28 + 2 4,52) = 5. 077 6.
Como la solucin exacta de este problema es x (t) = 2et + 4e4t , y (t) =
2et + 6e4t obtenemos que
x (0,04) = 2e0,04 + 4e40,04 = 6. 615 622 362 ,
y (0,04) = 2e0,04 + 6e40,04 = 5. 119 486 348.
Por tanto, el error cometido es:

Error = (6. 586 4 6. 615 622 )2 + (5. 077 6 5. 119 486)2 = 5. 107 102 .

En lo que respecta a las ecuaciones de orden dos


x00 = f (t, x, x0 )
estas se convierten en un sistema bidimensional mediante el cambio de
variable y = x0 :
y 0 = f (t, x, y) ,
x0 = y.

A partir de aqu empleamos los mtodos vistos para sistemas. En general,


podemos tranformar una ecuacin de orden n
(
)
y (n) = f t, y, y 0 , ..., y (n1)
en un sistema mediante los cambios de variable y1 = y, y2 = y 0 , y3 = y 00 , ..., yn =
y (n1) :
y10 = y2 ,
y20 = y3 ,
..
.
yn0 = f (t, y1 , y2 , ..., yn ) .

18

Ejemplo 1.3 Dado el problema


x00 + 4x0 + 5x = 0, x (0) = 3, x0 (0) = 5
lo transformamos en
x0 = y,
y 0 = 4y + 5x,
x (0) = 3, y (0) = 5.
1.2.2.

Ejemplos de sistemas

El pndulo

Consideramos una bola de masa m atada de una varilla rgida de longitud


l y masa despreciable que pende del techo. Las varilla puede oscilar con
libertad sobre el plano vertical, pero sometida a la fuerza de la gravedad (ver
la gura 1.2). Consideraremos primero por simplicidad que la resistencia
del aire se puede despreciar.
La variable x es el ngulo entre la varilla y el eje vertical. La ecuacin
diferencial se puede obtener a partir del principio de la cantidad de movimiento
angular: la razn de cambio de la cantidad de movimiento angular es igual
al momento de la fuerza. Como
dx
Cantidad de movimiento angular=ml2 ,
dt
Momento de la fuerza=lF = lmg sin (x) ,
tenemos la ecuacin
d2 x
= lmg sin (x) ,
dt2
g
d2 x
= sin (x) .
2
dt
l
Si lo transformamos en un sistema poniendo y = x0 tendremos
ml2

dx
= y,
dt
g
dy
= sin (x) .
dt
l
Los puntos jos son
y = 0, sin (x) = 0
(0, 0) , (, 0) , (2, 0) , ..., (n, 0) , ...

19

El punto (0, 0) es estable (se producen pequeas oscilaciones alrededor del


punto), mientras que (, 0) es inestable. Todos los dems son rplicas de
estos dos: (2n, 0) son estables y ( (2n + 1) , 0) son inestables.
El diagrama de fases de este sistema, calculado usando el mtodo de
Euler (con g = 10, l = 50), se puede ver en la gura 1.3. Vemos que
alrededor de los puntos jos (2n, 0) existen soluciones peridicas. stas
corresponden al movimiento oscilatorio del pndulo, que aparecen cuando
la velociad inicial no es demasiado grande. En cambio, si la velocidad inicial
es grande, entonces el pndulo da vueltas completas, y el valor de la variable
x ya no est acotado.
Si tenemos en cuenta el rozamiento, entonces la ecuacin es la siguiente:
d2 x
g
dx
=

sin
(x)

c
.
dt2
l
dt
Transformada en sistema quedara
dx
= y,
dt
dy
g
= sin (x) cy.
dt
l
Ahora las soluciones se comportan de manera bastante diferente. Al
haber disipacin de la energa (casi) todas las soluciones convergen en
espiral a uno de los puntos jos (2n, 0). Dependiendo de la velocidad
inicial (es decir, de la fuerza a la que hemos impulsado el pndulo) puede
dar varias vueltas antes de estabilizarse y comenzar a oscilar en torno a la
posicin de equilibrio.
Usando los parmetros g = 10, l = 50, c = 1 hemos calculado varias
soluciones por el mtodo de Euler.
En la gura 1.4 podemos ver la solucin correspondiente a las condiciones
iniciales x0 = 2, y0 = 2. En este caso vemos que el pndulo oscila perdiendo
energa alrededor del punto (0, 0).
En la gura 1.5 tenemos la solucin con condiciones iniciales x0 = 0,
y0 = 15. Al ser la velocidad inicial grande el pndulo da dos vueltas enteras
y despus comienza a oscilar perdiendo energa alrededor del punto de
equilibrio (4, 0) .
Finalmente, en la gura 1.6 las condiciones iniciales son x0 = 0, y0 = 40.
La velocidad inicial es tan grande que el pndulo da seis vueltas completas

20

antes de perder suciente energa y estabilizarse oscilando alrededor del


punto de equilibrio (12, 0) .

El sistema de Lorenz

El sistema de Lorenz es un modelo, bastante simplicado, del tiempo


atmosfrico, que fue desarrollado por el meteorlogo Edwar N. Lorenz.
El sistema es el siguiente:

dx
= (y x) ,
dt
dy
= x y xz,
dt
dz
= z + xy,
dt

donde , , son parmetros.


Se puede calcular sin dicultad que este sistema tiene tres puntos jos
dados por:
) (
)
(

( 1), ( 1), 1 , ( 1), ( 1), 1 .


(0, 0, 0) ,
Este sistema tan simplicado no nos sirve para una prediccin real de
la temperatura atmosfrica. Sin embargo, se ha hecho famoso por otra
razn: dio pie a un nuevo campo de las matemticas llamada caos. Para
determinados parmetros del sistema, las soluciones de no parecen seguir
ningn patrn jo, formando curvas que giran alrededor de los puntos jos
del sistema. stas permanecen en una zona acotada alrededor de los puntos
jos, pero no permanecen mucho tiempo cerca de ninguno de ellos. Por
tanto, existe una regin del espacio que atrae todas las soluciones, pero la
dinmica dentro de esta regin no sigue una pauta ja, ni ningn patrn
reconocible. A sta se le ha llamado Atractor Extrao.
La caracterstica fundamental de los sistemas caticos es la sensibilidad
a las condiciones iniciales. Dicho sin mucha precisin, esto signica que,
dada cualquier condicin inicial, siempre existir otra condicin inicial, tan
cerca de ella como queramos, cuya solucin diverge de la primera.
Ejemplos de tales sistemas incluyen la atmsfera terrestre, las placas
tectnicas, los uidos en rgimen turbulento y los crecimientos de poblacin.
Usando el mtodo de Euler vamos a obtener algunas soluciones de este
sistema para estudiar su comportamiento.

21

Vamos a ver primero algunas soluciones correspondientes a los siguientes


parmetros:
8
= 10, = 10, = .
3
Para estos parmetros no hay caos. Las soluciones numricas muestran
que las soluciones convergen a uno de los puntos jos a medida que el
tiempo avanza. En este caso los puntos jos son
(
) (
)

(0, 0, 0) ,
24, 24, 9 , 24, 24, 9 .
Por, ejemplo, si las condiciones iniciales son x0 = 1, y0 = 0, z0 = 2
obtenemos las soluciones que se ven en las grcas ?? y ??. Vemos que la
(
)
solucin converge al punto jo
24, 24, 9 .
Si probamos con una condicin inicial ms alejada, por ejemplo x0 =
1, y0 = 0, z0 = 50 la solucin converge al mismo punto, como se ve en la
grca 1.7.
Si elegimos las condiciones iniciales x0 = 10, y0 = 1, z0 = 3 la solucin

(
)
converge al punto jo 24, 24, 9 , como se ve en la gura 1.8.
El comportamiento que hemos visto en este ejemplo se mantiene mientras
el parmetro se eencuentra entre los siguientes valores
1 < < 24,74...
Si < 1, entonces todas las soluciones convergen al punto jo (0, 0, 0). En
cambio, si > 24,74..., entonces aparecen las trayectorias caticas.
Veamos las soluciones correspondientes a los siguientes parmetros:
8
= 10, = 28, = .
3
Las proyecciones de la solucin correspondiente a las condiciones iniciales
x0 = 1, y0 = 0, z0 = 1 se puede ver en las grcas 1.9, 1.10, 1.11.
En tres dimensiones la grca se puede ver en la gura 1.12.
Las soluciones presentan el mismo comportamiento aunque las condiciones
iniciales sean muy diferentes. Por ejemplo, si x0 = 1, y0 = 8, z0 = 90 la
solucin en el plano XZ se ve en la gura 1.13. Se ve que la solucin nal
forma una gura parecida, que se encuentra en la misma zona.

22

Finalmente veremos algn ejemplo de la dependencia sensible a las


condiciones iniciales.
Vamos a coger la condicin inicial x0 = 1, y0 = 0,0001, z0 = 1, que se
diferencia muy poco de la condicin x0 = 1, y0 = 0, z0 = 1. En la guras 1.14,
1.15 podemos observar que las soluciones en ambos casos son distintas,
aunque se comportan de forma parecida en lo que respecta a la forma del
dibujo. Esto se ve mucho ms claro si comparamos una de las variables
en distintos momentos del tiempo. En la gura 1.16 podemos ver cmo
al principio las dos soluciones son muy parecidas, pero a partir de un
determinado momento las soluciones divergen y se comportan de forma
muy distinta. Podemos comparar los valores de las dos soluciones en la
siguiente tabla:
t
0,1
1
5
10
12
12,05
12,2
14
20
30
35

x0 (t)
1,1475
3,7134
8,2256
7,8278
3,2356
2,9522
4,9132
5,3422
2,9567
4,1114
1,3976

x1 (t)
1,1475
3,7135
8,2239
7,8793
3,8000
3,7479
6,5235
8,4479
11,0626
3,0029
4,5331

Diferencia: x0 (t) x1 (t)


0
0,0001
0,0017
0,0514
0,5644
0,7957
1,6103
13,7901
14,0193
1,1085
5,9307

23

Figuras

Figura 1.2: Pndulo

24
2

1.5

dx/dt

0.5

0.5

1.5

Figura 1.3: Diagrama de fases del pndulo

1.3.

El mtodo de Heun y el mtodo del punto medio

El mtodo de Euler funciona, pero tiene varios inconvenientes: es un


mtodo de baja precisin que necesita de pasos temporales muy pequeos
para alcanzar resultados aceptables, adems converge lentamente hacia la
solucin. Conocidas las limitaciones del mtodo de Euler vamos a presentar
una batera de esquemas numricos, comenzando por el mtodo de Heun,
que mejorarn gradualmente su eciencia. Una de las claves para disear
algoritmos ms sosticados es replantear el principio terico sobre el que

10

25
5

dx/dt

3
2

1.5

0.5

0.5

Figura 1.4: Pndulo con rozamiento, x0 = 2, y0 = 2

se sustenta el mtodo de Euler (que consista en la aproximacin de las


derivadas por diferencias nitas) por otro (equivalente) que intercambie la
derivacin por integracin. La prueba de la existencia y unicidad para una
ecuacin diferencial de primer orden se basa en su reformulacin como una
ecuacin integral, concretamente obtenemos el siguiente resultado.

1.5

26
16

14

12

10

dx/dt

10

12

Figura 1.5: Pndulo con rozamiento, x0 = 0, y0 = 15

Proposicin 1.10

La solucin y(t) del problema de valor inicial


y 0 (t) = f (t, y(t)),

y(t0 ) = y0

coincide con la solucin de la ecuacin integral


t
y(t) = y(t0 ) +
f (s, y(s))ds.
t0

(1.12)

14

27
40

35

30

25

dx/dt

20

15

10

10

15

20
x

25

30

35

Figura 1.6: Pndulo con rozamiento, x0 = 0, y0 = 40

La prueba de este resultado es una aplicacin inmediata del Teorema


Fundamental del Clculo, que se obtiene integrando ambos trminos de la
ecuacin diferencial:
t
t
0
y(t) y(t0 ) =
y (s)ds =
f (s, y(s))ds.
t0

t0

Este resultado sugiere reconsiderar mtodos numricos que se centren


en la resolucin de la ecuacin integral. Hay numerosas razones por las que
se preere considerar la ecuacin integral (1.12) en lugar de la ecuacin
diferencial. En general, la derivacin tiene un comportamiento peor que
la integracin; en muchas ocasiones, la derivada de funciones con buenas
propiedades pueden tener un mal carcter, en cambio, las integrales de

40

28
50

45

40

35

30

25

20

15

10

0
1

4
x

Figura 1.7: Sistema de Lorenz, Proyeccin XZ, x0 = 1, y0 = 0, z0 = 50, = 10, =


10, = 83

funciones que poseen un mal comportamiento se suavizan. Por otra parte,


observemos que la ecuacin integral no requiere de ninguna condicin inicial
adicional.
Partiremos de la ecuacin integral (1.12) en cada subintervalo [tk , tk+1 ]

tk+1

f (s, y(s))ds,

y(tk+1 ) = y(tk ) +
tk

de tal forma que podemos calcular el valor de la solucin en el punto tk+1 a


partir del valor en tk , ms la integral a lor largo del subintervalo. Obsrvese
que, en particular, si aproximamos la integral en cada subintervalo por la
regla del punto inicial

tk+1

tk

f (s, u(s))ds (tk+1 tk )f (tk , y(tk )) = hf (tk , y(tk )),

29
13

12

11

10

3
10

6
x

Figura 1.8: Proyeccin XZ, x0 = 10, y0 = 1, z0 = 3, = 10, = 10, =

8
3

obtenemos de nuevo la aproximacin numrica del mtodo de Euler


y(tk+1 ) y(tk ) + hf (tk , y(tk )),
lo que arroja una reinterpretacin equivalente. Este punto de vista pone
en evidencia la tosquedad del mtodo de Euler, puesto que se utiliza una
aproximacin de la integral que geomtricamente representa el rea del
rectngulo de anchura h y altura f (tk , y(tk )), lejos sta de ser una estimacin
precisa de la integral. Es sabido por el lector que existen mtodos mucho
ms sosticados de integracin numrica que aplicados a este enfoque sin
duda proporcionarn algoritmos por lo menos ms precisos, estara por ver
si adems seran ms ecientes computacionalmente. Por el momento
comenzaremos por la aproximacin numrica que proporciona el mtodo
del trapecio, que aproxima la integral mediante el rea del trapecio que
se obtiene al unir los puntos f (tk , y(tk )) y f (tk+1 , y(tk+1 )),
tk+1
1
f (s, y(s))ds h (f (tk , y(tk )) + f (tk+1 , y(tk+1 ))) .
2
tk

30
30

20

10

10

20

30
20

15

10

10

15

20

25

Figura 1.9: Sistema de Lorenz, Proyeccin XY, x0 = 1, y0 = 0, z0 = 1, = 10, =


28, = 83

La aproximacin del valor actualizado que obtenemos en este caso es:


1
y(tk+1 ) y(tk ) + h (f (tk , y(tk )) + f (tk+1 , y(tk+1 ))) ,
(1.13)
2
lo que da lugar a un esquema implcito, puesto que el valor actualizado
y(tk+1 ) aparece en los dos trminos de la ecuacin. El principal problema
que encontramos con este algoritmo es que si la funcin f es complicada
puede quedar una ecuacin implcita compleja no lineal donde no sea
posible despejar explcitamente el valor y(tk+1 ). En ese caso debemos recurrir
a metodos numricos de resolucin de ecuaciones no lineales como el
mtodo de Newton, etc. Otra alternativa (que se conoce como mtodos
predictor-corrector) consiste en sustituir, en el lado derecho de la ecuacin (1.13),
el valor y(tk+1 ) por una aproximacin obtenida por otro mtodo explcito,
por ejemplo el de Euler,
y(tk+1 ) pk+1 = y(tk ) + hf (tk , y(tk )),

31
60

50

40

30

20

10

0
30

20

10

0
y

10

20

Figura 1.10: Sistema de Lorenz, Proyeccin YZ, x0 = 1, y0 = 0, z0 = 1,


28, = 83

30

= 10, =

y obtenemos nalmente la aproximacin


1
y(tk+1 ) uk+1 = yk + h[f (tk , yk ) + f (tk + h, pk+1 )]
2
1
= yk + h[f (tk , yk ) + f (tk + h, yk + hf (tk , yk ))]
2
El esquema numrico resultante es
1
uk+1 = uk + h[f (tk , uk ) + f (tk + h, uk + hf (tk , uk ))],
2
que lo podemos desglosar es dos etapas:
pk+1 = uk + hf (tk , uk ),
h
uk+1 = uk + (f (tk , uk ) + f (tk+1 , pk+1 )) .
2
Este esquema se conoce como el mtodo de Heun o mtodo de Euler
mejorado. Mediante este planteamiento hemos ganado que el mtodo sea

32
60

50

40

30

20

10

0
20

15

10

10

15

20

25

Figura 1.11: Proyeccin XZ, x0 = 1, y0 = 0, z0 = 1, = 10, = 28, =

8
3

explcito, pero realmente mejoramos el orden de consistencia respecto al


mtodo de Euler?
Ejercicio 1.1

Probar que el mtodo de Heun es de segundo orden.

Notemos que si analizamos el error global nos aparecer, al igual que en


el mtodo de Euler, el sumando adicional h , donde es el error mximo de
redondeo en cada paso, por lo que para mantener el orden de convergencia
1
necesitamos que ch3 . El valor de h ptimo ser de la forma h = Cte 3 .
Mediante la tcnica utilizada para obtener el mtodo de Heun es posible
elaborar innumerables esquemas numricos de acuerdo a dos formas de
actuacin:
Cambiando el mtodo numrico de aproximacin de la integral.
Empleando mtodos explcitos diferentes para la estimacin intermedia
de pk+1 .

33

60

50

40

30

20

10

40
20

0
20

0
15

10

20
5

10

15

20

25

40

Figura 1.12: Sistema de Lorenz, x0 = 1, y0 = 0, z0 = 1, = 10, = 28, =

8
3

Por ejemplo, consideremos ahora la regla del punto medio, que aproxima
la integral mediante el rea del rectngulo cuya altura es la imagen en el
punto medio tk + h2 del intervalo [tk , tk+1 ]

tk+1
tk

h
h
f (s, y(s))ds hf (tk + , y(tk + )).
2
2

De nuevo, estimamos el valor de y(tk + h2 ) mediante el mtodo de Euler


h
1
y(tk + ) pk+ 1 = y(tk ) + hf (tk , y(tk )).
2
2
2
El esquema numrico resultante adopta la expresin
h
1
uk+1 = uk + hf (tk + , uk + hf (tk , uk )),
2
2
que se conoce como mtodo del punto medio y es un esquema de
segundo orden (comprubese).

34
90

80

70

60

50

40

30

20

10

0
20

15

10

0
x

10

15

20

Figura 1.13: Sistema de Lorenz, Proyeccin XZ, x0 = 1, y0 = 0, z0 = 1, = 10, =


28, = 83

Ejemplo 1.4 Resolvamos


ty
2
y (0) = 1
y0 =

en el intervalo [0, 2] con h = 1 y h = 12 .


Solucin.- La solucin exacta de este problema es y (t) = t 2 + 3e 2 .
Vamos a compararla con la aproximacin por el mtodo de Heun.
t

Solucin aproximada
1) h = 1 :

35
60
50

40
30
20
10
0
30

20

10

0
y

10

20

30

20

10

0
y

10

20

30

60
50

40
30
20
10
0
30

Figura 1.14: Sistema de Lorenz, Proyeccin YZ, = 10, = 28, = 83 ,


x0 = 1, y0 = 0, z0 = 1 versus x1 = 1, y1 = 0,0001, z1 = 1

p1 = 1 +

01
2

u1 = 1 +

1
2

= 21 ,
01
2

p2 = 0,875 +

1 12
2

)
=

7
8

= 0,875,

10,875
2

= 0,937 5,
(
)
20,937 5
u2 = 0,875 + 12 10,875
+
= 1. 171 875.
2
2
y (2) = 3e1 = 1. 103 638,
Error = |1. 103 638 1. 171 875| = 0,068 237.
2)h = 0,5 :
p1 = 1 + 0,5

01
2

= 0,75,

36
60
50

40
30
20
10
0
20

15

10

10

15

20

25

60
50

40
30
20
10
0
25

20

15

10

0
x

10

15

Figura 1.15: Sistema de Lorenz, Proyeccin XZ, = 10, = 28, = 83 ,


x0 = 1, y0 = 0, z0 = 1 versus x1 = 1, y1 = 0,0001, z1 = 1

u1 = 1 +

0,5
2

( 01
2

p2 = 0,843 75 + 0,5
u2 = 0,843 75 +

0,5
2

0,50,75
2

= 0,843 75,

0,50,843 75
2

( 0,50,843 75
2

p3 = 0,831 054 687 5 + 0,5


u3 = 0,831 054 687 5 +

0,5
2

p4 = 0,930 511 474 6 + 0,5


u4 = 0,930 511 474 6 +

0,5
2

= 0,757 812 5,
)
812 5
+ 10,757
= 0,831 054 687 5,
2

10,831 054 687 5


2

( 10,831 054 687 5


2

= 0,873 291 015 6,


)
+ 1,50,8732 291 015 6 = 0,930 511 474 6,

1,50,930 511 474 6


2

( 1,50,930 511 474 6


2

= 1. 072 883 606,


)
+ 21. 0722 883 606 = 1. 117 587 09.

Error=|1. 117 587 1. 103 638 | = 0,013 949.

20

25

37
25

20

15

10

10

15

20

25

10

15

20

25

Figura 1.16: Sistema de Lorenz, = 10, = 28, = 83 ,


x0 = 1, y0 = 0, z0 = 1 versus x1 = 1, y1 = 0,0001, z1 = 1

Comparacin de los errores:


0,068 237
Error (h = 1)
=
= 4. 9.
Error (h = 0,5)
0,013 949

Consideremos ahora el sistema de ecuaciones bidimensional


x0 (t) = f (t, x, y) ,
.
y 0 (t) = g (t, x, y) ,
x (t0 ) = x0 , y (t0 ) = y0 .

30

35

38

El mtodo de Heun para a este sistema quedara de la siguiente forma:


qk+1 = xk + hf (tk , xk , yk ) ,
pk+1 = yk + hg (tk , xk , yk ) ,
h
xk+1 = xk + (f (tk , xk , yk ) + f (tk+1 , qk+1 , pk+1 )) ,
2
h
yk+1 = yk + (g (tk , xk , yk ) + g (tk+1 , qk+1 , pk+1 )) ,
2
k = 0, 1, 2, ..., N 1,
donde xk ' x (tk ) , yk ' y (tk ) .
En el caso general de un sistema de n ecuaciones
y1 (t) = f1 (t, y1 , y2 , ..., yn ) ,
..
.
yn (t) = fn (t, y1 , y2 , ..., yn ) ,
y1 (t0 ) = y0 , y2 (t0 ) = y2 , ..., yn (t0 ) = yn ,

el esquema resultante sera el siguiente:


p1,k+1 = y1,k + hf1 (tk , y1,k , ..., yn,k ) ,
..
.
pn,k+1 = yn,k + hfn (tk , y1,k , ..., yn,k ) ,
h
y1,k+1 = y1,k + (f1 (tk , y1,k , ..., yn,k ) + f1 (tk+1 , p1,k+1 , ..., pn,k+1 )) ,
2
..
.
h
(fn (tk , y1,k , ..., yn,k ) + fn (tk+1 , p1,k+1 , ..., pn,k+1 )) ,
2
k = 0, 1, 2, ..., N 1.

yn,k+1 = yn,k +

Ejemplo 1.5 Resolvamos el sistema


x0 = x + 2y,
y 0 = 3x + 2y
x (0) = 6, y (0) = 4,
en el intervalo [0, 0,04] con h = 0,02.
Solucin.q1 = 6 + 0,02 (6 + 2 4) = 6. 28,
p1 = 4 + 0,02 (3 6 + 2 4) = 4. 52,

39

0,02
(6 + 2 4 + 6,28 + 2 4,52) = 6. 293 2,
2
0,02
(3 6 + 2 4 + 3 6,28 + 2 4,52) = 4. 538 8,
y1 = 4 +
2

x1 = 6 +

q2 = 6. 293 2 + 0,02 (6. 293 2 + 2 4. 538 8) = 6. 600 616,


p2 = 4. 538 8 + 0,02 (3 6. 293 2 + 2 4. 538 8) = 5. 097 944,
0,02
(6,293 2 + 2 4,538 8 + 6,600 616 + 2 5. 097 944) = 6. 614 873 04,
2
0,02
y2 = 4. 538 8 +
(3 6. 293 2 + 2 4. 538 8 + 3 6. 600 616 + 2 5. 097 944) = 5. 118 349 36.
2

x2 = 6. 293 2 +

Como la solucin exacta de este problema es x (t) = 2et + 4e4t , y (t) =


2et + 6e4t obtenemos que
x (0,04) = 2e0,04 + 4e40,04 = 6. 615 622 362 ,
y (0,04) = 2e0,04 + 6e40,04 = 5. 119 486 348.
El error sera:

Error = (6. 614 873 04 6. 615 622 )2 + (5. 118 349 36 5. 119 486)2 = 1. 361 103 .

Ejercicio 1.2
Heun:

Resolver la siguiente ecuacin diferencial por el mtodo de


y 0 = t2 y, y(0) = 1,

Realizar los siguientes pasos:


1. Tomar h = 0,2 y realizar dos pasos. Luego tomar h = 0,1 y realizar
cuatro pasos.
2. Comparar la solucin exacta y(t) = et +t2 2t+2 con las dos aproximaciones
en t = 0,4.
3. Se comporta el error global de las aproximaciones como se espera
cuando h se divide entre dos?
(Sol: a) h = 0,2, y (0,4) ' 0,69488; h = 0,1, y (0,4) ' 0,69094; b) Error(h =
0,2)=0.0052; Error(h = 0,1)=0.00126; c) S)

40

Ejercicio 1.3 El modelo matemtico de cierto circuito (condensador e


inductancia) es
Q00 + Q = sen (t) ,
Q (0) = 0, Q0 (0) = 0,
donde Q (t) representa la carga en el momento t.
1. Usar el mtodo de Heun con h = 0,1 para determinar el valor de Q (0,2).
2. Calcular el error cometido sabiendo que la solucin exacta es:
1
Q (t) = sin (t) t cos (t) .
2
(Sol: Q (0,2) ' 0,000998335, Q (0,2) = 0,001328, Error = 0,000 329 665 )

1.4.

Mtodos explcitos de Runge-Kutta

El mtodo de Heun y el mtodo del punto medio son casos particulares


de una familia general de mtodos conocidos con el nombre de Runge-Kutta,
en honor a sus creadores Carle Runge y Martin Kutta a nales del siglo
XIX. La idea es generalizar los mtodos que hemos presentado de acuerdo
al siguiente esquema numrico general:
uk+1 = uk + h

ai f (tk,i , uk,i ),

(1.14)

i=1

donde cada tk,i denota un punto en el k-simo subintervalo [tk , tk+1 ] y uk,i
y(tk,i ) se interpreta como una aproximacin en el punto tk,i que se suele
calcular por una frmula similar ms simple del mismo tipo. Los parmetros
ai as como los parmetros que intervienen para calcular cada aproximacin
intermedia uk,i se elige de modo que el mtodo alcance el orden de consistencia
deseado.
Desarrollemos los principios tericos que fundamentan el mtodo.
Supongamos que tenemos la particin t0 < t1 < < tN = t0 + , y
deseamos calcular el valor actualizado de y en el punto tk+1 basndonos
en la ecuacin integral
tk+1
f (s, y(s))ds.
(1.15)
y(tk+1 ) = y(tk ) +
tk

41

Consideremos una sucesin de puntos nodales en el subintervalo [tk , tk+1 ]


tk tk,1 tk,2 tk,r tk+1 ,
donde cada tk,i = tk + ci h con 0 ci 1, que actuarn como soporte para
las frmulas de integracin que utilicemos a lo largo del procedimiento.
Estimaremos la integral mediante una frmula de integracin sobre la
particin anterior. De acuerdo con la ecuacin integral (1.15), obtenemos
una aproximacin de la forma
r

yk+1 yk + h
ai f (tk,i , yk,i ),
i=1

donde i = hai son los pesos de la frmula de cuadratura, y yk,i son los
valores de y en el punto tk,i . Para estimar el paso intermedio yk,i tendremos
en cuenta, de nuevo, alguna otra frmula de integracin sobre los puntos
nodales que quedan a la izquierda,
tk,i
i1

yk,i = yk +
f (s, y(s))ds uk,i = yk + h
bij f (tk,j , yk,j ).
tk

j=1

donde hbi,j son los nuevos pesos ortorgados a los puntos tk,j con 2 j i1.
Una vez elegidas las constantes ai , bij y ci , obtenemos el esquema explcito
recursivo:

uk,1 = uk ,

uk,2 = uk + hb21 f (tk,1 , uk,1 ),

u = u + hb f (t , u ) + hb f (t , u ),
k,3
k
31
k,1
k,1
32
k,2
k,2
(1.16)
.
.
..
..

r1

u
=
u
+
h

k,r
k
j=1 brj f (tk,j , uk,j ),

r
u
tk,i = tk + ci h, 0 ci 1.
k+1 = uk + h
i=1 ai f (tk,i , uk,i ),
Cuando queremos implementarlo en la computadora, conviene reescribir el
esquema (1.16) del siguiente modo:

k1 = f (tk,1 , uk,1 ) = f (tk + c1 h, uk ),

k2 = f (tk,2 , uk,2 ) = f (tk + c2 h, uk + hb21 k1 ),

k = f (t , u ) = f (t + c h, u + h(b k + b k )),
3
k,3
k,3
k
3
k
31 1
32 2
(1.17)
.
.
..
..

kr = f (tk,r , uk,r ) = f (tk + cr h, uk + h r1

j=1 brj kj ),

u
k+1 = uk + h (a1 k1 + a2 k2 + + ar kr ) .

42

Utilizaremos la siguiente representacin matricial para las constantes

c1 0
0 0

c2 b21 0 0
. . .

.. ..
. . . . . ...

cr br1 br2 0
a1 a2 ar

Denicin 1.11
mtodo.

El nmero r se denomina nmero de etapas del

Observacin 1.12
Habitualmente la constante c1 suele ser 0, y en ese caso k1 = f (tk , uk ).
La funcin g(h, tk , uk ) del trmino general (1.5) para el esquema de
Runge-Kutta es:
g(h, tk , uk ) = a1 k1 + a2 k2 + + ar kr .
Debido a la facilidad, exibilidad y diversidad en cuanto en el diseo de
los esquemas numricos de Runge-Kutta segn los parmetros jados, estos
tienen un vasto alcance en una gran variedad de ecuaciones diferenciales
ordinarias, y son los ms populares y extendidos en el software computacional.
El objetivo cuando se disea un mtodo de Runge-Kutta es elegir las
constantes ai , bij y ci adecuadas con el mnimo nmero de etapas posibles
para conseguir el orden de consistencia deseado. Si queremos conseguir
orden de consistencia 2 se necesitan al menos dos etapas, mientras que
si deseamos orden 4 necesitamos elaborar un mtodo de cuatro etapas.
Se puede probar que no existen mtodos de Runge-Kutta para los que el
nmero de etapas sea igual al orden del mtodo cuando el mtodo tiene
orden de consistencia mayor que 4. As, para un mtodo de orden 5 se
necesitan al menos r = 6 estapas; y para orden 7 al menos 10 etapas.
Como curiosidad, el mtodo de orden 10 con menos etapas es para r = 17.
A continuacin estudiamos los ms conocidos segn el nmero de etapas
y el orden de consistencia.

43

Mtodos de una etapa


(
La matriz general del mtodo de una etapa es

c1

)
0
. El esquema
a1

numrico general es
k1 = f (tk + c1 h, uk ),
uk+1 = uk + ha1 k1 = uk + ha1 f (tk + c1 h, uk ),
de donde g(h, tk , yk ) = a1 k1 = a1 f (tk + c1 h, yk ). Calculamos la derivada de
g(h, tk , yk ) respecto de h:
g
f
(h, tk , yk ) = c1 (tk , yk ).
h
t
g
(0, tk , yk )
Entonces f (0) (tk , yk ) = g(0, tk , yk ) cuando a1 = 1. Adems f (1) (tk , yk ) = 2 h
cuando c1 = 1/2. En denitiva, cuando a1 = 1 y c1 = 0 obtenemos el mtodo
de Euler. Adems, el esquema tiene orden de consistencia 2 si f
= 0 (la
y
funcin f solo depende del tiempo) y c1 = 1/2.

Mtodos de dos etapas


La matriz general del mtodo es

c1 0 0

c2 b21 0 .
a1 a2
El esquema numrico general es
k1 = f (tk + c1 h, uk ),
k2 = f (tk + c2 h, uk + hb21 k1 )
= hf (tk + c2 h, uk + hb21 f (tk + c1 h, uk ),
uk+1 = uk + h(a1 k1 + a2 k2 ) = uk + a1 hf (tk + c1 h, uk )
+ a2 hf (tk + c2 h, uk + hb21 f (tk + hc1 , uk )).
Por tanto,
g(h, tk , yk ) = a1 k1 + a2 k2 = a1 f (tk + c1 h, yk ) + a2 f (tk + c2 h, yk + hb2,1 f (tk + hc1 , yk )),
Para obtener mtodos de orden de consistencia 2 debemos igualar los
coecientes de los desarrollos de Taylor, obteniendo las identidades
a1 + a2 = 1,

1
a1 c 1 + a2 c 2 = ,
2

1
a2 b21 = .
2

44

Este sistema tiene 5 incgnitas y tan solo 3 ecuaciones, por lo que admite
innitas soluciones. Las soluciones particulares ms conocidas son:

0 0
0

Mtodo de Heun: 1 1
0 de donde resulta
1/2 1/2
k1 = f (tk , uk ),
1
uk+1 = uk + h( k1 +
2

k2 = f (tk + h, uk + hk1 ),
1
h
k2 ) = uk + (f (tk , uk ) + f (tk + h, uk + hf (tk , uk ))) .
2
2

0
0 0

Mtodo del punto medio: 1/2 1/2 0, que sustituyendo en el esquema


0 1
general se obtiene
h
h
k2 = f (tk + , uk + k1 ),
2
2
h
h
= uk + hk2 = uk + hf (tk + , uk + f (tk , uk )).
2
2

k1 = f (tk , uk ),
uk+1

Se puede probar que no existen constantes tales que el orden del mtodo
sea mayor que 2.

Mtodos de ms etapas
Podemos proseguir elaborando mtodos y escogiendo constantes adecuadas
para obtener la consistencia de mayor orden para un mismo nmero de
etapas. En la prctica, los mtodos de orden demasiado alto son bastantes
costosos computacionalmente debido a que hay que evaluar la funcin
demasiadas veces. Los mtodos de Runge-Kutta de orden cuarto son unos
de los integradores de paso jo ms utilizados en Ingeniera para obtener
resultados precisos en problemas sin demasiada complejidad. Sin duda, el
mtodo ms popular cuando todava se computaban los mtodos numricos
a mano viene dado en forma matricial por la matriz

0
0
0
0
0
1/2 1/2 0
0
0

M = 1/2 0 1/2 0
0 .

1
0
0
1
0
1/6 2/6 2/6 1/6

45

El mtodo desarrollado queda,


k1 = f (tk , uk ),
h
h
k2 = f (tk + , uk + k1 ),
2
2
h
h
k3 = f (tk + , uk + k2 ),
2
2
k4 = f (tk + h, uk + hk3 )
h
uk+1 = uk + (k1 + 2k2 + 2k3 + k4 ).
6
Ejemplo 1.6 Estimar el valor de la solucin de la ecuacin diferencial
y 0 = t + y,

y(0) = 1

en el punto t = 0,2 mediante el mtodo de Heun de orden 2 y el mtodo de Runge-Kutta


de orden 4 utilizando un paso igual a h = 0,2.

Finalmente, si tenemos un sistema de ecuaciones diferenciales de la


forma
x0 = f (t, x, y),

y 0 = g(t, x, y),

x(0) = x0 ,

y(0) = y0 ,

no resulta complicado adaptar el mtodo de Runge-Kutta:

k1 = f (tk + c1 h, uk , vk ),

l1 = g(tk + c1 h, uk , vk ),

k2 = f (tk + c2 h, uk + hb21 k1 , vk + hb21 l1 ),

l2 = g(tk + c2 h, uk + hb21 k1 , vk + hb21 l1 ),

k3 = f (tk + c3 h, uk + h(b31 k1 + b32 k2 ), vk + h(b31 l1 + b32 l2 )),


l3 = g(tk + c3 h, uk + h(b31 k1 + b32 k2 ), vk + h(b31 l1 + b32 l2 )),

..
..

.
.

r1
r1

b
k
,
v
+
h
k
=
f
(t
+
c
h,
u
+
h
ri
i
k
r
k
r
k

i=1 bri li ),
i=1

r1

lr = g(tk + cr h, uk + h r1

i=1 bri li ),
i=1 bri ki , vk + h

uk+1 = uk + h(a1 k1 + a2 k2 + + ak kk ),

v
= v + h(a l + a l + + a l ).
k+1

1 1

2 2

(1.18)

k k

La generalizacin a un sistema de m ecuaciones diferenciales es tediosa,


pero inmediata.

46

Ejercicio 1.4

Calcular la solucin en t = 0,5 de la ecuacin diferencial


y 0 = 2(tan t)y,

y(0) = 1

mediante el mtodo de Runge-Kutta de cuarto orden usando h = 0,5 y


h = 0,25. Comparar los resultados obtenidos entre s y con la solucin exacta
y(t) = cos2 t.
Ejercicio 1.5 Encontrar una solucin de un mtodo de tres etapas que
d lugar a un mtodo explcito de orden 3, con c1 = 0, c2 = c3 y a2 = a3 .
Ejercicio 1.6 Realizar en MatLab una rutina tal que dada una funcin
f (t, y), un paso h, una condicin inicial y0 y un mtodo de Runge-Kutta en
la forma matricial que lo caracteriza, ejecute el algoritmo de Runge-Kutta
N pasos.
Ejercicio 1.7 (Circuito de Chua)
(
)
dx
1
= y x + bx + (a b) (|x + 1| |x 1|) ,
dt
2
dy
= x y + z,
dt
dz
= y.
dt
Estudiar numricamente (mediante el mtodo de Runge-Kutta con h =
0,001) distintas soluciones, variando los parmetros y las condiciones iniciales.
Ver cundo se produce un comportamiento catico.
Por ejemplo, el caos aparece con los siguientes parmetros:
100
8
5
,a = ,b = ,
= 9, =
7
7
7
x0 = 0, y0 = 0, z0 = 0,6.
En cambio, si
100
8
5
,a = ,b = ,
7
7
7
= 0, y0 = 0, z0 = 0,6,

= 3, =
x0

entonces las soluciones convergen a un punto jo en espiral.


Si
100
8
5
,a = ,b = ,
7
7
7
= 0, y0 = 0, z0 = 0,6,

= 11, =
x0

entonces las soluciones son espirales que se van alejando del origen cada
vez ms (el mdulo tiende a innito).

47

Ejercicio 1.8 (Ecuacin de Dung)


x00 + cx0 x + x3 = A cos (t) .
En forma de sistema nos queda:
{
x0 = y,
y 0 = x x3 cy + A cos (t) .
Estudiar numricamente (mediante el mtodo de Runge-Kutta con h =
0,001) distintas soluciones, variando los parmetros y las condiciones iniciales.
Ver cundo se produce un comportamiento catico.
Por ejemplo, ver los siguientes casos:
1. c = A = 0. Las rbitas son trayectorias peridicas.
2. c = 0,2, A = 0. Las rbitas convergen en espiral a los puntos jos.
3. c = 0,2, A > 0, = 1.
Probar con distintos valores de A : 0,2, 2, 20, 100, 300. Ver cmo el caos
aparece. Primero hay trayectorias peridicas simples, luego se hacen
ms complicadas y despus aparecen trayectorias caticas.
Ejercicio 1.9 (Oscilador de Ueda)
x00 + cx0 + x3 = Asen (t) .
En forma de sistema nos queda:
{
x0 = y,
y 0 = x3 cy + Asen (t) .
Estudiar numricamente (mediante el mtodo de Runge-Kutta con h =
0,001) distintas soluciones, variando los parmetros y las condiciones iniciales.
Ver cundo se produce un comportamiento catico.
Por ejemplo, ver los siguientes casos:
1. c = A = 0. Las rbitas son trayectorias peridicas.
2. c = 1, A = 0. Las rbitas convergen en espiral al punto jo (0, 0).

48

3. c = 0,05, A > 0.
Probar con distintos valores de A : 0,05, 0,4, 7,5, 20. Ver cmo el caos
aparece. Primero hay trayectorias peridicas simples, luego se hacen
ms complicadas y despus aparecen trayectorias caticas.
Ejercicio 1.10 (Atractor de Rossler)

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

z 0 = 0,2 + xz cz.
Estudiar numricamente (mediante el mtodo de Runge-Kutta con h =
0,001) distintas soluciones, variando los parmetros y las condiciones iniciales.
Ver cundo se produce un comportamiento catico.
Por ejemplo, ver los siguientes casos:
1. c = 2,5. Las rbitas convergen a una trayectoria peridica.
2. c = 5, c = 5,7, c = 8, c = 100. Hay trayectorias caticas.

Captulo 2

Mtodos numricos para


ecuaciones en derivadas
parciales (EDPs)
En este captulo se desarrollan los mtodos numricos de resolucin de
la ecuaciones en derivadas parciales. En particular, se estudian los mtodos
explcito, implcito y de Crank-Nicholson, analizando el orden de precisin
en cada uno de ellos segn el tamao de los pasos espacial y temporal, as
como las condiciones de estabilidad que se requieren en cada caso.

2.1.

Clasicacin de EDPs de segundo orden

Los modelos ms importantes de ecuaciones en derivadas parciales de


segundo orden que aparecen en las aplicaciones a la Fsica y a la Ingeniera
se clasican en tres tipos: elpticas, parbolicas e hiperblicas. Dada una
EDPs de segundo orden
avxx + bvxy + cvyy + dvx + evy + f v = g,

(2.1)

diremos que (2.1) es:

Elptica: si b2 4ac < 0. El ejemplo clsico de ecuacin elptica es el problema


de Poisson
2 v(x, y) = g(x, y),

(x, y) ,

v| = h,

donde 2 = xx + yy representa el operador laplaciano.


49

50

Parablica: si b2 4ac = 0. El ejemplo clsico de ecuacin parablica es la


ecuacin del calor
vt (x, t) = Dvxx (x, t),

D > 0,

Hiperblica: si b2 4ac > 0. El ejemplo clsico de ecuacin hiperblica es


la ecuacin de ondas
vtt (x, t) = c2 vxx (x, t).

2.2.

Mtodos numricos para problemas parablicos

El ejemplo clsico de una ecuacin parablica sencilla y con mayor campo


de aplicacin en una dimensin es la ecuacin del calor o ecuacin de
difusin. El problema es encontrar la funcin v(x, t) (que puede representar
una temperatura, concentracin de una sustancia, etc.) que satisface el
problema

t v(x, t) = Dxx v(x, t), 0 < x < L, t > 0,


v(x, 0) = f (x), 0 x L, (Condiciones iniciales)

v(0, t) = (t), v(L, t) = (t), t 0 (Condiciones de frontera),

(2.2)

donde D es la constante de difusin y f (0) = (0) y f (L) = (0). La


ecuacin del calor aparece en los modelos matemticos relacionados con
problemas de difusin y Mecnica de Fluidos, y muchas de las propiedades
y comentarios que estudiaremos para ella se pueden trasladar a otras
ecuaciones parablicas.
Esta ecuacin modeliza la conduccin del calor en una barra cilndrica de
longitud L cuya seccin transvesal es uniforme, pequea y de un material
homogneo. La funcin v (x, t) mide la temperatura de la barra en cada
momento del tiempo t > 0 y en cada punto del espacio x [0, L]. D > 0
es una constante que depende de las caractersticas fsicas de la barra.
La solucin de esta EDPs se expresa en forma de serie para ciertos tipos
de condiciones iniciales f (x). Nuestro objetivo en este tema es desarrollar
mtodos numricos que permitan obtener la solucin del problema de forma
aproximada.

51

2.2.1.

Mtodo explcito

Aplicaremos las frmulas de las diferencias nitas sobre los puntos de


una malla uniforme rectangular (xj , tn ) con
xj = jh,

j = 0, 1, 2, . . . , J + 1,

tn = nk,

n = 0, 1, 2, . . .

donde h = x es el tamao del salto en la variable x y k = t es el tamao


del paso temporal. Utilizaremos la notacin vjn = v(xj , tn ) y unj v(xj , tn )
para el valor exacto y la aproximacin numrica en el punto nodal (xj , tn ),
respectivamente.
Puesto que la ecuacin del calor es una ecuacin de evolucin, una
primera aproximacin es plantearla como un esquema explcito de forma
progresiva en el tiempo, de modo que podamos calcular, para todo j, los
valores un+1
a partir de los valores en el instante de tiempo anterior unj .
j
Calculemos las frmulas en diferencias que utilizaremos para aproximar
2
t v(x, t) y xx
(x, t).
vjn+1 = v(xj , tn + k) = v(xj , tn ) + kt v(xj , tn ) +
= vjn + k(vt )nj +

k2 2
v(xj , n )
2 tt

k2
vtt (xj , n ),
2

donde n (tn , tn+1 ). Por tanto:


t v(xj , tn ) = (vt )nj =

vjn+1 vjn k
+ vtt (xj , n ).
k
2

(2.3)

Por otra parte tenemos


h2
h3
h4
(vxx )nj + (vxxx )nj + vxxxx (j1 , tn ),
2
6
24
2
3
h
h
h4
= vjn h(vx )nj + (vxx )nj (vxxx )nj + vxxxx (j2 , tn ).
2
6
24

n
vj+1
= vjn + h(vx )nj +
n
vj1

Sumando las dos identidades precedentes y despejando (vxx )nj obtenemos la


frmula en diferencias centrada
(vxx )nj

n
n
2vjn + vj+1
vj1
h2
=
+ vxxxx (j , tn ).
h2
12

(2.4)

En virtud de las ecuaciones (2.3) y (2.4) llegamos a la identidad


(vt D vxx )nj =
donde
Rjn

n
n
vjn+1 vjn
2vjn + vj+1
vj1
D
+ Rjn ,
k
h2

h2
k2
= vtt (xj , n ) vxxxx (j , tn ) = O(k) + O(h2 ).
2
12

(2.5)

52

Teniendo en cuenta que v satisface la ecuacion (2.2) y despreciando los


trminos O(h2 ) y O(k), la frmula anterior sugiere el esquema en diferencias
nitas:
(
)
un+1
unj
D unj1 2unj + unj+1
j
=
.
k
h2
Observacin 2.1 Si v(x, t) es una solucin de la ecuacin en derivadas
parciales (2.2) y, por consiguiente, el lado izquierdo de la ecuacin (2.5) se
anula, entonces v(x, t) satisface la ecuacin en diferencias en primer orden
respecto de k y en segundo orden respecto de h. Por tanto, la ecuacin (2.5)
muestra la medida de aproximacin de la ecuacin en diferencias nitas a
la ecuacin en derivadas parciales (2.2). Pero debemos avisar que esto, en
general, no es una medida de aproximacin de la solucin de la ecuacin en
diferencias nitas a la solucin de la ecuacin en derivadas parciales, sino
que para ello se necesitan condiciones adicionales que presentaremos ms
adelante cuando realicemos el anlisis del error.
Podemos despejar un+1
explcitamente en trminos de los valores en el
j
paso temporal anterior
un+1
= unj +
j

Dk n
(u 2unj + unj+1 ) = runj1 + (1 2r)unj + runj+1 ,
h2 j1

donde r = Dk
, j = 1, . . . , J y n = 0, 1, 2, . . .. Finalmente, imponiendo las
h2
condiciones iniciales y las condiciones de frontera queda la ecuacin en
diferencias nitas:

n+1
n
n
n

uj = ruj1 + (1 2r)uj + ruj+1 , j = 1, 2, . . . , J, n = 0, 1, 2, . . . ,


(2.6)
u0j = f (xj ), j = 0, 1, . . . , J + 1,

n
u0 = (tn ) = n , unJ+1 = (tn ) = n , n = 0, 1, 2, . . . .
Matricialmente podemos escribir el sistema recurrente anterior como

n
n+1
1

2r
r
0

0
0
r
un1
u1
n

un+1
r
1

2r
r

0
0

u2 0
2

n+1
..
.. n
u3 0
0
u3
r
1

2r
r
.
.

. + . ,
. =
..
..

. ..


..
..
..

.
.
.
. .
.
. .. ..

n+1

n
uJ1 0
0

r 1 2r
r uJ1 0
r n
unJ
un+1
0
0

r
1 2r
J
que en forma compacta lo expresaremos por
u(n+1) = A u(n) + b(n) ,

53

donde u(n) , b(n) RJ1 y A RJJ . Obsrvese que la matriz A de coecientes


del sistema recursivo es tridiagonal.

Ejemplo 2.1 Hallar la solucin de la ecuacin del calor en el intervalo [0, T ] = [0, 10]
para una barra de longitud L = 10 dado que la temperatura inicial es cero, D = 1 y que
v (0, t) = 100, v (10, t) = 50. Usar h = 2, k = 0,1.
Solucin.1) t = 0,1 :
u11 = 0 +

0,1
4

(0 2 0 + 100) = 2. 5,

u12 = 0 +

0,1
4

(0 2 0 + 0) = 0,

u13 = 0 +

0,1
4

(0 2 0 + 0) = 0,

u14 = 0 +

0,1
4

(50 2 0 + 0) = 1. 25.

2) t = 0,2 :
u21 = 2,5 +

0,1
4

(0 2 2,5 + 100) = 4. 875,

u22 = 0 +

0,1
4

(0 2 0 + 2,5) = 0,062 5,

u23 = 0 +

0,1
4

(1,25 2 0 + 0) = 0,031 25,

u24 = 1,25 +

0,1
4

(50 2 1,25 + 0) = 2. 437 5.

En el paso 99 obtenemos u99 = (100, 68,5809, 45,8036, 36,3011, 39,3871, 50,0000).


De aqu:
100) t = 10 :
= 68,5809 +
u100
1

0,1
4

(45,8036 2 68,5809 + 100) = 68. 796 9,

= 45,8036 +
u100
2

0,1
4

(36,3011 2 45,8036 + 68,5809) = 46. 135 4,

= 36,3011 +
u100
3

0,1
4

(39,3871 2 36,3011 + 45,8036) = 36. 615 8,

= 39,3871 +
u100
4

0,1
4

(36,3011 2 39,3871 + 50) = 39. 575 2.

La solucin, a medida que el tiempo tiende a innito converge a la recta


que une los puntos de la frontera (0, 100) y (10, 50). En la siguiente tabla
y grcos podemos ver las soluciones numricas correspondientes a varios
momentos del tiempo:

54

100
80
60
40
20
2

10

Figura 2.1: Ecuacin del calor

x/t
0
2
4
6
8
10

0,1
100
2,5
0
0
1,25
50

5
100
53,4341
24,7168
17,4521
27,9807
50

10
100
68. 796 9
46. 135 4
36. 615 8
39. 575 2
50

50
100
89,5523
79,2755
69,2755
59,5523
50

100
100
89,9963
79,9940
69,9940
59,9963
50

150
100
89,99997
79,99995
69,99995
59,99997
50

100
80
60
40
20
2

Figura 2.2: Ecuacin del calor

10

55

En la siguiente tabla tenemos los resultados (para el momento T = 10)


de aplicar el mtodo con distintos pasos:
x
0
2
4
6
8
10

h = 0,5, k = 0,1
100
68,9029
46,1479
36,4898
39,456
50
x
0
2
4
6
8
10

h = 1, k = 0,5
100
69,9181
47,6968
37,9302
40,2958
50

h = 2, k = 2
100
71,875
48,4375
40,6250
40,6250
50

h = 2, k = 0,1
100
68. 796 9
46. 135 4
36. 615 8
39. 575 2
50

h = 1, k = 1
100
100150
99150
71100
52850
50

Vemos que en el caso de la ltima columna los resultados estn muy


lejos de los correctos. En la siguiente tabla podemos ver que un pequeo
desfase en el cumplimiento de la condicin tiene grandes consecuencias en
los resultados:

x
0
2
4
6
8
10

2.2.2.

h = 0,5, k = 0,13
T = 10,01
100
13,5211
39,761
45,191
9,085
50

h = 0,5, k = 0,125
100
69,070
46,405
36,7316
39,598
50

Mtodo implcito

Los algoritmos implcitos se emplean para evitar los problemas de estabilidad


que hemos visto en el caso anterior. Estos permiten utilizar pasos espaciales

56

pequeos (para obtener mejor precisin) sin necesidad de usar un paso


temporal excesivamente pequeo.
Las aproximaciones que usaremos para las derivadas sern similares a
las de antes. La diferencia estriba en que la aproximacin la realizaremos
en el punto (xj , tn+1 ). Para la derivada temporal utilizaremos la diferencia
regresiva:
k2
+
vjn = v(xj , tn+1 k) = vjn+1 k(vt )n+1
(vtt )(xj , n ),
j
2
donde n (tn , tn+1 ). Entonces,
vjn+1 vjn k
=
+ vtt (xj , n ).
k
2
Para la aproximacin de la derivada segunda espacial se utilizar de nuevo
la diferencia central, pero evaluada en el punto (xj , tn+1 ), esto es,
(vt )n+1
j

(vxx )n+1
j

n+1
n+1
vj1
2vjn+1 + vj+1
h2
+ vxxxx (j , tn+1 ).
=
h2
12

As pues, obtenemos
n+1
n+1
vjn+1 vjn
vj1
2vjn+1 + vj+1
n+1
(vt D vxx )j =
D
+ O(k) + O(h2 ).
(2.7)
k
h2
Si tenemos en cuenta que v satisface la ecuacion (2.2) y despeciamos los
trminos O(h2 ) y O(k), la frmula anterior sugiere el esquema en diferencias
nitas
( n+1
)
n+1
n+1
n
D
u

2u
+
u
un+1

u
j
j1
j
j+1
j
=
.
k
h2
Mediante clculos similares al esquema explcito, llegamos a la siguiente
ecuacin en diferencias implcita:

n+1
n+1
n+1
n

ruj1 + (1 + 2r)uj ruj+1 = uj , j = 1, 2, . . . , J, n = 0, 1, 2, . . . ,


u0j = f (xj ), j = 0, 1, . . . , J + 1,

n
u0 = (tn ) = n , unJ+1 = (tn ) = n , n = 0, 1, 2, . . . .

(2.8)

Al escribir esta ecuacin en forma matricial obtenemos

1 + 2r
r
0

1 + 2r
r
r

0
r
1 + 2r

.
.
..
..
..
.

0
0
0

r
..
.
r

n n+1
0
r( )
u
un+1
1
n+1 1n
0 u 2 u2 0

n+1 n
..

0
u
u
. 3 3

+
=

.. .. .. ..
..
.
. . . .

n+1 n
1 + 2r
r uJ1 uJ1 0
r( n+1 )
unJ
un+1
r
1 + 2r
J
0
0
..
.

57

que la escribiremos por Q u(n+1) = u(n) + b(n+1) .


Vemos pues que en cada paso n este mtodo requiere un nmero mayor
de operaciones que en el algoritmo explcito, ya que tenemos que resolver un
sistema de ecuaciones. Sin embargo, es importante observar que la matriz
Q es tridiagonal, lo que permite resolver el sistema de forma muy eciente.
Este tipo de sistemas requiere una cantidad de operaciones de orden O (J),
muy inferior al caso general, donde se necesita efectuar operaciones de
orden O (J 3 ) . Por tanto, el incremento en el nmero de operaciones por paso
va a ser pequeo. Adems, como veremos ms adelante, este incremento
en la cantidad de operaciones se ve ampliamente compensado por el hecho
de que no vamos a necesitar imponer un paso temporal pequeo, por lo
que el cmputo global de operaciones va a resultar mejor que en el mtodo
explcito.
Un aspecto importante es saber si el sistema de ecuaciones obtenido
tiene una nica solucin. Eso lo sabremos al estudiar los valores propios de
la matriz Q, que son todos positivos. Por tanto, Q es invertible, el sistema
tiene una nica solucin y el mtodo se puede implementar correctamente.

Ejemplo 2.2 Hallar la solucin de la ecuacin del calor en el intervalo [0, T ] = [0, 10]
para una barra de longitud L = 10 dado que la temperatura inicial es cero, D = 1 y que
v (0, t) = 100, v (10, t) = 50. Usar h = 2, k = 0,1.
Solucin.
Tenemos que r =
r uj5 = 1,25.

0,1
4

= 0,025, 1 + 2r = 1,05, uj0 = 100, uj5 = 50, r uj0 = 2,5,

1) t = 0,1 :

1,05 0,025
0
0
0,025 1,05 0,025
0

0
0,025 1,05 0,025
0
0
0,025 1,05

1
2. 382 32
u1
u1 5. 742 97 102

2
.
2 =
2
u3 2. 972 89 10
1. 191 18
u14

u11
u12
u23
u14

2,5
0
0
1,25

Observamos que, a diferencia del mtodo explcito, todos los valores de u han cambiado
y son distintos de cero ya en la primera iterada.

58

2) t = 0,2 :

1,05 0,025
0
0
0,025 1,05 0,025
0

0
0,025 1,05 0,025
0
0
0,025 1,05
1

4. 653 82
u1

u1
0,167 59

2
.
2 =
2
u3 8. 770 87 10
u14
2. 327 02

u11
u12
u23
u14

4. 882 32
0,057 429 7
0,029 728 9
2. 441 18

En el paso 99 obtenemos u99 = (100, 68,3262, 45,47296, 36,0324, 39,23398, 50,0000). De


aqu:
100) t = 10

1,05 0,025
0
0
0,025 1,05 0,025
0
0
0,025 1,05 0,025
0
0
0,025 1,05

u11
68. 544 1

u12
45. 804 9
=

.
u23 36. 345 8
u14
39. 421 5

u11
u12
u23
u14

70. 826 2
45. 472 96
36. 032 4
40. 483 98

Al igual que en el anterior algoritmo, resumimos en la siguiente tabla las soluciones


numricas correspondientes a varios momentos del tiempo:
x/t
0
2
4
6
8
10

0,1
100
2. 382 32
5. 742 97 102
2. 972 89 102
1. 191 18
50

5
100
52,9651
24,5002
17,3798
27,8062
50

10
100
68. 544 1
45. 804 9
36. 345 8
39. 421 5
50

50
100
89,5314
79,2417
69,2417
59,5313
50

100
100
89,99595
79,99345
69,99345
59,99595
50

150
100
89,99997
79,99994
69,99994
59,99997
50

Los resultados son similares a los obtenidos con el mtodo explcito.

59

La gran ventaja de este mtodo en relacin al explcito reside en que es estable para
valores cualesquiera de k y h. Adems, el algoritmo es convergente con la misma rapidez
que el algoritmo explcito, es decir, de orden O(k + h2 ). Por tanto, podemos reducir el
tamao del paso h, y as obtener mejor precisin, sin necesidad de utilizar valores excesivamente pequeos de k. De esta forma conseguimos una buena precisin sin aumentar de
forma inaceptable el nmero de operaciones.
Veamos ahora qu resultados se obtienen con los pasos h = 1, k = 1 y h = 0,5,
k = 0,13 :

x
0
2
4
6
8
10

h = 0,5, k = 0,13
T = 10,01
100
68,6343
45,7749
36,1806
39,2908
50

h = 1, k = 1
100
67,4761
44,2870
34,9968
38,6295
50

A diferencia del mtodo explcito, con estos parmetros obtenemos


resultados aceptables.
Aunque este mtodo presenta claras ventajas con respecto al anterior
sigue sin ser un mtodo completamente satisfactorio. La razn reside en
que, al ser el orden de convergencia O(k + h2 ), predomina el error temporal
sobre el espacial (al tener k menor orden), por lo que de poco nos sirve
disminuir el paso h con el objetivo de obtener mejor precisin. Fmonos
en que para conseguir precisin h2 debemos escoger k h2 , con lo que nos
aparece el mismo problema que en el algoritmo explcito. Veamos pues un
mtodo que no adolece de ninguno de estos problemas.

2.2.3.

Mtodo de Crank-Nicholson

En el mtodo anterior hemos apreciado que el error en el discretizado era


de primer orden en k y de segundo orden en h. En este epgrafe trataremos
de encontrar un mtodo que mejore el anterior a segundo orden respecto de
k. Una idea para alcanzar este objetivo podra ser aproximar por la frmula
de diferencia central de dos puntos la derivada temporal
(vt )nj

vjn+1 vjn1
+ O(k 2 ).
=
2k

60

La idea expuesta parece buena, pero desafortunadamente conduce a un


mtodo numrico que es siempre inestable, por lo que no ha de utilizarse
nunca. Parece que la diferencia progresiva es la ms adecuada, pero sta se
puede ver tambin como una diferencia centrada en el punto intermedio,
esto es,
n+ 12

(vt )j

vjn+1 vjn
k2
k
+ O( ).
= vt (xj , tn + ) =
2
k
4

Ahora el problema reside en aproximar la derivada segunda espacial en


este punto intermedio tn + k2 . Estimaremos este valor utilizando una mezcla
ponderada de la derivada segunda en los nodos (xj , tn ) y (xj , tn+1 ),

n+ 12

(vxx )j

k
= vxx (xj , tn + ) (1 )vxx (xj , tn ) + vxx (xj , tn+1 ),
2
n+1
n+1
n
n
vj1
2vjn+1 + vj+1
vj1 2vjn + vj+1
(1 )
+

,
h2
h2

donde [0, 1].


En denitiva la ecuacin en derivadas parciales (2.2) se discretiza en el
punto (xj , tn + k/2) mediante el esquema numrico
n+1
un+1
+ un+1
un+1 unj
unj1 2unj + unj+1
j1 2uj
j+1
= D(1 )
+
D
.
k
h2
h2

Se puede probar que cuando = 1/2, el error en la discretizacin (error de


truncacin) es de orden 2 en la variable temporal y de orden 2 en la variable
espacial, esto es, O(k 2 + h2 ).
En ese caso el mtodo se denomina mtodo de Crank-Nicolson y
adquiere al forma
2(un+1
unj ) = D
j

k
n+1
+ un+1
[(unj1 2unj + unj+1 ) + (un+1
j1 2uj
j+1 )],
2
h

reordenando trminos e imponiendo las condiciones iniciales y de frontera


obtenemos el esquema numrico

run+1 + 2(1 + r)un+1 run+1 = run + 2(1 r)un + run , j = 1, . . . , J,


j+1
j
j1
j1
j
j+1
0
un+1 = n+1 , un+1 = n+1 , n 0,
u = fj , j = 0, 1, . . . , J, J + 1.
0

J+1

(2.9)
Matricialmente, el esquema anterior se escribe

61

2(1 + r)
r
0

0
0
un+1
1

n+1
2(1 + r)
r

0
0
r
u2

..
..
0

un+1
r
2(1 + r) r
.
.
3

..
..
..
..
...
...
...

.
.
.
.

n+1

r 2(1 + r)
r uJ1
0
un+1
0
0

r
2(1 + r)
J

n
2(1 r)
r
0

0
0
r( + n+1 )
un1

n
2(1 r)
r

0
0
r
0

u2

..
..
n
0

u
0
r
2(1 r) r
.
.

3
,
+
=

.
.
..
..
..

.
..
..
..
.

.
.
.
.
.


.
.
.

un

0
0

r 2(1 r)
r
0

J1
r( n + n+1 )
unJ
0
0

r
2(1 r)
que de forma compacta se reescribe como
Q u(n+1) = Q1 u(n) + c(n) .

2.3.

Estabilidad, consistencia y convergencia

Sea u(n) = (un1 , un2 , . . . , unJ )T los valores nodales en el instante tn que se
obtienen al hacer correr un cierto esquema numrico
u(n+1) = Au(n) + b(n)

(2.10)

para obtener una aproximacin numrica de una EDPs. Consideremos


v = (v1n , . . . , vJn )T los valores nodales en el tiempo tn de la solucin exacta
y denotemos por e(n) = u(n) v (n) el error cometido en la aproximacin
numrica. Diremos que el mtodo numrico es estable cuando kAm k est
uniformemente acotada para todo k y m vericando mk T . En otras
palabras, cuando la diferencia entre los valores aproximados y los reales
permanezcan acotados en todo nivel del tiempo.
(n)

El que un esquema numrico sea consistente con un problema de


contorno signica, que para pasos en la discretizacin sucientemente
pequeos, la solucin exacta del problema verica el esquema numrico con
un error tan pequeo como se desee. Finalmente, para que un esquema sea

62

convergente se debe vericar que para una discretizacin sucientemente


na, el error enj en cada nodo pueda hacerse tan pequeo como se quiera
en cualquier paso del tiempo.

Denicin 2.2
Un esquema en diferencias nitas de la
forma (2.10) que aproxima a una ecuacin diferencial en derivadas
parciales es un esquema convergente en el tiempo t si
kv (n) u(n) k 0,
cuando h, k 0, siempre y cuando (n + 1)k t. Diremos que la
convergencia es de orden (p, q) si
kv (n) u(n) k = O(hp ) + O(k q ).

Denicin 2.3
Un esquema en diferencias nitas de la
forma (2.10) es consistente a una ecuacin diferencial en derivadas
parciales si la solucin v(x, t) satisface
v (n+1) = Av (n) + b(n) + k (n) ,

donde

k (n) k 0,

cuando h, k 0. Adems, se dice que es consistente de orden (p, q)


si
k (n) k = O(hp ) + O(k q ).
La cantidad k (n) k se denomina error de truncamiento o error de
consistencia.

Observacin 2.4
Tanto en la denicin convergencia como en la de
consistencia, la norma k k que utilizamos cambia conforme el paso h es
ms pequeo, puesto que el espacio de vectores nodales crece en dimensin.

63

Denicin 2.5
Diremos que un esquema numrico de la
forma (2.10) es estable si kAm k C, para todo k y n con mk T .

Consideremos un esquema en diferencias nitas dado matricialmente


por (2.10)
u(n+1) = Au(n) + b(n) .
Supongamos que v = v(x, t) es una solucin exacta de ecuacin (2.2) que
satisface la ecuacin anterior salvo por un trmino (error residual) que
denotaremos por E (n) ,
v (n+1) = Av (n) + b(n) + E (n) .
Restando las dos ecuaciones anteriores obtenemos
v (n+1) u(n+1) = A(v (n) u(n) ) + E (n) .
Denimos el error global e(n) = v (n) u(n) , entonces:
e(n+1) = Ae(n) + E (n)
= A(Ae(n1) + E (n1) ) + E (n)
= A2 e(n1) + AE (n1) + E (n)
= ...

...

= A(n+1) e(0) +

Am E (nm) .

m=0

Asumiremos dos condiciones: que no hay error inicial (e(0) = 0), y que
la norma de las potencias m-simas de la matriz A estn uniformemente
acotada, esto es, kAm k C (estabilidad):

ke

(n+1)

k= k
C

m=0
n

A E

(nm)

kAm k kE (nm) k

m=0

kE (m) k.

m=0

Supongamos que nuestro esquema en diferencias nitas es consistente de


orden (p, q) con la EDPs. Entonces E (m) = k (m) , y para cada m = 0, 1, . . . , n

64

podemos encontrar una constante Km vericando k (m) k Km (hp + k q ).


Consideremos K(t) = max0mn Km . Por la propia construccin, se verica
que k (m) k K(t) para todo 0 m n, de donde concluimos:
ke

(n+1)

k Ck

k (m) k Ck(n + 1)K(t)(hp + k q ).

m=0

Pero cuando k 0 entonces k(n + 1) t, y as conseguimos convergencia de


orde (p, q). En denitiva, hemos probado parcialmente el clebre teorema
de Lax, que enunciamos de manera simplicada.

Teorema 2.6 (Lax) Un esquema numrico en diferencias nitas


del tipo (2.10) consistente a una EDPs es convergente si, y solo si,
es estable.

Apndice A

Analisis numrico matricial


A.1.

Normas vectoriales

Para introducir nociones de consistencia y convergencia es necesario


utilizar normas vectoriales con la nalidad de medir el error de la aproximacin.

Denicin A.1
aplicacin

Una norma en un espacio vectorial real V es una


kk:V R

vericando:
(1) kuk 0 para todo u V , y kuk = 0 si, y solo si, u = 0.
(Positividad).
(2) kuk = || kuk, para todo R y u V . (Homogeneidad).
(3) ku+vk kuk+ kvk, para todo u, v V . (Desigualdad Triangular).

Para nuestros propsitos, consideraremos el espacio vectorial V = Rm1


y deniremos las normas ms utilizadas para tema que nos ocupa. Una
eleccin comn es la norma del supremo (o norma del innito), denotada
por k k :
kuk = sup |ui |.
1im

65

66

Es fcil comprobar que se vercan todas las propiedades requeridas. En la


prctica es muy valioso obtener una cota de la norma del supremo, puesto
que en ese caso tenemos acotadas todas las componentes del error por
ella. Para algunos problemas, sin embargo, puede ser ms apropiado y fcil
de calcular cotas para otras normas. Son frecuentes las siguientes:
kuk1 =

|ui |,

(1-norma)

i=1

v
u m
u
kuk2 = t
|ui |2 ,

(2-norma o norma eucldea)

i=1

Ellos son casos particulares de una familia general de p-normas, denidas


por
( m
)1/p

kukp =
|ui |p
.
i=1

La norma del supremo se obtiene cuando hacemos tender p de la


p-norma.
Cuando se trata de comparar dos vectores, uno que representa los valores
nodales exactos de una funcin, y otro que representa valores aproximados,
(donde los nodos estn separados uniformemente por una longitud h > 0),
es mucho ms apropiado utilizar la norma `2,h denida por
v
u m
u
|ui |2 .
kuk2,h = th
i=1

Un hecho importante que relaciona todas estas normas es que son equivalentes.

Denicin A.2 Dos normas kk y kk se dice que son equivalentes


si existen constantes a, b > 0 tales que
a kuk kuk b kuk,

para todo u Rm1

De manera informal, la equivalencia viene a decir que si una sucesin de


vectores converge a 0 respecto de una norma cualquiera de ellas, entonces la

67

sucesin tambien converge a 0 respecto de todas las dems, y si una cierta


cantidad est acotada bajo una norma, automticamente est acotada bajo
todas las dems normas equivalentes (quizs cambie la cota). De hecho,
en dimensin nita, todas las normas son equivalentes.

A.2.

Normas matriciales

Proposicin A.3 Sea kk : Rm1 R una norma vectorial cualquiera


y denamos con el mismo nombre la aplicacin
k k : Rmm R
A

kAk := sup

uRm1

kAuk
kuk

(A.1)

Entonces k k es una norma denida en el conjunto de las matrices


cuadradas Rmm . Adems se verican las siguientes propiedades:
(a) kAuk kAk kuk para todo A Rmm y u Rm1 .
(b) kABk kAk kBk para todo A, B Rmm .

Denicin A.4 Cualquier norma k k : Rmm R inducida por una


norma vectorial mediante (A.1) se denomina norma matricial.

Denimos el radio espectral de una matriz A como


(A) = max {|j |} ,
1jm

donde j son los valores propios de A.

68

Proposicin A.5 Si (A) denota el radio espectral de una matriz A,


entonces para cualquier norma matricial kk se verica la desigualdad
(A) kAk.

Prueba.
El radio espectral se dene como el max {|1 |, . . . , |m |}, donde i
son los valores propios de A. Sea u Rm1 es vector propio asociado a un
valor propio i , entonces

|i | kuk = ki uk = kAuk kAk kuk.

Dividiendo por kuk en la desigualdad anterior obtenemos que |i | kAk


para todo i {1, . . . , m} y, por tanto,

(A) = max {|i |} kAk

Proposicin A.6 Para las normas vectoriales k k1 , k k y k k2


obtenemos las siguientes normas matriciales:

(a) kAk1 = max1jm m


i=1 |aij |.

(b) kAk = max1im m


j=1 |aij |.

(c) kAk2 = (AT A).

69

Teorema A.7

Consideremos el sistema lineal recursivo


u(n+1) = A u(n) .

(A.2)

Son equivalentes:
(I) La sucesin de vectores u(n) est uniformemente acotada en
norma para cualquier condicin inicial u(0) ,
ku(n) k C1 (= cte),

para todo n N,

u(0) Rm1 .

(II) Las potencias de A estn uniformemente acotadas,


kAm k C2 (= cte),

para todo m N.

En las condiciones equivalentes del teorema anterior, diremos que el


sistema recursivo (o la matriz A) es estable.

Teorema A.8 Si el radio espectral verica (A) 1, y A no tiene


valores propios defectivos (esto es, su multiplicidad algebraica es
diferente a la multiplicidad geomtrica) de mdulo 1, entonces la
matriz A es estable.

70

Teorema A.9
forma

Una matriz tridiagonal de dimensin m m de la

T = .
..

0
0

0
..
a b
c
.

,
.. . . . . . . ..
.
.
. .
.

0 a
b c
0 a b
c
b

0
c

0
0
..
.

tiene valores propios

j = b + 2c

j
a
cos(
),
c
m+1

j = 1, 2, . . . , m.

También podría gustarte