Você está na página 1de 13

75.

12 ANLISIS NUMRICO I
Departamento de Computacin
FACULTAD DE INGENIERA

UNIVERSIDAD DE BUENOS AIRES


Primer cuatrimestre
2016
TRABAJO PRCTICO 2

Grupo 12:

Chiesa Docampo, German - 96994 -


german0695@hotmail.com

Mendez, Agustina - 98338

Vassolo, Juan Daniel - 97846 - juanv_6@hotmail.com

Irrazabal, Diego - 98125


Introduccin

En este trabajo se busca estudiar el comportamiento de distintos mtodos numricos en


la resolucin de un Problema de Valores Iniciales (P.V.I).
El problema fsico planteado es el de un circuito de tipo RLC, el cual incluye un
elemento resistivo que posee comportamiento no lineal. Ms precisamente, este
elemento es un par de diodos de efecto tnel.
Este problema lleva a una ecuacin diferencial de segundo orden, denominada
Ecuacin de Van der Pol (1926):

Se proceder a la resolucin de dicha ecuacin mediante el mtodo de Euler, Runge-


Kutta de orden 2 y 4, el mtodo de Nystrm, ode23 y ode45, con el objetivo de analizar
su comportamiento, comparando errores en los resultados, debidos a la consistencia de
los mtodos y a la estabilidad.

Conceptos tericos

Al estudiar un fenmeno fsico con frecuencia no es posible hallar de inmediato las


leyes que enlazan las magnitudes que caracterizan dicho fenmeno. Por el otro lado, es
ms sencillo establecer la dependencia entre dichas magnitudes con sus derivadas o
diferenciales. De esta forma obtenemos ecuaciones que contienen las funciones
desconocidas, bajo el signo de derivada o de diferencial. Estas ecuaciones se llaman
diferenciales. Al resolver dichas ecuaciones diferenciales, mediante diversos mtodos,
determinamos las relaciones entre las magnitudes implicadas.

En este trabajo prctico trabajaremos con ecuaciones diferenciales ordinarias, dado que
las funciones desconocidas son de una variable. Se denomina orden de la ecuacin
diferencial al orden de la derivada mxima de la funcin desconocida que figura en la
ecuacin. En este caso las ecuaciones son de orden 2. Por ltimo, llamamos solucin de
la ecuacin diferencial a toda funcin que al ser reemplazada en la misma la convierte
en una identidad.
Sea la ecuacin diferencial
dy
=f (x , y)
dx

Con f (x , y ) continua en el rectngulo D=( x 0a , x 0+ a)( y 0b , y 0+ b).

Tambin f (x , y ) satisface en D la siguiente condicin de Lpschitz:

Entonces existe una nica solucin de la ecuacin diferencial: y= y ( x ) definida

sobre
(x 0H , x 0 + H ) que satisface la condicin y ( x 0)= y 0 donde:

M =max |f (x , y )| con (x , y ) en D, {
H <min a ,
b 1
,
M N }
A un problema de este tipo, en donde la unicidad surge de fijar el valor de la incgnita
para el x inicial, se denomina Problema de valor Inicial (PVI). Este tipo de problemas
tienen solucin nica cuando f es continua en D y satisface la condicin de
Lipschitz en D en la variable y .

Mtodos de paso simple:


Dado un problema matemtico de la forma

