Sei sulla pagina 1di 32

S

SEP

SNEST

DGEST

Instituto Tecnolgico de Toluca


Ingeniera Qumica
Mtodos Numricos
Trabajo de investigacin Unidad 6
Diferenciacin y Ecuaciones Diferenciales
Presentan:
Almanza Valverde Luis Daniel

Profesor:
Ing. Arturo Camargo Snchez

Metepec, Estado de Mxico a 03 de Junio de 2015

Mtodos de un paso

Los mtodos de un paso tienen por objetivo obtener una aproximacin de la solucin de un
problema bien planteado de valor inicial en cada punto de la malla, basndose en el resultado
obtenido para el punto anterior.
Mtodo de Euler
El mtodo de Euler rara vez se utiliza en la prctica para obtener la solucin aproximada de un
problema de valor inicial, pero se estudia por su simplicidad en la derivacin de la frmula y de la
determinacin del error. Los mtodos de orden superior utilizan las mismas tcnicas, pero el
lgebra que requieren es mucho ms complicada.
Con el mtodo de Euler se obtiene una solucin aproximada de un problema de valor inicial como
el que se muestra en la ecuacin (1), en un conjunto finito de puntos.

(1)

Para empezar, se determina la malla {t0, t1, ... , tN} de paso h, donde t0 = a y tN = b. En
estos puntos es donde se va a obtener la aproximacin de la solucin.
Para determinar la frmula del mtodo, se parte de un desarrollo de Taylor de la funcin
solucin y(t), alrededor de un punto de la malla, ti, suponiendo que la funcin y(t) posee
derivadas primera y segunda continuas en (a, b):

(2)

Evaluando esta expresin en t = ti+1, para cualquier i, se tiene:

(3)

Pero como ti+1- ti = h, resulta:

(4)

Como y(t) satisface la ecuacin diferencial, en particular es y'(ti) = f(ti, yi), entonces
reemplazando en la frmula (4) resulta:

(5)

Si se elimina de la frmula anterior el trmino del error, se puede escribir:

(6)

Resultando as la frmula del mtodo de Euler para aproximar la solucin en un punto de


la malla, teniendo una aproximacin en el punto inmediato anterior. Como la condicin en
el punto a del problema de valor inicial da el valor inicial y(t0)=, se tiene entonces la
solucin aproximada en todos los puntos de la malla. Si se llaman yi = y(ti), se tiene
entonces la frmula de Euler dada en la frmula (7):

Ejemplo
Consideremos el siguiente problema de valor inicial.

La frmula de Euler para este problema, tomando N puntos en el intervalo [1, 2] (sin
contar el punto de partida a = 1), resulta:

(8)

Aplicamos el mtodo de Euler para un paso h = 0,2.


Teniendo en cuenta que h = 0,2, la cantidad de puntos en el intervalo resulta ser N = 5, y
entonces la tabla de valores obtenida con la frmula dada en (8) resulta:

0
1,
0
0

2,00
00

1,
2
0

2,40
00

1,
4
0

2,97
60

1,
6
0

3,80
93

1,
8
0

5,02
82

2,
0
0

6,83
84

Ahora, aplicamos la frmula el mtodo de Euler con N = 20 y N = 50. Representamos


grficamente los puntos obtenidos, comparndolos con la solucin exacta, dada por la
funcin

Se ve en los grficos obtenidos, que a medida que nos alejamos del valor inicial, la
solucin aproximada pierde precisin (se aleja de la solucin exacta), para el paso h =
1/20. Cuando se achica el paso, la solucin mejora (h = 1/50).
Anlisis del error
Al deducir la frmula de Euler para aproximar la solucin de un PVI tipo (1), al pasar de la
expresin (5) a la (6), se descart en la expresin el error, dado por
(9)

De esta frmula surge que el error local de truncamiento en el mtodo es O(h2).


Teniendo en cuenta que, por ser y'' continua,

(10)

Y tambin que h = (tN t0)/N, se tiene que despus de N pasos, el error global acumulado
es:

(11)

Por lo tanto, el error global en el mtodo de Euler es O(h).


El procedimiento anterior puede aplicarse a todos los mtodos estudiados. El orden del
error global resulta siempre uno menos que el orden del error local de truncamiento (el
error del clculo de yi+1 para un solo paso).

