Académique Documents
Professionnel Documents
Culture Documents
Juan Piccini
17 de noviembre de 2003
Este material esta basado en notas confeccionadas por Alvaro Pardo y mate-
rial de los libros Numerical Methodsde Dahlquist y Bjorck, Ed. Prentice- Hall;
Numerical Analysis, de Jacques y Judd, Ed. Chapman and Hall,Numerical
Methods and Softwarede Kahaner, Moler y Nash, Ed.Prentice-Hall.
Al igual que los materiales anteriores, estos son meros apuntes pen-
sados para ayudar, no para sustitur a los libros ( hay a nos-luz
de distancia entre estos apuntes y un buen libro !!). Por tanto re-
comiendo fuertemente que no se queden solamente con esto, vayan a
las fuentes.
Introduccion
Muchos problemas que se plantean en varias ramas de la Ciencia e Ingeniera
resultan en una ecuacion diferencial ordinaria (edo) de primer orden, de la for-
ma:
y
= f(x, y(x))
Esta ecuacion se llama de primer orden, puesto que la mayor derivada de y que
aparece es la derivada primera. La forma habitual de discretizarla es la siguiente:
si integramos el lado derecho de la ecuacion, por el teorema fundamental del
calculo integral, tendremos que
2
y(x
k+1
) y(x
k
) =
x
k+1
x
k
f(t, y(t))dt
Seg un sea la interpolante que utilicemos para el integrando, tendremos distin-
tas ecuaciones en diferencias y distintos metodos de resolucion. Por ejemplo,
si aproximamos f(x) por f(x
k
) en el intervalo [x
k
, x
k+1
], tendremos y(x
k+1
)
y(x
k
) (x
k+1
x
k
)f(x
k
, y(x
k
)). Y si llamamos h
k
= x
k+1
x
k
, esto nos da:
y(x
k+1
) y(x
k
)+h
k
f(x
k
, y(x
k
)). Notemos que ahora ya no tenemos una igual-
dad, porque la integral fue sustituda por una aproximacion.
Metodo de Euler, metodos lineales multipaso
Recordando que y
k
es la aproximacion n umerica al valor y(x
k
), la ecuacion
anterior puede ponerse como (asumimos que los puntos estan equiespaciados):
y
k+1
= y
k
+ h f(x
k
, y
k
), o y
k+1
= y
k
+ h y
k
Esta formula se conoce como el Metodo de Euler. A partir de y
0
, nos permite
hallar y
1
, luego usamos y
1
para hallar y
2
, etc. etc.
Geometricamente, lo que hace el metodo es pasar del punto (x
k
, y
k
) al siguiente
(x
k+1
, y
k+1
) viajando por la recta tangente a y en x
k
. La pendiente de dicha
recta es y
k
.
Aunque y
0
= y(x
0
), tendremos que y
1
y(x
1
), pero y
1
= y(x
1
). Esto signi-
ca que el punto (x
1
, y
1
) no esta en la curva solucion que pasa por el punto
(x
0
, y
0
),sino que pertenece a otra solucion y de la familia, que pasa por otro
punto diferente en x
0
. De similar manera, (x
2
, y
2
) no va a estar sobre la curva
solucion y que pasa por el punto (x
1
, y
1
). De modo que si cometemos un error
en el primer paso (calculo de y
1
), aunque luego no cometieramos error alguno,
los valores y
2
, y
3
, ... tendran error (ver graca siguiente, se uso t en lugar de x).
Dicho error depende no solamente del algoritmo, sino tambien de la familia de
soluciones de la ecuacion diferencial.
3
0
0.5
1
1.5
2
2.5
x 10
4
t
y
(
t
)
Solucin numrica comparada con la solucin analitica
yo
to
t1
(t1,y1)
(t2,y2)
t2
Si para el calculo de la integral aproximamos a f por el segmento que une los
puntos (x
k
, f(x
k
, y(x
k
)), (x
k+1
, f(x
k+1
, y(x
k+1
)), tendremos elmetodo del trape-
zoide, donde y(x
k+1
) y(x
k
)
h
2
[f(x
k+1
, y(x
k+1
)) + f(x
k
, y(x
k
))]. Esto nos
lleva a la ecuacion en diferencias:
y
k+1
= y
k
+
h
2
[f(x
k+1
, y
k+1
) + f(x
k
, y
k
)] o:
y
k+1
= y
k
+
h
2
[y
k+1
+ y
k
]
Esta se conoce como el metodo del trapezoide.
Existe una importante diferencia entre ambos metodos. En el metodo del trape-
zoide, la incognita y
k+1
tambien aparece en el lado derecho, como argumento
de la funcion f, y por tanto tendremos una ecuacion no lineal que tendremos
que resolver para hallar y
1
a partir de y
0
, luego lo mismo para hallar y
2
a partir
de y
1
, etc. etc. Podemos hacer esto usando metodos de punto jo.
y
m+1
k+1
= y
k
+
h
2
f(x
k
, y
k
) + f(x
k+1
, y
m
k+1
(1)
Por supuesto, necesitaremos un valor inicial y
0
k+1
, el cual puede calcularse a
partir del metodo de Euler haciendo y
0
k+1
= y
k
+h f(x
k
, y
k
). Para calcular y
k+1
partimos de y
0
k+1
y luego aplicamos (1) hasta satisfacer alg un criterio de parada.
Luego calculamos y
0
k+2
y repetimos hasta tener un y
k+2
aceptable, etc. etc.
4
En este contexto, al metodo de Euler se le llama predictor, y al metodo del
trapezoide, corrector. Este es un caso muy simple de un par predictor-corrector.
Ilustraremos con un ejemplo:
Ejemplo Dada la ecuacion y
=
y
2
1+x
, y(0) = 1, queremos estimar y(0,2),
usando un paso h = 0,05. La pareja predictor-corrector esta dada por:
y
0
n+1
= y
n
0,05y
2
n
1+x
n
y
m+1
n+1
= y
n
0,025
y
2
n
1+x
n
+
(y
m
n+1
)
2
1+x
n+1
El valor predicho de y
1
es y
0
1
= y
0
0,05y
2
0
1+x
0
= 0,95. Si aplicamos dos correcciones
por paso, entonces :
y
1
1
= y
0
0,025
y
2
0
1+x
0
+
(y
0
1
)
2
1+x
1
= 0,95351
y
2
1
= y
0
0,025
y
2
0
1+x
0
+
(y
1
1
)
2
1+x
1
= 0,95335
As, tomamos como y
1
= 0,95335. De modo similar, tenemos:
y
0
2
= 0,91007, y
1
2
= 0,91289, y
2
2
= 0,91277 = y
2
y
0
3
= 0,87490, y
1
3
= 0,87719, y
2
3
= 0,87711 = y
3
y
0
4
= 0,84366, y
1
4
= 0,84556, y
2
4
= 0,84549 = y
4
Como la solucion analtica es y(x) =
1
1+log(1+x)
, el error entre y(0,2) e y
4
es
0,84579 0,84549 = 0,00030.
Veamos un ultimo ejemplo, el Metodo del punto medio: Aproximaremos la in-
tegral en el intervalo [x
k1
, x
k+1
] por (x
k+1
x
k1
)f(x
k
, y(x
k
)), con lo cual
tenemos la ecuacion en diferencias:
y
k+1
= y
k1
+ 2h f(x
k
, y
k
) o:
y
k+1
= y
k1
+ 2h y
k
Si conocemos y
0
, necesitaremos y
1
para poder calcular y
2
. Podemos hallar y
1
mediante Euler o trapezoide, con lo cual luego podemos calcular y
2
, y
3
, ..., y
n
.
Estas tres formulas son casos especiales de:
y
n+1
=
i=j
i=1
j
y
n+1i
+ h
i=j
i=0
i
f
n+1i
5
Donde f
k
= y
k
= f(x
k
, y
k
) y
k
,
k
son constantes especcas de cada metodo.
Este tipo de algoritmos se llaman Metodos lineales multipaso de j-pasos.
El metodo sera explcito si
0
= 0, e implcito si
0
= 0, donde
0
es el coeciente
de f
n+1
. As, el metodo de Euler es explcito de un paso, el del trapezoide es
implcito de un paso, y el del punto medio es explcito de dos pasos. El termino
multipaso se debe a que para conocer y
n+1
necesitamos los j valores anteriores
y
n
, y
n1
, ..., y
n+1j
. Cuando j > 1, necesitamos conocer y
1
, y
2
, ..., y
j1
para el
arranque del metodo.
Ecuaciones de orden mayor y sistemas de ecuaciones
Muchos problemas que aparecen en ciencias e ingeniera nos conducen a sis-
temas de edos. Veamos un ejemplo (modelo predador-presa): Supongamos dos
poblaciones, por ejemplo conejos (c(t)) y zorros(z(t)). Las poblaciones cambian
en el tiempo seg un las siguientes ecuaciones:
c
m
e
r
o
d
e
i
n
d
i
v
i
d
u
o
s
Evolucin temporal de las poblaciones. Se utiliz el valor a= 0.05,
y los valores iniciales 100 (c), y 10 (z).
zorros
conejos
6
Si llamamos
y
1
(t) = c(t), y
2
(t) = z(t)
f
1
(t, y
1
(t), y
2
(t)) = 2y
1
(t) a y
1
(t)y
2
(t)
f
2
(t, y
1
(t), y
2
(t)) = y
2
(t) + a y
1
(t)y
2
(t))
tenemos que el sistema puede escribirse como:
y
1
(t) = f
1
(t, y
1
(t), y
2
(t))
y
2
(t) = f
2
(t, y
1
(t), y
2
(t))
Esto es lo mismo que:
y(t) = f(t, y)
donde y(t) =
y
1
(t)
y
2
(t)
, f(t, y) =
f
1
(t, y
1
(t), y
2
(t))
f
2
(t, y
1
(t), y
2
(t))
, y(t
0
) =
y
1
(t
0
)
y
2
(t
0
)
De este modo, los algoritmos pensados para el problema de una ecuacion pueden
adaptarse a sistemas de ecuaciones. Queda como ejercicio escribir lo anterior
para un sistema de n ecuaciones.
Supongamos ahora que tenemos una ode de orden mayor a uno, esto es, aparecen
derivadas de orden mayor. Por ejemplo, tenemos
u
= au
+ bu
+ cu + d = f(x, u, u
, u
)
donde a, b, c, d pueden ser constantes o funciones de x. Si hacemos y
1
= u, y
2
=
u
, y
3
= u
1
= y
2
y
2
= y
3
y
3
= f(t, y
1
, y
2
, y
3
)
Queda como ejercicio generalizar esto para una ecuacion de orden n.
7
Ecuaciones estables e inestables
Sabemos que, bajo ciertas hipotesis de regularidad para la f, la ecuacion y
=
f(x, y(x)), y(x
0
) = y
0
tendra una unica solucion. Ahora bien, en la realidad,
sucede que la condicion inicial nunca se conoce con exactitud, ya sea porque al
medirla se cometen errores, o porque tal vez la computadora no pueda repre-
sentar exactamente el valor y
0
.
En general la condicion inicial no es un valor conocido, sino que es una variable
de la cual se sabe que se mueve en un cierto intervalo. Dicho intervalo puede ser
muy chiquitito, casi microscopico, por ejemplo y
0
= 1,234567 0,000001, pero
siempre estara all.
De modo que en realidad estamos resolviendo la edo pero con una condicion
inicial distinta a la que pensamos. Por ello debemos preguntarnos si la solucion
que encontremos estara cerca o lejos de la solucion correspondiente a esa condi-
cion inicial perfecta, sin perturbar.
Esto nos lleva a la estabilidad de la ode. Intuitivamente, la ode sera estable
(buena) cuando las soluciones correspondientes a condiciones iniciales cercanas,
se mantienen cercanas entre s.
En este tipo de odes tendremos la tranquilidad de que aunque le hayamos errado
un poco en las condiciones iniciales, la solucion que encontremos no estara de-
masiado lejos de la que debera haber sido (recordemos que a esto debemos
agregar que la solucion numerica en cada paso va saltando de una curva solu-
cion a otra correspondiente a una condicion inicial distinta).
A modo de ejemplo, consideremos las dos edos siguientes, con su familia de
soluciones correspondiente:
(A) (B)
y
= exp (t) y
= y
y(t) = c exp (t) y(t) = c exp (t)
Para t
0
jo, en las soluciones de (A) tenemos que y
(t
0
) = exp (t
0
) = constante
(todas las soluciones de la familia tienen la misma pendiente en el punto), como
puede verse en la gura de abajo.
Mientras que para las soluciones de (B) tenemos que y
(t
0
) = y(t
0
) = c exp (t
0
),
(la pendiente de cada solucion de la familia en el punto cambia seg un el miembro
de la familia), como puede verse en la gura de la siguiente pagina.
8
0 0.5 1 1.5 2 2.5 3 3.5 4
2
1.5
1
0.5
0
0.5
1
Tiempo (t)
y
(
t
)
Algunas soluciones de (A)
c=1
c=0.5
c=0
c=0.5
c=1
En to, todas
las soluciones
tienen = pendiente
Volvamos a la ecuacion y
= y y
= exp (t)
y(0) = 1 y(0) = 1
tienen ambas la misma solucion particular, y(t) = exp (t), sin embargo la
primera ecuacion es inestable, mientras que la segunda no, por lo que la resolu-
cion numerica de la primera va a ser mas insegura que la de la segunda. Para
ello, resolveremos ambas ecuaciones usando Euler, con un paso h = 0,2. Los
resultados se muestran en la graca de abajo.
11
0 0.5 1 1.5 2 2.5 3 3.5
0
5
10
15
20
25
30
35
t
y
(
t
)
Soluciones de y=y; y(0)=1 e y=exp(t);y(0)=1 mediante Euler, con h=0.2
Solucin de y=exp(t)
Solucin de y=y
Solucin analtica de ambos
sistemas y(t)=exp(t)
Estabilidad para sistemas de odes Los conceptos de estabilidad tambien
se aplican a los sitemas de ecuaciones. El unico cambio que aparece esta rela-
cionado con la matriz Jacobiana J ya mencionada. Recordemos que la com-
ponente i, j de la matriz Jacobiana es J
(
i, j) = f
i
/y
j
, y que depende de la
variable independiente x o t, seg un la notacion . Para el sistema de ecuaciones
de los zorros y conejos, tenemos que el Jacobiano es una matriz 2x2:
2 y
2
y
1
y
2
1 + y
1
Para un sistema de n ecuaciones, el Jacobiano sera una matriz nxn. Para una
sola ecuacion, sera una matriz 1x1, cuyo unico elemento es
f
y
(x, y(x)). La esta-
bilidad de un sistema esta gobernada por los valores propios de J. En general los
valores propios son n umeros complejos que dependen de y y de t o x. Puede pro-
barse que el valor propio con mayor parte real es quien controla la estabilidad.
Las partes reales positiva usualmente se corresponden con regiones de soluciones
que se separan (inestabilidad). La presencia de partes reales negativas en todos
los valores propios se corresponde con soluciones estables. Para un t jo pueden
haber valores propios con parte real positiva, y otros con parte real negativa.
Analisis del error
Nos centraremos en el metodo de Euler, por ser el mas sencillo. Desarrollando
12
por Taylor, tenemos que:
y(x
k+1
) = y(x
k
) + h
k
f(x
k
, y(x
k
)) +
h
2
k
2
y
(
k
), x
k
<
k
< x
k+1
Normalmente y
k
= y(x
k
). La unica excepcion es en el punto inicial, y(x
0
) = y
0
.
Si llamamos error global en x
k+1
a la expresion: E
k+1
= y(x
k+1
) y
k+1
y
recordamos que y
k+1
= y
k
+ h
k
f(x
k
, y
k
), tendremos que :
E
k+1
= E
k
+ h
k
(f(x
k
, y(x
k
)) f(x
k
, y
k
)) +
h
2
k
2
y
(
k
)
El error global es la cantidad que queremos controlar, es la distancia entre la
solucion analtica y(x
k
) y la de la ecuacion en diferencias, y
k
. Notemos que
no estamos considerando a un los errores de redondeo y de repre-
sentacion introducidos por la maquina. El error global tiene dos compo-
nentes : 1) El error local :A un cuando se diera que y(x
k
) = y
k
, seguiremos
teniendo E
k+1
=
h
2
k
2
y
(
k
). El error local es lo que en temas anteriores se
llamo error de truncamiento. Es el error matematico, y existira aunque las
operaciones se efect uen en aritmetica exacta. El error local es el que cometemos
al pasar de x
k
a x
k+1
cuando todos los datos hasta x
k
inclusive son exactos. Lo
denotaremos por e
k+1
=
h
2
k
2
y
(
k
).
2) El error de propagacion :El sumando h
k
(f(x
k
, y(x
k
)) f(x
k
, y
k
)) puede
escribirse (teo. del valor medio) como: h
k
J()(y(x
k
) y
k
), y
k
< < y
k+1
Este
puede ser un vector si las y
k
s lo son, en ese caso la desigualdad es componente
a componente.
Podemos entonces reescribir el error global como :
E
k+1
= E
k
+ h
k
J()E
k
+
h
2
k
2
y
(
k
) o E
k+1
= (1 + h
k
J)E
k
+ e
k+1
Esto es, el error global en el punto k + 1 es el error global en el punto anterior
multiplicado por un factor, mas el error local al pasar del punto anterior al ac-
tual. Al factor 1 + h
k
J se le llalma factor de amplicacion. El Jacobiano, que
ya haba aparecido controlando la estabilidad de la ode, vuelve a escena va el
factor de amplicacion, en el estudio del error global.
Diremos que un metodo numerico es estable, cuando el error global se mantiene
acotado, e inestable cuando no (para el metodo de Euler, el error se man-
tendra acotado si |1 + h
k
J| < 1, y si tenemos un sistema, pediremos que
I
d
+h
k
J < 1 en alguna norma). No confundamos esta denicion con la de es-
tabilidad de la ode. La desigualdad |1+h
k
J| < 1 es equivalente a 2 < h
k
J < 0,
y se llama Intervalo de estabilidad del metodo de Euler. Si la ode es inestable
(Jacobiano positivo), entonces no existira h
k
positivo para el cual el metodo de
13
Euler sea estable. Si la ode es estable (Jacobiano negativo), entonces el metodo
de Euler sera estable si elegimos h
k
< 2/J. A un cuando la ode sea estable,
el metodo de Euler puede no serlo si no elegimos bien el h. Volvamos
al ejemplo de la pagina 10,
y
(
k
). La idea es, suponiendo que conocemos hasta y
k
, calcular y
k+1
usan-
do un paso h
k
y estimar el error local en y
k+1
. Si dicho error es menor que una
cierta tolerancia, seguimos adelante y calculamos y
k+2
, de lo contrario usamos
un h
k
menor y recalculamos y
k+1
hasta que el error local e
k+1
sea menor que
la tolerancia prejada.
Veamos una forma de hacer esto: Supongamos conocidos y
k1
, y
k
, y
k1
, y
k
. Quer-
emos que el error local sea menor que un cierto . Como e
k+1
=
h
2
k
2
y
(
k
), alcan-
zara con elegir h
k
<
2
y
(
k
)
. Pero como no conocemos y
(
k
), la estimaremos
como:
y
k
y
k1
x
k
x
k1
Entonces buscamos h
k
tal que |y
|
h
2
k
2
< , esto nos da : |
y
k
y
k1
x
k
x
k1
|
h
k
2
< , o
lo que es lo mismo, h <
2
|y
|
. En general se acostumbra poner un factor de
15
seguridad de 0,9, con lo que nos queda: h
k
< 0,9
2
|y
|
. Y para prevenir que h
k
sea demasiado grande, usamos:
h
k
< min
0,9
2
|y
|
, h
max
k
y
k1
x
k
x
k1
.
2) Usamos h
k
< min
0,9
2
|y
|
, h
max
.
3) Con el h hallado en el paso anterior, calculamos y
k+1
.
4) Con este nuevo valor, calculamos y
=
y
k+1y
k
x
k+1
x
k
y vemos si |y
|
h
2
2
< . De
ser as, el valor y
k+1
es aceptado, de lo contrario volvemos a 2) pero con un h
menor.
Seguimos con analisis del error
Vimos que E
k+1
= (1 + h
k
J)E
k
+ e
k+1
. Supongamos que J < L (x, y(x))
en una cierta region, y que e
k
, con = (h
2
/2)y
[a,b]
, (donde y
[a,b]
es el maximo de |y
|1 + hL|
2
j=0
|1 + hL|
j
= E
0
|1 +hL|
k+1
+
1 |1 + hL|
k+1
1 |1 + hL|
o : E
k+1
E
0
|1 + hL|
k+1
+
1|1+hL|
k+1
1|1+hL|
Si E
0
= y(0) y
0
= 0 (condicion inicial), entonces tendremos que E
k
|1+hL|
k
1
|1+hL|1
(1+hL)
k
1
hL
exp (khL)1
hL
=
h
exp (khL)1
L
Como kh es el k-simo paso, es un punto entre a y b, donde [a, b] es el intervalo
donde estamos resolviendo la ode. Entonces kh b. Entonces E
k
h
exp (bL)1
L
,
como el ultimo factor es una constante C, tendremos que
E
k
C
h
=
C h
2
/2 y
[a,b]
h
.
Esto signica que El error global en el metodo de Euler es o(h), mientras
que el error local es o(h
2
). Otra forma, mas intuitiva (y mas corta) de vero
esto es la siguiente: Supongamos que h = (ba)/n, entonces el error global nal,
en el n-simo paso sera la suma de los errores locales, y por tanto tendremos
E n o(h
2
) = n h o(h) = (b a)o(h). Este ultimo argumento se aplica no
solamente al metodo de Euler, y en general tendremos que si un metodo tiene
error local o(h
p
), el error global sera o(h
p1
). Por ejemplo, puede probarse que
el metodo del trapezoide tiene error local o(h
3
), y por tanto error global o(h
2
).
Una prueba es la siguiente: haciendo desarrollos de Taylor en los puntos x
k
, x
k+1
tenemos
y(x
k+1
) = y(x
k
) + hy
(x
k
) + h
2
/2 y
(x
k
) + h
3
/6 y
(
k
)
y(x
k
) = y(x
k+1
) hy
(x
k+1
+ h
2
/2 y
(x
k+1
) h
3
/6 y
(
k+1
) donde
k
,
k+1
estan entre x
k
, x
k+1
.
Sumando ambas ecuaciones, llegamos a
y(x
k+1
) = y(x
k
) + h/2 [y
(x
k+1
) + y
(x
k
)] + h
2
/4 [y
(x
k+1
) y
(x
k
)] +
h
3
/12 [y
(
k+1
) y
(
k
)]
Aplicando valor medio a las derivadas segundas, tendremos que [y
(x
k+1
) y
(x
k
)] =
hy
(), x
k
< < x
k+1
. Sustituyendo dicho sumando y agrupando los restos
o(h
3
), tenemos : y(x
k+1
) = y(x
k
) + h/2 [y
(x
k+1
) + y
(x
k
)] + o(h
3
).
Diremos que un metodo numerico de resolucion de edo es consistente si
max(e
h
)
h
0 cuando h 0, donde e(h) es el error local. El orden de consistencia es el or-
den del innitesimo
e(h)
h
. Esta denicion nos dice que el metodo es consistente
cuando el error local tiende a cero a medida que h lo hace, esto es, el modelo
matematico tiende al objeto que modela cuando la discretizacion es suciente-
mente na. En el caso del metodo de Euler, como e(h) = y
h
2
/2, tendremos
que
max|y
h
2
/2|
h
=
y
[a,b]
h
2
/2
h
=
y
[a,b]
h
2
17
es consistente de orden 1.
Hasta ahora no tomamos en cuenta los errores de redondeo que introduce la
computadora, ya sea en las operaciones o en la representacion de n umeros.
Si recordamos que (fp(X) = X(1 +
X
)),
X
<
mach
, tendremos que e
h
h
2
/2( y
+
mach
y
).
Estabilidad numerica
En cada paso del metodo se cometen errores de redondeo. La estabilidad numeri-
ca se reere a la diferencia entre la solucion y
k
de la ecuacion en diferencias que
obtendramos trabajando en aritmetica exacta, y la solucion y
k
que nos da la
computadora. Diremos que el metodo es numericamente estable si e
k
= y
k
y
k
= qy
y(0) = 1
Sabemos que la solucion es y(x) = exp (qx), q C.
Llamaremos regi on de estabilidad del metodo numerico al conjunto de pun-
tos z = hq para los cuales la sucesion y
k
solucion de la ecuacion en diferencias,
se mantiene acotada al crecer k (recuerden el intervalo de estabilidad de Euler,
vamos a generalizarlo). A continuacion veremos el porque de esta denicion.
Deseamos estudiar como cambian las soluciones de la ecuacion y
= f(x, y(x)) al
cambiar la condicion inicial y(x
0
) = . Bajo ciertas condiciones de regularidad,
tenemos que
y
x
(f(x, y(x))) =
f
y
y
. Ademas,
x
y
y
x
Si llamamos u =
y
, tendremos
u
x
=
f
y
u. Por lo tanto, la estabilidad de
la edo depende de la derivada de f respecto de y, o sea del Jacobiano. En
el problema test, J = q. Asumiendo que J es diagonalizable, tendremos que
D = T
1
JT, donde D es la forma diagonal de J. Entonces el problema test
queda :y
= Jy = TDT
1
y. Si hacemos el cambio de variable z = T
1
y, ten-
dremos z
1
=
1
z
1
z
2
=
2
z
2
n
=
n
z
n
Para la estabilidad alcanza con estudiar el problema test y pedir
que h
i
pertenezca a la region de estabilidad para todo i.
En el caso de Euler, tenemos y
k+1
= y
k
+ hqy
k
y
k
= (1 + hq)
k
y
0
, es-
tara acotado sii |1 + hq| < 1. Esto es lo mismo que |hq (1)| < 1 Como
q puede ser compleja, esto nos da el disco de centro 1 + 0i y radio 1. Si
19
q es real, reencontramos el intervalo de estabilidad anteriormente visto. Para
3 2.5 2 1.5 1 0.5 0 0.5 1
2
1.5
1
0.5
0
0.5
1
1.5
2
Regin de estabilidad para el mtodo de Euler
(1,0)
(2,0)
Im(qh)
Re(qh)
el metodo del trapezoide, la ecuacion en diferencias correspondiente al proble-
ma test queda: y
k+1
= y
k
+ h/2(qy
k+1
+ qy
k
), la cual puede reescribirse como
:y
k+1
= y
k
1 + qh/2
1 qh/2
1 + qh/2
1 qh/2
k
y
0
. Ello es-
tara acotado sii
1 + qh/2
1 qh/2
= f(x, y(x), y
(a) = y
0
, diremos
que tenemos un problema con condiciones iniciales, y ya hemos visto como en-
frentarnos a el. Pero tambien puede suceder que las condiciones sean de la forma
y(a) = , y(b) = , en cuyo caso diremos que el problema es con condiciones
20
de borde o de frontera.
Veremos dos metodos para este tipo de ecuaciones: el metodo de las diferen-
cias nitas, y el metodo del disparo. El metodo de las diferencias nitas reduce
el problema de valores de frontera a un sistema de ecuaciones (lineales o no,
depende de la edo). El metodo del disparo reduce el problema de valores de
frontera a una sucesion de problemas de valores iniciales, que pueden resolverse
usando los metodos vistos anteriormente.
Metodo de las diferencias nitas
Comenzaremos con una ecuacion lineal de segundo orden
y
= p(x)y
(x
n
) = p(x
n
)y
(x
n
) + q(x
n
)y(x
n
) + r(x
n
)
Una forma simple de aproximar dicha ecuacion es reemplazando las derivadas
por sus diferencias centradas:
y
(x
n
) (1/2h)(y
n+1
y
n1
) y
(x
n
) 1/(h
2
)(y
n+1
2y
n
+ y
n1
)
Esto nos lleva a :
1/h
2
(y
n+1
2y
n
+ y
n+1
) = p
n
1/2h(y
n+1
y
n1
) + q
n
y
n
+ r
n
,
donde p
n
= p(x
n
), qn = q(x
n
), r
n
= r(x
n
). Esta ecuacion puede reacomodarse
como :
(1 + hp
n
/2)y
n1
(2 + h
2
q
n
)y
n
+ (1 hp
n
/2)y
n+1
= h
2
r
n
Esta ecuacion se aplica a cada uno de los puntos de grilla internos haciendo
n = 1, 2, ., N 1. Como los valores p
n
, q
n
, r
n
son conocidos, esto nos da una
ecuacion lineal para cada n, que involucra a y
n1
, y
n
, y
n+1
. En total tendremos
un sistema de N1 ecuaciones lineales para las incognitas y
1
, ., y
N1
. La primera
ecuacion (n=1), se simplica usando y
0
= , quedando
(2 + h
2
q
1
)y
1
+
1
hp
1
2
y
2
= h
2
r
1
1 +
hp
1
2
21
De igual modo, usando la otra condicion de borde, la ultima ecuacion (n=N-1),
queda:
1 +
hp
N1
2
y
N2
(2 + h
2
q
N1
)y
N1
= h
2
r
N1
1
hp
N1
2
(2 + h
2
q
1
)
1
hp
1
2
1 +
hp
2
2
(2 + h
2
q
2
)
1
hp
2
2
1
hp
N2
2
1 +
hp
N1
2
(2 + h
2
q
n1
)
y =
y
1
y
2
y
N2
y
N1
c =
h
2
r
1
1 +
hp
1
2
h
2
r
2
h
2
r
N2
h
2
r
N1
1
hp
N1
2
22