{ y '=f (x , y )
y (x 0 )= y 0

cuyos datos de entrada son f (x , y ) y (x 0 , y 0 ) ;

Toda expresin de la forma:

constituye un mtodo de paso simple para aproximar numricamente a y ( x) .

Consistencia en mtodos de paso simple:

Teniendo definido un dominio D donde se cumplen las condiciones de existencia de la


solucin, tomando un (x,y) arbitrarios en Dy siendo z(t) la solucin exacta del PVI.
{z ' =f (t , z)
z (x )= y

Definimos ahora la funcin incremento para z(t):

{
z (x +h)z (x )
( x , y ; h ; f )= , si h 0
h
f (x , y ) , sih=0

Definamos ahora la diferencia

p( x , y ; h ; f )= ( x , y ; h ; f )( x , y ; z ( x+ h) ; f )

Decimos que el sistema es consistente de orden P, s y slo s


p
p( x , y ; h ; f )=O( h )

Metodos de paso simple

1) Mtodo de Euler:

u0= y 0 y ( xn ) un
Toma ; una vez que aproxim por , avanza sobre la tangente a
x ,u :
la solucin de la ecuacin diferencial que pasa por el punto ( n n )

un+ 1=un +hf (x n ,u n)

Esta es la ecuacin de diferencias asociada al mtodo de Euler. El mismo es explcito y


de rden 1. La idea de ste mtodo consiste en sustituir la curva integral buscada,
solucin de la ecuacin diferencial de primer orden por una quebrada constituida por
segmentos lineales, cada uno de los cuales es tangente a una curva integral de la
ecuacin diferencial:
En la prctica no obtendremos
una aproximacin continua a la solucin y (t) ; sino que se generarn aproximaciones

a esa solucin en varios valores, llamados puntos de red, en el intervalo [ a , b ] . Una


vez obtenida la aproximacin podemos obtener, por interpolacin, la solucin
aproximada en otros puntos del intervalo. Cuanto menor sea el "h" elegido mayor ser
la precisin del mtodo.

Primero, definimos que los puntos de red tienen una distribucin uniforme en todo el
intervalo. Esta condicin la garantizamos al seleccionar un enterio positivo N y los
puntos de red

t i =a+ih , para cada i=0,1,2,3. .. , N .

(ba)
La distancia comn entre puntos, o distancia de cada segmento, h= N recibe el

nombre de tamao de paso.


Por ltimo podemos decir que Euler es un mtodo consistente de orden 1.

= |h2 y ' ' (t )+O(h )| M h co n M = 12 max {| y ' ' ()|}


n
2 1

Mtodo de Runge-Kutta de rden 2:

x
u0= y 0 y ( n) por un , avanza sobre una recta
Toma ; una vez que aproxim

cuya pendiente es el promedio de las pendientes de las rectas tangenes a las soluciones
que pasan por lo puntos
Mtodo Runge Kutta rden 4 PAGINA 279, 280 MUY IMP:
x
u0= y 0 u
Toma ; una vez que aproximamos y ( n) por n , hacemos:

la solucin avanza sobre una recta cuya pendiente es el promedio pesado de las
pendientes de las rectas tangentes a las soluciones que pasan por los puntos:

Los mtodo utilizados en este T.P no producen una aproximacin continua a la solucin
del problema de valor inicial. Por el contrario, se obtienen las aproximaciones en
algunos puntos especficos y, a menudo, igualmente espaciados. Si se requieren valores
intermedios se debera utilizar un mtodo de interpolacin, que generalmente es el del
Hermite, cosa que no haremos.

Estabilidad de un mtodo de paso simple:

un
Como la cantidad de pasos para evaluar un cierto , con un error de discretizacin
razonable puede llegar a ser grande, nos interesa que una cierta perturbacin en un paso
no se propague al siguiente, creciendo de forma tal que no se pueda controlar con un
ajuste del valor de h.

Diremos que un Mtodo es estable, s y slo s existe una funcin de orden h, O(h),tal
que:
siendo (1+O(h)) el factor de amplificacin.

Para valores suficientemente chicos de h implica:

Entonces es claro que las propagaciones de los errores las maneja la funcin O(h) que
aparece en la definicin de estabilidad a travs del factor de amplificacin. La
condiciones ptimas se darn con un O(h) negativo, para ciertos valores de h, para que
el factor de amplificacin tenga mdulo menor o igual a 1.

Por el otro lado, si la funcin O(h) es positiva, tendremos que trabajar con valores de h
que la hagan muy pequea, y no podremos avanzar mucho en la solucin sin que los
errores propagados sean notables y arruinen el resultado.

Error local de truncamiento: mide la cantidad en que la solucin exacta de la


ecuacin diferencial no satisface la ecuacin de diferencias con que se obtiene la
aproximacin. Este error se basa en el tamao de paso, en la ecuacin diferencial y en el
paso particular de la aproximacin.

Anlisis de resultados:
Comparar formas de graficos luego de n ciclos. Unos quedan dentro de otros, otros por
fuera. USAR de referencia el mtodo ode 23 (RK 2) o el ode 45 (viene del RK orden 4).
Elegir uno de los dos a partir de un criterio justificado.
Comparar resultados finales a partir de tiempo final con cada mtodo. Donde n es el
mismo para todos. Determinar un N y un h (paso) a partir de un criterio propio. Con un
h menor (mas preciso) voy a tener que hacer muchas mas cuentas.

La ecuacin diferencial a resolver tienen orden mayor que uno. Para poder aplicar los
mtodo explicados anteriormente necesitamos "renombrar" las variables para reducir
una ecuacin diferencial de orden superior (dos) a un sistema de ecuaciones

{
u1 (t )=v (t )
diferenciales de orden uno. En nuestro caso si: u 2 ( t )=v ' ( t )

Entonces la ecuacin diferencial de segundo orden se transforma en:

{ u'1(t )=u2 ( t )
2
u 2 ' ( t ) (1u1 ( t ) ) u2 ( t ) + u1 ( t )=0

con u1 ( 0 )= y u2 ( 0 )=
Anlisis de resultados:

Realizamos todos los clculos con cada mtodo tomando un tiempo final comn a
todos.

t f =t 0 +n h=0+350 0,1

Justificacin de la eleccin de h y tf:

El tiempo final se eligi en base a las exigencias de la consigna. El mismo deba ser el
mismo para todos los mtodos para as facilitar la comparacin de los resultados que
nos brindaba cada uno. Por un lado, necesitbamos un mnimo de 3 perodos al menos
con cada mtodo. Por el otro, se consider que a medida que aumentaba el tiempo final,
(con un paso constante) aumentaba la cantidad de ciclos. Como ya lo explicamos antes,
con cada ciclo aumenta la fluctuacin del resultado de cada mtodo respecto del
resultado patrn (el obtenido por ode23). As concluimos que el mejor tiempo posible
sera 35.
En cuanto al paso consideramos que 0,1 sera una buena opcin. A medida que h tiende
a cero, el resultado ser cada vez ms preciso. Por esta razn debamos elegir el paso
ms pequeo posible. Sin embargo, al disminuir el paso aumentamos la cantidad de
ciclos y con ello el error en el resultado final. Por ello el paso no deba ser ni muy chico
ni muy grande. Adems al introducir pasos mayores a 0,12 en nuestro programa el
mtodo de RK2 no poda ser calculado dado que los datos obtenidos superaban el float
capacity" del software.

Qu mtodo utilizamos como referencia y por qu:


Definidos el paso y el tiempo final decidimos usar como referencia para comparar los
resultados el mtodo Ode23. Este mtodo est basado en RK de orden 2. Por lo tanto,
dicho mtodo posee un orden de consistencia de dos y comparte la misma estabilidad
2
que Rk2. Teniendo esto en cuenta, consideramos que un paso igual a 1 x 10 sera

suficiente para que el error de truncamiento local ( ) sea considerablemente bajo y


2 2
no arruine nuestros resultados finales. Es claro que M (1 x 10 ) es un valor
suficientemente chico como para obtener un resultado preciso.

En cuanto a su estabilidad, el mtodo Ode23 es considerablemente mejor que el Ode45,


dada la menor cantidad de cuentas que debe realizar por ciclo para obtener los puntos de
la curva. Como ya sabemos a mayor cantidad de cuentas aritmticas realizadas por el
programa, mayor ser el error de propagacin y peores sern nuestros resultados. El
mtodo Ode45 nos dara una precisin an mayor si consideramos su consistencia
nicamente, pero dado el tiempo final elegido (35) y la gran cantidad de ciclos (350), su
resultado final sera ms impreciso.

Euler:
Para el mtodo de Euler sabemos que el error crece a medida que aumenta el tiempo
final. El crecimiento controlado del error es consecuencia de la estabilidad del mtodo
de Euler, el cual implica que en el peor de los casos el error aumente de forma lineal con
el tamao del paso. Al mismo tiempo al disminuir el paso debe haber mayor exactitud
en las aproximaciones del resultado.

Grficos de V(t) (color azul) y V'(t) (color verde) en funcin del tiempo dados los
diferentes .

=1
=1
Ode 23

=2

=2
=2 Ode 23

=3 =3
Ode 23
=4
=5

Con estos valores de epsilon no se puede aplicar el mtodo de Euler dado que el
programa nos tira el error : "data values greater than float capacity."

A medida que aumenta el epsilon disminuye el tiempo adimensionalizado. Esto se


traduce en una menor cantidad de perodos graficados. El error o la diferencia entre los
resultados de cada mtodo aumenta a medida que aumenta el tiempo. En otras palabras
el mtodo de Euler es ms impreciso a medida que disminuye el epsilon. Esto se debe a
que para Euler el error proveniente de la consistencia del mtodo aumenta a medida que
auementa el tiempo final.

RungeKutta 4: El error local de truncamiento de este mtodo es de orden cuatro, O(h4).


El costo de este mtodo es el de realizar cuatro evaluaciones por paso o ciclo. Sin
embargo, a mayor cantidad de evaluaciones por paso menor es el error relacionado a la
consistencia del mtodo.
Por el otro lado, no olvidemos que el otro tipo de error, el relacionado a la aritmtica o
estabilidad del mtodo, aumentar a mayor cantidad de cuentas y aproximaciones.

Analicemos los grficos obtenidos,


Grficos de V(t) (color azul) y V'(t) (color verde) en funcin del tiempo dados los
diferentes .

=1
=1 Ode 23

=2
=2
Ode 23

=3
=3
Ode 23

=4

=4
Ode 23
=5 =5 Ode 23

A medida que disminuyo el tiempo, o aumento el epsilon, disminuye la cantidad de


perodos graficados. Este mtodo resulta claramente muy preciso a la hora de la
comparacin. Para todos los epsilon los resultados obtenidos son muy similares y esto
se debe al alto grado de consistencia del mtodo. A medida que aumentamos el epsilon,
disminuimos el tiempo, es decir la cantidad de ciclos a realizar. Esto se traduce en un
aumento en la precisin del resultado, dado que a menor cantidad de ciclos menor
cantidad de cuentas (menor error proveniente de la estabilidad). Adems a medida que
aumenta el epsilon, aumentaba la similitud de resultados. Contrario a lo que creamos
que iba a pasar este mtodo no present un gran error proveniente de su estabilidad. En
un principio, pensamos que la gran cantidad de ciclos y cuentas aritmticas del mtodo
generara un gran error en el resultado, pero esto no fue as.

Conclusin:
Una manera de seleccionar los mtodos de la ecuacin de diferencias para resolver
ecuaciones diferenciales ordinarias, es hacerlo de manera que sus errores locales de
truncamiento sean O(hP) con el valor de p ms grande posible; sin que el nmero y la
complejidad de los clculos de los mtodos rebasen una cota razonable.

Como ya sabemos un mtodo es consistente cuando la ecuacin en diferencias tiende a


la ecuacin diferencial cuando el tamao de paso tiende a cero. Es decir el error local de
truncamiento se aproxima a cero cuando el tamao de paso tiende a cero. A medida que
aumenta el orden de consistencia mayor ser la precisin de la solucin al disminuir el
paso. Por esta razn el mtodo ms preciso ser el RK4 y el menos preciso el de Euler.

Si consideramos slo la consistencia de los mtodos el mtodo ms preciso ser el de


Rk4 y el menos preciso el de Euler. Para igualar la precisin del mtodo de Euler al de
RK4 necesitar que el paso utilizado en el primer mtodo sea 1/4 del usado en el
segundo. Para RK2, por el otro lado, el paso deber ser 1/2 del usado en RK4.

El otro tipo de cota de error presente ocurre dado que, al resolver una ecuacin
diferencial numricamente, no estamos utilizando resultados exactos. Durante la
resolucin se realizan varias cuentas por ciclo (350 ciclos en nuestro caso) lo que
conlleva a un error de redondeo asociado a la aritmtica de dgitos finitos. Aqu juega un
rol importante la estabilidad del mtodo. Un mtodo ser fuertemente estable si sus
resultados se basan continuamente en los datos iniciales. Adems, para los mtodos
multipaso (como RK2 o 4), los errores asociados a la consistencia y estabilidad
empeoran, dada la gran cantidad de aproximaciones y cuentas que debemos efectuar al
resolver un problema. En nuestro caso, dados los tiempos, epsilons y pasos elegidos los
mtodo multipaso se vieron favorecidos.

A medida que aumenta el valor de epsilon disminuye el valor tiempo


adimensionalizado. Por lo tanto, disminuye la cantidad de ciclos lo que conlleva a una
menor cantidad de cuentas. Esto favorece los mtodos con consistencias altas y
estabilidades bajas. A menor cantidad de cuentas menos error aritmtico y ms peso
tiene el error proveniente de la consistencia del mtodo. En estas condiciones, los
mejores mtodos sern los que tengan consistencias de alto grado, por ejemplo: RK4.

Você também pode gostar