Mtodos de Taylor
Se presenta de nuevo el problema de valor inicial cuya solucin se intenta aproximar:

(1)

Como en el mtodo de Euler, se determina primero la malla {t0, t1, ... , tN} de paso h, donde
t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximacin de la solucin.
El mtodo de Euler se obtuvo aplicando el desarrollo de una funcin en polinomios de
Taylor con n = 1, para aproximar la solucin de la ecuacin diferencial del problema (1). El
error local de este mtodo, dado por el error de la frmula de Taylor, result O(h2),
llevando a un error global de O(h). Con el objeto de encontrar un mtodo que mejore las
propiedades de convergencia, se pueden utilizar, de la misma manera, polinomios de
Taylor de mayor grado.
Se supone que la solucin y(t) del problema de valor inicial (1) tiene (n+1) derivadas
continuas. Si se hace un desarrollo de Taylor de la funcin y(t) alrededor del punto ti se
tiene:

(2)

para algn nmero i entre ti y t. Si se evala la expresin (2) en t = ti+1, para cualquier i, y
como ti+1 - ti = h, se tiene, para i entre ti y ti+1

(3)

Como y satisface la ecuacin diferencial, en particular es y'(ti ) = f(ti,yi), y derivando


sucesivamente (teniendo en cuenta que y es funcin de t, por lo que se deber aplicar la
regla de la cadena), se tiene:

y''(ti ) = f'(ti, yi) = (ft 1 + fy y')i = (ft + fy f)i

y'''(ti ) = f''(ti, yi) = [ftt 1 + fty y' + fyt 1 + fy' f + fy f ']i = [ftt + fty f + (fyt 1 + fyy y')f + fy (ft +
fy f)]i
=

[ftt + 2fty f + fyy f 2 + fy ft + fy2 f)]i

y en general, y(n)(ti ) = f(n-1)(ti,yi) (utilizando la expresin corta)


Al sustituir estos resultados en la ecuacin (3), se obtiene:

(4)

La ecuacin dada por (4) se llama ecuacin de diferencias, y define el mtodo de Taylor
de orden n, que se obtiene suprimiendo el trmino de error que contiene el valor
desconocido i.
Por lo tanto, la frmula del mtodo de Taylor de orden n resulta:

(5)

Mtodo de Taylor de orden 1

Dado el PVI descripto por la expresin (1) tenemos que el mtodo de Taylor de orden 1,
tomando n = 1 en la frmula (5), resulta:

(6)

Vemos que el mtodo de Taylor de orden 1 resulta ser el mtodo de Euler.


El error local de este mtodo, que obviamente no se conoce, es 1/2 f''(
h2, por lo
2
tanto, es O(h ), mientras que el error global resulta ser O(h)
Mtodo de Taylor de orden 2
Segn la expresin (5) para n = 2, el mtodo de Taylor de orden 2 es:

(7)

Esta frmula tiene un error local de O(h3), y un error global de O(h2). Es ms precisa que
la frmula de Euler, pero requiere el clculo de la derivada de la funcin f(t, y).
Mtodo de Taylor de orden 4
Segn la expresin (5) para n = 4, el mtodo de Taylor de orden 4 es:

Esta frmula tiene un error local de O(h5), y un error global de O(h4). Su precisin es
mayor que las frmulas (6) y (7), pero tiene el inconveniente del clculo de hasta la tercer
derivada de f(t, y).

Ejemplo

Sea el problema de valor inicial

A continuacin, se aplican las frmulas de los mtodos de Euler, Taylor de orden 2 y 4 al


problema de valor inicial, y se comparan los errores, teniendo en cuenta la solucin
exacta, que en este caso se puede calcular.
Para obtener las frmulas (7) y (8), se necesita calcular, aplicando la regla de la
cadena, las derivadas de orden 1, 2 y 3 de la funcin f(t, y) = t y:
f '(t, y(t)) = y + t y' = y + t (t y) = y(1 + t2)
f ''(t, y(t)) = y'(1 + t2) + y 2 t = t y (1 + t2) + 2 t y = (3 t + t3) y
f '''(t, y(t)) = (3 + 3 t2) y + (3 t + t3) y' = (3 + 3 t2) y + (3 t + t3) t y = (3+ 6 t2 + t4) y
Reemplazando en (5), la frmula iterativa para el mtodo de Euler resulta:

