You are on page 1of 7

6.1.

Introduccin a los mtodos numricos o e e

En este cap tulo y en los anteriores estamos estudiado algunas tcnicas anal e ticas y geomtricas para buscar o comprender el comportamiento de las soluciones de una ecuacin e o diferencial de primer orden. En esta seccin vamos a discutir algunas tcnicas numricas. El o e e clculo numrico es una especialidad de la matemtica cuyo objetivo es formular los problea e a mas matemticos de tal forma que puedan resolverse mediante operaciones aritmticas. Hay a e muchos tipos de mtodos numricos pero todos ellos comparten una caracter e e stica comn: u conllevan la realizacin de un gran nmero de clculos aritmticos. Con la extensin del uso o u a e o de los ordenadores y siendo, como son, cada vez ms potentes es imprescindible en cualquier a disciplina en la que haya presencia de matemticas la consideracin de la vertiente numrica. a o e En el caso de las ecuaciones diferenciales y en el de los problemas en los que stas estn pree a sentes, el clculo numrico es, si cabe, ms importante. Ello es debido, entre otras cosas y a e a como ya hemos dicho, a que muy pocas ecuaciones diferenciales se pueden resolver mediante tcnicas anal e ticas y a que las tcnicas cualitativas son utiles para saber cmo evolucionan e o
ww w.

at

em

at

ic

a1

.c o

las soluciones a largo plazo, pero nos proporcionan poca informacin sobre el valor de una o solucin en un punto concreto. Los mtodos numricos para resolver ecuaciones diferenciales o e e tienen por objetivo conocer de forma aproximada el valor de la solucin de una ecuacin o o diferencial dada y, debido a la generalizacin del uso de los ordenadores y a la aparicin de o o muchos paquetes de programacin muy ecientes que automatizan en gran medida el proceso o de obtencin de soluciones numricas, son los ms utilizados en las ciencias aplicadas y la o e a ingenier An cuando hay procedimientos anal a. u ticos y cualitativos relativamente simples se acrecienta la tentacin de dejar que el ordenador lo haga. o No hay nada malo en este modo de proceder siempre que se tengan presentes dos puntos importantes. Primero, los ordenadores son muy buenos haciendo operaciones y haciendo grcas, pero no realizan ninguna interpretacin. Corresponde al ser humano entender el a o signicado de los datos que aporta la mquina e interpretarlos. Y en segundo lugar, los a mtodos numricos siempre proporcionan soluciones aproximadas. No hay nada malo en ello, e e tambin nosostros hacemos la mayor de los clculos de forma aproximada. El problema e a a est en que los errores que son inherentes al clculo numrico, por lo general, se incrementan a a e cuanto ms nos alejamos del valor inicial. Estos pueden no ser signicativos para algunas a ecuaciones, pero en otras pueden ser catastrcos. En denitiva, no debemos utilizar los o programas prediseados para resolver ecuaciones como si fueran cajas negras en las que se n mete la ecuacin y sale la solucin. Esta forma de actuar no slo no es cient o o o ca sino que nos puede dar ms de un disgusto. Debemos poseer un cierto conocimiento de lo que sucede a ah dentro. El objetivo de esta seccin es discutir el mtodo numrico ms elemental: el o e e a mtodo de Euler. e

Por los teoremas de existencia y unicidad, para que este problema tenga solucin unica, o f supondremos que f y x son funciones continuas en un rectngulo R = {(t, x) | a < t < a b, c < x < d} que contiene al punto (t0 , x0 ). Estas hiptesis garantizan que existe un > 0 o tal que el problema (6.1) tiene una unica solucin en el intervalo t0 < t < t0 + ; o pero no sabemos lo grande o pequeo que es . En lo que sigue supondremos que es lo n sucientemente grande como para incluir el intervalo de integracin donde se quieren calcular o las soluciones de forma aproximada.

6.2.

El mtodo de Euler e

El mtodo de Euler se basa en la idea de aproximar la curva solucin de la ecuacin e o o diferencial por una poligonal (sucesin de pequeos segmentos pegado cada uno al siguiente) o n que se construye partiendo de la misma idea que nos llev a la consideracin de los campos o o

ww

w.

at

x = f (t, x),

em

Consideremos entonces el siguiente problema de condicin inicial: o x(t0 ) = x0 . (6.1)

at

ic

a1

.c

om