(9)

Segn la frmula (6), reemplazando las derivadas correspondientes se obtiene la frmula


del mtodo de Taylor de orden 2:

(10)

Por ltimo, reemplazando las derivadas en la frmula (7), resulta la frmula del mtodo de
Taylor de orden 4:

(11)

Con el valor de h = 0,25 se obtuvieron los valores que se muestran en la tabla, para los
mtodos de Euler y de Taylor de orden 2 y 4, segn las frmulas (10) y (11), y los errores
absolutos de todos los mtodos, respecto de la solucin exacta, que en este caso se
puede calcular en forma analtica, mediante separacin de variables.

t
0,00
0,25
0,50
0,75
1,00
1,25
1,50
1,75
2,00

Error
Euler
Euler
Taylor 2
1,0000000 0,0000000 1,0000000
0
0
0
1,0000000 0,0317434 1,0312500
0
07
00
0,0706484 1,1299438
1,0625000
53
48
0,1294722 1,3153252
1,1953125
59
60
1,4194335 0,2292876 1,6261736
9
77
13
1,7742919 0,4099088 2,1343528
9
19
67
2,3287582 0,7514586 2,9722531
4
09
13
3,2020425 1,4219105 4,3887174
8
73
87
4,6029362 2,7861198 6,8659427
7,3890561
1
91
88
exacta
1,0000000
0
1,0317434
1
1,1331484
5
1,3247847
6
1,6487212
7
2,1842008
1
3,0802168
5
4,6239531
5

Error
Taylor 2
0,00000000
0,00049340
7
0,00320460
5
0,00945949
9
0,02254765
8
0,04984794
4
0,10796373
6
0,23523566
5
0,52311331
1

Taylor 4

Error Taylor
4

1,00000000

0,00000000

1,031738281 5,1265E-06
1,133103361 4,50921E-05
1,324639601 0,000145158
1,648348707 0,000372564
2,183310836 0,000889975
3,078122306 0,002094543
4,618968259 0,004984894
7,376895196 0,012160903

En el siguiente grfico se pueden ver las soluciones obtenidas con los distintos mtodos,
y la proximidad a la solucin exacta de cada una de ellas.

Mtodos de Runge Kutta


Los mtodos de Taylor tienen la propiedad de un error local de truncamiento de orden
superior, pero la desventaja de requerir el clculo y la evaluacin de las derivadas de f(t,
y). Esto resulta algo lento y complicado, en la mayora de los problemas, razn por la cual,
en la prctica casi no se utilizan. El mtodo de Euler, lamentablemente requiere de un
paso muy pequeo para una precisin razonable.
Los mtodos de Runge kutta tienen el error local de truncamiento del mismo orden que
los mtodos de Taylor, pero prescinden del clculo y evaluacin de las derivadas de la
funcin f(t, y).
Se presenta de nuevo el problema de valor inicial cuya solucin se intenta aproximar:

(1)

Como en los mtodos anteriores, se determina primero la malla {t0, t1, ... , tN} de paso h,
donde t0 = a y tN = b. En estos puntos es donde se va a obtener la aproximacin de la
solucin.
En esencia, los mtodos de Runge-Kutta son generalizaciones de la frmula bsica de
Euler yi+1 = yi + h f(ti, yi) en los que el valor de la funcin f se reemplaza por un promedio
ponderado de valores de f en el intervalo ti t ti+1, es decir,

(2)

En esta expresin las ponderaciones wi, i = 1, ..., m son constantes para las que en
general se pide que su suma sea igual a 1, es decir, w1 + w2 + ... + wm = 1, y cada kj es la
funcin f evaluada en un punto seleccionado (t, y) para el cual ti t ti+1. Se mostrar que
los kj se definen en forma recursiva.
Se define como orden del mtodo al nmero m, es decir, a la cantidad de trminos que
se usan en el promedio ponderado.
Runge-Kutta de primer orden
Si m = 1, entonces se toma w1 = 1 y la frmula (2) resulta

(3)

Igualando esta frmula al desarrollo de Taylor de orden 1 de la funcin y(t), alrededor del
punto ti, y calculado en el punto ti+1:

(4)

y teniendo en cuenta que yi y(ti), resulta k1= f(ti, yi), obteniendo as la frmula de Euler
yi+1 = yi + h f(ti, yi). Por lo tanto, se dice tambin que el mtodo de Euler es un mtodo de
Runge Kutta de primer orden.
Runge-Kutta de segundo orden
Ahora se plantea, con m = 2, una frmula del tipo:

(5)

donde

(6)

y las constantes a, b, , se deben determinar, de manera que la expresin (5) coincida


con el desarrollo de Taylor de y de orden ms alto posible.
Para ello, utilizando un desarrollo de Taylor para funciones de dos variables, tenemos que:

(7)

donde el subndice i indica que todas las derivadas estn evaluadas en el punto (ti, yi).
Reemplazando k1 y teniendo en cuenta la expresin de k2, usando (7) tenemos que:

(8
)

agrupando los trminos de (8) por las potencias de h, y reemplazando en la expresin (5)
el valor de k1 y k2, resulta

(9
)

Reacomodando trminos en (9), resulta:

(10
)

Por otro lado, se hace un desarrollo de Taylor de orden 3 de la funcin y(t), calculado en el
punto ti+1, obteniendo:

(11)

Aplicando regla de la cadena para las derivadas de f, se tiene:

(12)

Comparando las expresiones (10) y (12), e igualando los coeficientes de h y h2, se tiene:

(13)

Sucede que se tienen cuatro incgnitas, pero tres ecuaciones, con lo que queda un grado
de libertad en la solucin del sistema dado en (13). Se trata de usar este grado de libertad
para hacer que los coeficientes de h3 en las expresiones (10) y (12) coincidan. Esto
obviamente no se logra para cualquier f.
Hay muchas soluciones para el sistema (13), una de ellas es

(14)

obteniendo as la siguiente frmula, del mtodo de Runge Kutta de orden 2:

(15)

para i desde 0 hasta N-1, tomando un mallado {ti, i = 0, .., N}


Este mtodo tiene un error local de O(h3), y global de O(h2).
Mejora entonces el mtodo de Euler, por lo que se espera poder usar con este mtodo un
paso mayor. El precio que debe pagarse en este caso, es el de evaluar dos veces la
funcin en cada iteracin.
De la misma manera que se realiz arriba, se pueden derivar frmulas de Runge-Kutta de
cualquier orden, pero estas deducciones resultan excesivamente complicadas. Una de las
ms populares, y ms utilizada por su alta precisin, es la de orden 4, que se presenta a
continuacin.
Runge-Kutta de cuarto orden
Si ahora m = 4, se obtiene, con un desarrollo del tipo del anterior, la siguiente frmula,
para i desde 0 hasta N-1:

(16)

Ejemplo
Con el mtodo RK4, obtener una aproximacin del valor de y(1,5) para el siguiente
problema de valor inicial, tomando un paso h = 0,1.

El primer paso para resolver este problema es determinar la malla de puntos en donde se
va a obtener la solucin.
Como en este caso h est dado, se tiene que N = (1,5 - 1)/0,1 = 5.
Por lo tanto, los puntos en donde se va a determinar la solucin, dados por la frmula ti =
1 + 0,1 i, para i =1,2,3,4,5, son:
t1 = 1,1
t2 = 1,2
t3 = 1,3
t4 = 1,4
t5 = 1,5
Una vez establecida la malla del problema, tenemos, para i = 0:

Resulta entonces,

y aplicando sucesivamente la frmula de RK4, para i desde 1 hasta 4, se obtienen los


datos que se muestran en la siguiente tabla, donde adems se muestra el valor de la
solucin exacta para cada punto de la malla.

6.3. Mtodos rgidos y de pasos mltiples