de pendientes: si x (t1 ) = f (t1 , x(t1 )) entontes x (t1 ) es la pendiente de la recta tangente a la curva solucin en el punto (t1 , x(t1 )). Con esta idea en mente y partiendo del punto o (t0 , x0 ), que es el dato inicial del problema (6.1), podemos calcular la recta tangente a la curva solucin en el punto (t0 , x0 ). Esta tiene por ecuacin: o o x x0 = f (t0 , x0 )(t t0 ). Si t1 est muy prximo a t0 entonces el valor de la recta tangente en t1 y el de la curva a o solucin en dicho punto sern muy parecidos. Sea x1 el valor de la recta tangente en el punto o a t1 ; es decir, x1 = x0 + f (t0 , x0 )(t t0 ), y tomemos este valor como el valor verdadero de la curva solucin en t1 . Constru o mos la recta tangente a la curva en (t1 , x1 ): x x1 = f (t1 , x1 )(t t1 ). Hemos escrito recta tangente a la curva porque en realidad no se trata de la recta tangente sino de una aproximacin. En efecto, el punto (t1 , x1 ) est cerca de la curva (suponiendo que o a t1 est muy cerca de t0 ) pero seguramente no es un punto de la curva (vase la Figura 6.1). a e
(t3,x3) (t ,x )
2 2

(t4,x4)

A partir del punto (t1 , x1 ) obtenemos el punto (t2 , x2 ) de la misma forma: tomamos un punto t2 muy prximo a t1 y calculamos el valor x2 = x1 + f (t1 , x1 )(t2 t1 ) que es el valor, en o t2 , de la recta que pasa por (t1 , x1 ) con pendiente f (t1 , x1 ). A continuacin actuamos como o si el punto (t2 , x2 ) estuviera en la curva solucin y calculamos la recta tangente a la curva o en dicho punto, y as sucesivamente (Figura 6.1). Este procedimiento nos permite construir una poligonal que, aparentemente, estar tanto a ms cerca de la solucin cuanto ms prximos estn entre s los puntos t0 , t1 , t2 , etc. a o a o e En la prctica suele suceder que se conoce de antemano el intervalo (a, b) donde se a quiere calcular la solucin y t0 (a, b). Tambin es habitual que se quiera conocer, de o e forma aproximada, cmo evoluciona la curva en un tiempo futuro; es decir, para t > t0 . o

ww

(t ,x )
0 0

w.

at

em

at

(t1,x1)

ic

a1

Figura 6.1: La grca de una solucin y a o su aproximacin obtenida por el o mtodo de Euler. e

.c

om

Esta ser nuestra suposicin aunque todo lo que digamos vale para conocer, siempre de a o forma aproximada, la curva solucin del problema de condicin inicial para t < t0 . As pues, o o supondremos que t0 = a y que en el intervalo (a, b) existe una unica solucin del problema o de condicin inicial. Finalmente, los puntos t1 , t2 , . . . sobre los que se aplica el mtodo de o e Euler se escogen igualmente espaciados en el intervalo (a, b). En consecuencia, se divide el intervalo en, digamos, N subintervalos de longitud h: ba N y se toma t1 = t0 + h, t2 = t1 + h = t0 + 2h, t3 = t2 + h = t0 + 3h, . . . , tN = tN 1 + h = t0 + N h = a + b a = b. Al valor N se le llama nmero de pasos y a h el tamao de paso del u n mtodo de Euler. Cuanto ms pequeo es el tamao de paso ms prximos entre s estn los e a n n a o a puntos t0 , t1 , t2 , etc. y parece plausible que ms prxima estar la poligonal que obtenemos a o a con el mtodo de Euler de la curva solucin. e o h= Una vez que ya tenemos los valores de t0 , t1 , . . . , tN debemos calcular los valores de x0 , x1 ,. . . , xN . En realidad, como estamos considerando el problema de condicin inicial o x = f (t, x), x(t0 ) = x0 . El valor de x0 ya lo conocemos. Calculamos x1 , x2 ,. . . xN por el mtodo de Euler: e x x0 = f (t0 , x0 )(t t0 ) x x1 = f (t1 , x1 )(t t1 ) . . . x1 = x0 + f (t0 , x0 )(t1 t0 ) = x0 + f (t0 , x0 )h x2 = x1 + f (t1 , x1 )(t2 t1 ) = x1 + f (t1 , x1 )h . . . . . .

ww

w.

Podemos resumir el mtodo de Euler en el siguiente esquema o algoritmo e