Ecuaciones rgidas
La rigidez es un problema especial que puede surgir en la solucin de ecuaciones
diferenciales ordinarias. Un sistema rgido es uno que tiene componentes que cambian
rpidamente, junto con componentes de cambio lento. En muchos casos, los
componentes de variacin rpida son transitorios, desaparecen rpidamente, despus de
lo cual los componentes de variacin lenta son los que dominan la solucin. Pero, aunque
el fenmeno transitorio existe en slo un perodo pequeo, puede determinar el paso del
tiempo en la aplicacin de un mtodo numrico.
Las ecuaciones rgidas son aquellas cuyas soluciones contienen escalas
significativamente diferentes para la variable independiente. Cuando la escala ms grande
es la de inters, pero la escala ms pequea dicta el tamao de paso de un mtodo con
base en la estabilidad, se dice que la ecuacin es rgida.
Tanto las EDO como los sistemas de EDO pueden ser rgidos. Por ejemplo, una EDO
rgida es la que se muestra a continuacin:

(1)

Si se considera la condicin inicial y(0) = 0, la solucin analtica que se obtiene est dada
por:

(2)

La solucin, al principio, se encuentra dominada por el trmino exponencial rpido e-1000t,


despus de un perodo muy corto (t < 0,005), esta parte transitoria termina y la solucin se
rige por el exponencial lento e-t.
Analizando la parte homognea de la ecuacin (1), se puede determinar el tamao de
paso necesario para que la solucin sea estable. Sea entonces la ecuacin homognea

(3)

Con la condicin y(0) = y0, se obtiene la solucin que se muestra en (4), que
asintticamente se aproxima a cero, comenzando en el valor y0.

(4)

Si se aplica el mtodo de Euler a la ecuacin (3), se obtiene la frmula

(5)

que, trabajada algebraicamente, queda:

(6)

por lo que podemos decir que yi = y0(1-ah)i. Para que esta solucin numrica sea acotada,
deber ser |1-ah| 1. De aqu surge que si h > 2/a, entonces |yi| crece indefinidamente
cuando i tiende a infinito.
Por lo tanto, en la solucin numrica de (1) mediante el mtodo de Euler, para mantener
la estabilidad, se debe tomar h 2/1000 = 0,002. Con este valor se logra estabilidad, pero
para lograr precisin en la solucin, se debera tomar un valor ms chico de h. Si el
intervalo en donde se busca la solucin es grande, es claro que esta cota del paso
implicar una gran cantidad de iteraciones.

La familia de los mtodos multipasos de Gear se adapta particularmente bien para brindar
una solucin numrica de sistemas de EDO rgidos. Veamos cmo se deducen las
frmulas de estos mtodos.
6.4. Mtodos multipaso
Mtodos de Gear
Recordemos que la frmula general de los mtodos multipasos est dada por:

(7)

y tambin, que esta frmula da el valor exacto para y(tn+1) cuando y(t) es un polinomio de
grado menor o igual a k si se cumplen las siguientes restricciones de exactitud (tambin
llamadas restricciones de consistencia):

(8)

La familia de los mtodos multipasos de Gear est identificada por tener todos los
coeficientes bi, excepto b-1, nulos; en oposicin a los mtodos de Adams que tienen todos
los coeficientes ai nulos, excepto a0. Obviamente, dado que b-1 0, los mtodos de Gear
son mtodos implcitos.
El mtodo de Gear de orden k se obtiene haciendo p = k-1, y b0 = b1 = b2 = ... = 0,
conduciendo a la frmula:

(9)

Los k+1 coeficientes de esta frmula pueden obtenerse aplicando las restricciones de
consistencia (8), anlogamente como se hizo con los mtodos de Adams, resultando:

(10)

Explicitando las ecuaciones para cada j, y desarrollando las sumatorias, se obtiene el


siguiente sistema de ecuaciones:

(11)

La solucin del sistema (11) determina en forma nica los k+1 coeficientes necesarios
para el mtodo de Gear de orden k.
Por ejemplo, la frmula del mtodo de Gear de tercer orden, se obtiene resolviendo el
sistema dado en (11), para el valor k = 3:

(12)

Resolviendo el sistema dado en (12), se obtienen los valores: b-1 = 6/11, a0 = 18/11, a1 =
-9/11 y a2 = 2/11, resultando entonces la frmula del mtodo:

(13)

Cuando se implementa este algoritmo, se deben guardar en memoria los valores wn-2, wn1 y wn, y se debe resolver la ecuacin (13) con algn mtodo iterativo, si la funcin f(y, t)
es no lineal.

Sistemas de ecuaciones diferenciales ordinarias


Que son las ecuaciones diferenciales ordinarias (EDO)?
Las ecuaciones diferenciales son igualdades en las que se ven involucradas derivadas,
recordemos que la derivada expresa el cambio en la variable dependiente cuando cambia
la variable independiente (dy/dx). Usualmente las ecuaciones diferenciales se expresan
de la siguiente manera.
(dy/dx) = f(x,y)
Por lo que al estar escrito de esta manera es fcil identificar que esta expresin nos
muestra una funcin de cmo cambia y, cuando cambia x
Euler

El mtodo de Euler se utiliza para la resolucin de un caso particular de EDO que se


llaman problemas de valor inicial, en los cuales tenemos como datos le EDO que
queremos resolver expresada como (dy/dx) = f(x,y) y un valor inicial (xo,yo), es decir
sabemos cunto vale y cundo x vale xo y cmo cambia y cuando cambia x (la pendiente
(dy/dx)) y queremos encontrar cunto vale y en para otros valores de x. ya que sabemos
una pendiente y un punto podemos determinar la ecuacin definida por esa condiciones
y=m(x-xi)+yi
Ya que m=(dy/dx) = f(x,y) y definimos h= (x-xi) sustituyendo podemos expresar la ecuacin
de la recta de la siguiente manera
yi+1=yi+f(xi,yi)*h xi+1=xi+h
De esta expresin se le conoce como mtodo de Euler.

Heun
El metodo de Heun calcula la pendiente en un punto inicial (xi,yi)
m=k1=f (xi,yi)
y con el estima un nuevo punto;
(xi+h , yi+k1h)

Con este punto calcula una nueva pendiente


m=k2=f (xi+h , yi+k1h)
y con esta dos pendiente calcula el yi+1
yi+1=yi+(k1+k2)*h/2
Ejemplo
(dy/dx)=yx2-1.1y
donde y(0)=1
para x=[0,1]
Con un h=0.25 y realiza nuevamente tus calculos pero con h=0.05
h=
0.25
xi

yi

k1

xi+h

yi+k1h

k2

0
0.25
0.5
0.75
1

1
0.7685
0.6083
0.5115
0.4716

-1.1
-0.7972944
-0.5170909
-0.2749411

0.25
0.5
0.75
1

0.725
0.56915295
0.47906953
0.44278312

-0.7521875
-0.48378
-0.2574999
-0.0442783

h=

0.1

xi

yi

k1

xi+h

yi+k1h

k2

0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

1
0.8965
0.8053
0.7263
0.6589
0.6026
0.5566
0.5202
0.4931
0.4750
0.4658

-1.1
-0.9771796
-0.8536189
-0.7335256
-0.6193659
-0.5121766
-0.4118486
-0.317347
-0.2268435
-0.1377425

0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

0.89
0.79877705
0.71993895
0.65291042
0.59696332
0.55134301
0.51536729
0.48850632
0.47045367
0.46120002

-0.9701
-0.8467037
-0.7271383
-0.6137358
-0.5074188
-0.4079938
-0.314374
-0.2247129
-0.1364316
-0.04612

Yi+1=
yi+(k1+k2)*h/2
0.76847656
0.60834226
0.51151841
0.47161598

Yi+1=
yi+(k1+k2)*h/2
0.896495
0.80530084
0.72626298
0.65889991
0.60256067
0.55655215
0.52024102
0.49313802
0.47497427
0.46578114

Grafica que compara la solucion analitica con la obtenida por el metodod con h=0.25 u
h=0.05.

Punto medio
El metodo de punto medio calcula la pendiente en un punto inicial (xi,yi)
m=k1=f (xi,yi)
y con el estima un nuevo punto localizado a la mitad de la distancia h;
(xi+0.5*h , yi+0.5*k1h)
Con este punto calcula una nueva pendiente
m=k2=f (xi+0.5*h , yi+0.5*k1h)
y con esta nueva pendiente calcula el yi+1
yi+1=yi+(k2)*h
Ejemplo
(dy/dx)=yx^2-1.1y
donde y(0)=1
para x=[0,1]
Con un h=0.25 y realiza nuevamente tus calculos pero con h=0.05
h=
0.25
xi
yi
k1
Xi+0.5h
yi+0.5k1h
k2
Yi+1=k2*h
0
1
-1.1
0.125
0.862500 -0.9352734 0.76618164
0.25 0.76618164 -0.7949135
0.375
0.666817 -0.639728 0.60624964
0.5 0.60624964 -0.5153122
0.625
0.541836 -0.3843646 0.51015848
0.75 0.51015848 -0.2742102
0.875
0.475882 -0.1591231 0.4703777
1 0.4703777
h=