at

Una vez obtenidos los puntos x1 , x2 , . . . , xN la poligonal que se aproxima a la curva solucin o se obtiene uniendo los puntos (t0 , x0 ), (t1 , x1 ), (t2 , x2 ),. . . ,(tN , xN ).

em

Mtodo de Euler para el problema e

Dado el intervalo de integracin (a, b) y el nmero de pasos N , calclese el tamao de o u u n ba . Entonces, sucesivamente para k = 1, . . . , N : paso h = N 1.- Calclese f (tk1 , xk1 ). (Ntese que para k = 1, (tk1 , xk1 ) = (t0 , x0 ) son valores u o conocidos). 2.- Calclese tk = tk1 + h = t0 + kh. u 3.- Calclese xk = xk1 + f (tk1 , xk1 )h u

at
dx dt

x xN 1 = f (tN 1 , xN 1 )(t tN 1 ) xN = xN 1 + f (tN 1 , xN 1 )(tN tN 1 ) = = xN 1 + f (tN 1 , xN 1 )h

ic

= f (t, x), x(t0 ) = x0

a1

.c

om

k 0 1 2 3 4

tk 0 1/2 1 3/2 2
dx dt

xk 1 1 1/2 1/4 5/32

f (tk , xk ) 0 -1 -1/2 -3/16

Tabla 6.1: Mtodo de Euler para e

= 2tx2 , x(0) = 1 con h = 0,5

Estos datos se pueden poner en una tabla tal y como se muestra en el siguiente ejemplo. Ejemplo 6.1 .- Consideremos el problema de condicin inicial o dx = 2tx2 , dt x(0) = 1.

x
1

0.5

Figura 6.2:
o Graca de la solucin del problema de condicin inicial o dx = 2tx2 , dt x(0) = 1

ww

w.

0.5

1.5

Vamos a utilizar el mtodo de Euler para aproe ximar esta solucin en el intervalo 0 t 2. Para o poder hacer los clculos a mano, o con ayuda de a una calculadora, vamos a tomar 4 pasos, N = 4. Por lo tanto 20 ba = = 0,5, h= N 4 el tamao de paso es 0,5. Entonces t0 = 0, t1 = 0,5, n t2 = 1, t3 = 1,5, t4 = 2. Adems a x0 x1 x2 x3 x4 =1 = x0 + f (t0 , x0 )h = 1 + f (0, 1)0,5 = 1 = x1 + f (t1 , x1 )h = 1 + f (0,5, 1)0,5 = 1/2 = x2 + f (t2 , x2 )h = 0,5 + f (1, 0,5) = 1/4 = x3 + f (t3 , x3 )h = 0,25 + f (1,5, 0,25)0,5 = 5/32

Es conveniente poner estos datos en una tabla (Tabla 6.1). Para dibujar la poligonal que se aproxima a la curva solucin en el intervalo (0, 2) slo tenemos que unir los puntos (t0 , x0 ), o o (t1 , x1 ),(t2 , x2 ), (t3 , x3 ) y (t4 , x4 ) (Figura 6.2).

y la aproximacin producida por el o mtodo de Euler con un tamao de paso e n h = 0,5.

at

em

at

ic

a1

La funcin f (t, x) = 2tx2 es continua con sus o derivadas parciales de cualquier orden respecto de la variable x son continuas. Los teoremas de existencia y unicidad nos permiten asegurar que en las proximidades de t0 existe una solucin unica. o

.c

om

Con un tamao de paso tan grande como h = 0,5 no podemos esperar resultados especn taculares. Debemos reducir el tamao de paso si queremos una mejor aproximacin. Claro n o que entonces el nmero de operaciones a realizar es mucho mayor. Por ejemplo, si escogemos u h = 0,1 entonces el nmero de pasos es N = 20 y es ste el nmero de operaciones a reau e u lizar para calcular los valores de xk . Si reducimos ms an el tamao de paso, por ejemplo a u n h = 0,001, el nmero de pasos aumenta proporcionalmente, en este caso N = 2000. Hacer u esto a mano lleva mucho tiempo, an cuando se disponga de una calculadora. Pero el ms u a simple de los ordenadores nos realiza estos clculos en unas pocas dcimas de segundo. Las a e Tablas 6.2 6.3 nos dan los resultados que se han obtenido, con seis cifras decimales, utilizando el programa MATLAB. Comparando las tres Tablas vemos que los valores aproximados para k 0 1 2 3 4 . . . 19 20 tk 0 0.1 0.2 0.3 0.4 . . . 1.9 2 xk 1 1.000000 0.980000 0.941584 0.888389 . . . k 0 1 2 3 4 . . . tk 0 0.001 0.002 0.003 0.004 . . . 1.999 2 xk 1. 1.000000 0.999998 0.999994 0.999988 . . . 0.200097 0.199937
dx dt