0.1

xi

yi
k1
xi+0.5h
yi+0.5k1h
k2
Yi+1=k2*h
0
1
-1.1
0.05
0.945 -1.0371375 0.89628625
0.1
0.8963 -0.976952
0.15 0.84743865 -0.9131151 0.80497474
0.2
0.8050 -0.8532732
0.25 0.76231107 -0.7908977 0.72588496
0.3
0.7259 -0.7331438
0.35 0.68922777 -0.6737201 0.65851295
0.4
0.6585 -0.6190022
0.45 0.62756284 -0.5632376 0.60218918
0.5
0.6022 -0.5118608
0.55 0.57659614 -0.4598354 0.55620564
0.6
0.5562 -0.4115922
0.65 0.53562603 -0.3628866 0.51991698
0.7
0.5199 -0.3171494
0.75 0.50405951 -0.270932 0.49282378
0.8
0.4928 -0.2266989
0.85 0.48148883 -0.181762 0.47464757
0.9
0.4746 -0.1376478
0.95 0.46776518 -0.0923836 0.46540921
1
0.4654
Grafica que compara la solucion analitica con la obtenida por el metodod con h=0.25 u
h=0.05.

Runge-Kutta 4 orden
El metodo de Runge-Kutta 4 orden se calculan cuatro pendiente en los siguientes puntos.
m=k1=f (xi,yi)
m=k2=f (xi+0.5*h,yi+0.5*k1h)
m=k3=f (xi+0.5*h,yi+0.5*k2h)
m=k4=f (xi+h,yi+k3h)
y con estas cuatro pendientes se calcula el yi+1
yi+1=yi+(k1+2*k2+2*k3+k4)*h/6
Ejemplo
(dy/dx)=yx2-1.1y
donde y(0)=1
para x=[0,1]
Con un h=0.25 y realiza nuevamente tus calculos pero con h=0.05

Grafica con la solucin analtica y numrica.

Mtodos generales para problemas con valores en la frontera, lineales y no-lineales


Problemas de frontera
Los problemas fsicos que dependen

ms de la posicin que del tiempo, a


menudo se modelizan a partir de una o
ms ecuaciones diferenciales, con
condiciones impuestas sobre ms de un
punto. Es decir, estn modelizados
por problemas de frontera.
Vamos a estudiar aqu problemas de
frontera que involucran una ecuacin
diferencial ordinaria de segundo orden,
con condiciones de frontera de tipo
Dirichlet (es decir, el valor de la funcin
en los puntos extremos, o frontera del
intervalo), como se muestra en la
ecuacin (1)
(
1
)
El siguiente teorema garantiza la
existencia y unicidad de un problema
como el planteado en (1):
Teorema:
Supongamos que la funcin f en el
problema con valor en la frontera dado
por (1) es continua en el conjunto:
D = {(t, y, y') / a t b, -
y , - y' }
y que las derivadas primeras de f
respecto de las variables y e y' son
continuas en D. Si se cumplen las
condiciones:

Entonces el problema de valor en la


frontera tiene una solucin nica.
Corolario
Si el problema lineal con valor en la
frontera dado por:
(
2
)
satisface las condiciones:
i) p(t), q(t) y r(t) son continuas en [a, b]
ii) q(t) > 0 en [a, b]
entonces el problema tiene solucin
nica.
Hay dos grupos de mtodos que pueden
aplicarse para resolver en forma
numrica problemas de frontera. Uno de
ellos son los mtodos del disparo lineal,
que pueden utilizarse tanto en problemas
lineales y no lineales, pero a menudo
presentan problemas de inestabilidad.
Los mtodos de diferencias finitas
conforman el otro grupo; tienen mejores
caractersticas de estabilidad, pero
requieren un poco ms de trabajo para
llegar a la solucin con la exactitud
especificada.
Mtodo de diferencias finitas para
problemas lineales
Los mtodos de diferencias finitas para
la resolucin de problemas de valor en
la frontera reemplazan cada derivada
en la ecuacin diferencial por un
cociente de diferencias adecuado. Se
selecciona el cociente de diferencias
para mantener un orden especificado

del error de truncamiento. Por la


inestabilidad de las aproximaciones de
diferencias finitas a las derivadas, no se
puede escoger el parmetro h
demasiado pequeo.
En el problema de frontera dado en la
ecuacin (2), se deben aproximar
mediante cocientes de diferencias
finitas las derivadas primera y segunda.
Para ello, se elige un entero N > 0, y se
divide el intervalo [a, b] en (N+1)
subintervalos iguales, cuyos extremos
son los puntos de la malla ti = a + i h,
para i = 0, 1, ..., N+1, con h = (b-a)/
(N+1).
En cada punto interior de la malla ti (i =
1, ..., N) se deber aproximar la
ecuacin diferencial:
y
'
'
(
t
i

)
=
p
(
t
i

)
y
'
(
t
i

)
+
q

(
3
)

(
t
i

)
y
(
t
i

)
+
r
(
t
i

)
En la expresin dada en (3), se deben
aproximar los valores de y''(ti) e y'(ti),
mediante cocientes de diferencias
finitas.
Para aproximar la derivada segunda, se
hace un desarrollo de Taylor de y
alrededor de ti (se supone que y tiene
derivada cuarta continua en el intervalo
[ti-1, ti+1]):

(
4
)
Ahora se calcula este desarrollo en ti+1,
y teniendo en cuenta que ti+1 - ti = h,
resulta
(
5
)
y se calcula tambin (4) en ti-1;
teniendo en cuenta que ti-1 - ti = - h,
resulta

(
6
)
Sumando miembro a miembro (5) y (6),
se eliminan los trminos que tienen y' e
y''', resultando:
(
7
)
Aplicando el teorema del valor
intermedio, se puede reducir el trmino
del error, resultando:
(
8
)
Esta aproximacin de la derivada segunda dada en (8) es llamada frmula de las
diferencias centradas para y''(ti). Teniendo en cuenta la expresin del error en (8),
esta frmula tiene orden de precisin 2.
Anlogamente, haciendo un desarrollo de Taylor de orden 2 alrededor de ti,
evaluando este desarrollo en ti+1 y enti-1, y restndolos miembro a miembro, se obtiene
la siguiente frmula de aproximacin para la derivada primera, que tambin tiene
orden de precisin 2 :

(9)

La utilizacin de las frmulas de diferencias centradas (8) y (9) en la ecuacin


diferencial (3), genera la ecuacin

(10
)

que, reordenando trminos resulta:

(11)

Si llamamos wi a la aproximacin de y(ti), las condiciones de frontera y(a) = a e y(b)


= b, resultan

w0 = a wN+1 = b

(12)

y despreciando el error (dado que se usan las aproximaciones) se obtiene el mtodo


de diferencias finitas para la ecuacin (2), dado por la frmula

(13)

para cada i = 1, ..., N.


Si reacomodamos trminos en (13), de manera que cada incgnita wi aparezca una
sola vez en cada ecuacin, tenemos:

(14)

para cada i = 1, ..., N.


Esto resulta ser un sistema de N ecuaciones en las N incgnitas w1, ..., wN (dado
que w0 y wN+1 son datos) cuya matriz tiene forma tridiagonal, como se aprecia mejor en la

forma matricial A w = b, donde la matriz de coeficientes y el vector de trminos


independientes estn dados por:

(15)

Este sistema tiene solucin nica, cuando se cumplen las condiciones dadas en el
siguiente teorema:
Teorema:
Supongamos que p, q y r son funciones continuas en [a, b]. Si q(t) 0 en [a, b],
entonces el sistema tridiagonal dado en (15) tiene solucin nica siempre y
cuando h < 2/L, siendo L = max(|p(t)|, t [a, b] )
Las condiciones de este teorema garantizan solucin nica al problema de frontera dado
en (3), pero para asegurarnos que el error de truncamiento sea del orden de h2, debemos
asegurarnos que y(4) es continua en [a, b].

Potrebbero piacerti anche