la solucin, x(t), del problema de condicin inicial dx = 2tx2 , x(0) = 1 en el punto t = 2 o o dt son distintos segn sea el tamao de paso que utilicemos. Tal y como venimos diciendo, la u n intuicin nos dice que cuanto ms pequeo es el tamao de paso ms prximosde la solucin o a n n a o o verdadera estaremos. Par este problema concreto lo podemos comprobar porque al tratarse de unaecuacin variables separables la podemos integrar sin ninguna dicultad. La solucin o o anal tica es: 1 . x(t) = 2 t +1 1 y x(2) = = 0,2. El valor obtenido con h = 0,5 es 5/32 = 0,15625, el obtenido con h = 0,1 es 5 0,193342 y el obtenido con h = 0,001 es 0,199937. Vemos que, en efecto, cuanto ms pequeo a n es el tamao de paso mayor es la exactitud de la aproximacin o, si se quiere, menor es el n o error que se comete en la aproximacin.. La cuestin que surge de forma natural es si hay o o alguna relacin entre el tamao de paso h y este error. Si denotamos por eh el error que o n se comete en la aproximacin cuando el tamao de paso es h, de los resultados obtenidos, o n vemos que e0,5 = 0,2 0,15625 = 0,04375 e0,1 = 0,2 0,193342 = 0,006658 e0,001 = 0,2 0,199937 = 0,000063.

ww

w.

at

em

at

ic

Tabla 6.2: Mtodo de Euler para e 2tx2 , x(0) = 1 con h = 0,1

dx dt

a1

.c

om

0.210119 0.193342

1999 2000

Tabla 6.3: Mtodo de Euler para e 2tx2 , x(0) = 1 con h = 0,001

En general podemos denir el error en la aproximacin para tN como (recordemos que o ba siendo (a, b) el intervalo de integracin): h= o N eh = |x(tN ) xN | donde x(tN ) es el valor de la solucin del problema de condicin inicial dado en tN y xN es o o el valor obtenido por el mtodo de Euler. El valor absoluto se utiliza para que el error sea e siempre positivo.
10
1

a1

h 0.1 0.05 0.025 0.0125 0.00625 0.003125 0.0015625 0.00078125 0.000390625 0.0001953125

eh 0.026320 0.012547 0.006126 0.003027 0.001505 0.000750 0.000374 0.000187 0.000094 0.000047

10

Error

10

10

om

.c

10

10

Si queremos tener una idea ms precisa de la relacin que existe entre h y eh debemos a o obtener los resultados de aplicar el mtodo de Euler para varios valores de h y compararlos e con el valor verdadero. Esto se puede hacer fcilmente con ayuda de, por ejemplo, MATLAB. a La Tabla 6.4 muestra los valores de eh para diez valores de h, empezando por h = 0,1 y de forma que cada uno es la mitad del anterior. El error que se calcula se reere al mximo valor a de |x(tk ) xk | para k = 1, . . . , N (recordamos de nuevo que N depende h por la expresin o ba y se redondea a seis cifras decimales. En la columna eh se observa a simple N= h vista que cada valor es aproximadamente la mitad del anterior. En otras palabras, cuando h disminuye a la mitad tambin el error disminuye a la mitad. De la misma forma se podr e a comprobar que si h disminuye en un tercio lo mismo suceder con el error, etc.. Esto indica a que la relacin que existe entre el error, eh , y el tamao de paso, h, es aproximadamente o n lineal. La Figura 6.3 reeja este hecho. En ella se han dibujado los puntos de la Tabla 6.4 y se han unido con segmentos para comprobar que, en efecto, estn sobre una l a nea recta.

ww

w.

at

em

Tabla 6.4: Error en el mtodo de Euler e para la solucin de dx = 2tx2 , x(0) = o dt 1 para varios valores de h

Tamao de paso

10

10

10

ic

Figura 6.3: Anlisis del Error en el a mtodo de Euler. e

at

You might also like