método de euler edo 2º orden

Upload: estefany-yoselyn-gomez-arenas

Post on 09-Jan-2016

216 views

Category:

Documents


0 download

DESCRIPTION

metodo de euler

TRANSCRIPT

MTODO DE EULER EDO 2 ORDENEcuacin diferencial ordinaria

Latrayectoriade unproyectillanzado desde uncansigue una curva definida por una ecuacin diferencial ordinaria que se deriva de lasegunda ley de Newton.En matemticas, unaecuacin diferencial ordinaria(comnmente abreviada "EDO") es la que contiene una funcin desconocida deunavariable independiente y relaciona con sus derivadas: unasolavariable independiente (a diferencia de lasecuaciones diferenciales parcialesque involucranderivadas parcialesde varias variables), y una o ms de susderivadasrespecto de tal variable.Recursos de lafsica, laingeniera, laeconoma, lameteorologay en aplicaciones como las de modelado en ciencias, se las estudia en diversas reas (comogeometra,mecnicay astronoma) y perspectivas. Matemticamente es de crucial inters el conjunto de funciones que verifican la ecuacin y establecen sus soluciones. Slo las ecuaciones diferenciales ms sencillas admiten soluciones dadas por frmulas explcitas (como las lineales asociadas a una teora desarrollada prcticamente por completo). No obstante, pueden determinarse algunas propiedades de las soluciones de una ecuacin diferencial sin requerirse su formulacin exacta. Clave para resolver la mayora de las ecuaciones diferenciales no lineales de sumo inters en numeroso casos. Casos carentes de una frmula auto-contenida para su solucin que se suple con la aproximada numricamente con el auxilio crucial de las computadoras.

La matemticapuracentra el focoformalen la solucin, su existencia y si es o no nica. Laaplicadacontrola la validez de los mtodos para la solucin numricamente aproximada y el rigor de las justificaciones con que se los sustenta.La teora de los sistemas dinmicos prioriza el anlisis cualitativo de sistemas descriptos por ecuaciones diferenciales mientras se han venido sumando numerosos mtodos numricos para determinar soluciones con un grado dado de precisin.Adaptacin de los mtodos para EDOs de orden superiorPara resolver problemas de valor inicial cuyas ecuaciones tienen orden mayor que uno, no son necesarias nuevas tcnicas. Se pueden aprovechar los mtodos recin estudiados para ecuaciones de primer orden, y en particular, para sistemas de ecuaciones diferenciales de primer orden.Para ello, basta con renombrar a las derivadas que aparecen en la ecuacin, y as reducir la ecuacin de orden superior a un sistema de ecuaciones de primer orden. Luego, se resuelve el sistema de primer orden con cualquiera de los mtodos ya vistos.Se va a desarrollar ahora el mtodo de Euler adaptado a una ecuacin de segundo orden. Anlogamente se puede hacer un desarrollo para adaptar los mtodos de Runge-Kutta, Taylor, o cualquiera de los multipasos.Consideremos una ecuacin diferencial ordinaria (EDO) de segundo orden, con condiciones iniciales. El caso ms general que podemos encontrar se puede escribir de la siguiente manera:(1)

Con el objeto de aplicar el mtodo de Euler se descompone la EDO de segundo orden en dos EDOs de primer orden. Para ello se define una funcin u(x) de la siguiente manera:u(x) = y(x) ,resultando as u(0) =, y la ecuacin diferencial de (1), u(x) = f(x, y, u).Podemos escribir entonces al PVI de segundo orden dado en (1) como el sistema:(2)

Entonces al aplicar el mtodo de Euler a este sistema, en cada ecuacin, y suponiendo un paso h, tenemos

Cabe aclarar que en cada paso se obtienen yiy ui, siendo estos valores aproximados para y(ti) e y(ti) respectivamente. En cada paso se necesitan estos dos valores para calcular una nueva iteracin, pero como resultado final, slo se necesitan los valores de yi. Es decir, como resultado de aplicar el algoritmo, se debe obtener el listado de los puntos (ti, yi).A continuacin, se presenta el algoritmo de Euler adaptado para PVI de segundo orden.

EjemploAproximar la solucin del PVI y''= - y' + y + x, y(0) = 1, y'(0) = 2 en el intervalo [0,1].SolucinPrimero debemos hacer la sustitucin y' = u, para hacer desaparecer la derivada segunda. El sistema asociado de primer orden resulta:

Definimos una malla de paso h en el intervalo [0, 1], siendo entonces los puntos de la malla de la forma: xi= 0 + h i , i = 0, ..., nLuego, al aplicar el mtodo de Euler, tenemos las siguientes relaciones de recurrencia:y0= 1u0= 2yi+1= yi+ h uiui+1= ui+ h (-ui+ yi+ i h) para i = 0, ..., n-1

Si trabajamos en el intervalo [0, 1], con un paso h = 0,1, obtenemos:y0= 1, u0= 2

y1= y0+ h u0= 1 + 0,1 2 = 1,2u1= u0+ h (-u0+ y0+ 0. h) = 2 + 0,1 (-2 + 1) = 1,9

y2= y1+ h u1= 1,2 + 0,1 * 1,9 = 1,39u2= u1+ h (-u1+ y1+ 1. h) = 1,9 + 0,1 (-1,9 + 1,2 + 1 * 0,1) = 1,86

y as sucesivamente, si seguimos aplicando la frmula, obtenemos los valores que se muestran en la tabla a continuacin.

En el siguiente grfico se puede comparar el resultado aproximado de los valores obtenidos de y(ti) con la solucin exacta.

Mtodo de EulerUtilizando elPolinomio de Taylorpuede obtenerse la siguiente expresin con un orden de error local 2.(9)x(t+h)x(t)+hx(t)Para una ODE de primer orden (ecuacin5) se puede reescribir(10)x(t+h)x(t)+hf(t,x(t))Entonces, eligiendo un pasohpodemos obtener una sucesin que representa la solucin para el IVP, de la siguiente forma:(11)xi+1=xi+hf(ti,xi)EjemploSe tiene la siguiente ecuacin diferencial de segundo orden, junto con sus valores iniciales:(12)++0.5sin()=0(0)=6(0)=0Haciendo el cambio de variables obtenemos un sistema de dos ODE de primer orden (en forma matricial)(13)xx0f(t,x1,x2)===(x1x2)=()60(x20.5sin(x1)x2)Utilizando el mtodo de Euler (ecuacin11), podemos obtener la siguiente sucesin(14)Double subscripts: use braces to clarify?Para un pasoh=0.05se genera la siguiente tabla de valores:ix1ix2i

160

20.524-0.013

30.523-0.024

40.522-0.036

100.499-0.099

Entonces, observando los valores que da la columna dex1iestamos obteniendo una aproximacin de la funcin.Orden del errorEl error local de truncamiento (ELT) en el Mtodo de Euler es de orden 2, dado que ese es el orden del error en el Polinomio de Taylor utilizado. Este error es el que se comete al avanzar desde el valor real de la funcin en un punto al siguiente. El error de truncamiento global, que es el cometido en toda la aproximacin de la funcin, es de orden 1 (siempre es 1 menos que el local).ReferenciasHaga clickaqupara ver una linda explicacin de cmo se obtiene el Mtodo de Euler.Mtodo de HeunEste mtodo es una mejora que se efecta sobre el Mtodo de Euler. En Euler, se aproxima el siguiente valor de la funcin conociendo dnde se encuentra ahora y la pendiente en el punto actual, como expresa la ecuacin (11). Esto puede llevar a una mala aproximacin, pues la pendiente de la funcin puede cambiar en el intervalo analizado, y Euler arrojara un valor muy alejado.Heun propone tomar en consideracin tanto la pendiente en el punto actual como la pendiente en el siguiente punto, promediadas, quedando su sucesin de la siguiente manera:(15)xi+1=xi+h12(pendizq+pendder)Pero uno no sabe la pendiente en el siguiente punto dado que uno no conoce exactamente dnde ser (si lo supiramos, no tendra sentido aproximarlo!). Entonces, para aproximar la pendiente "derecha" se utiliza el Mtodo de Euler, como puede verse a continuacin.(16){pendizq=f(ti,xi)pendder=f(ti+1,xi+hf(ti,xi))Entonces, se obtiene finalmente la siguiente sucesin:(17)xi+1=xi+h12(f(ti,xi)+f(ti+1,xi+hf(ti,xi)))ReferenciasHaga clickaqupara acceder a una muy buena explicacin de cmo se obtiene el Mtodo de Heun.Mtodo de TaylorEste mtodo utiliza la expansin de Taylor alrededor de un punto y puede alcanzar cualquier orden de error que se desee.La expansin de Taylor en un punto es:(18)x(t+h)=x(t)+x(t)h+x(t)h22++x(n)(t)hnn!+x(n+1)()hn+1(n+1)!Taylor de orden 2Truncando la expansin de Taylor en el segundo orden se obtiene:(19)x(t+h)=x(t)+x(t)h+x(t)h22+x()h33!con[t,t+h]. De la misma manera que hicimos con Euler para una ODE de orden 1, ahora hay que remplazarx(t)conf(t,x(t)), pero comofes una funcin de varias variables, cuando aparecex(t)hay que remplazarlo por laderivada totalf(t,x(t))(20)x(t+h)=x(t)+hf(t,x(t))+h22(f(t,x(t))t+f(t,x(t))xf(t,x(t)))Discretizando podemos obtener la sucesin:(21)xi+1=xi+hf(ti,xi)+h22(ft(ti,xi)+fx(ti,xi)f(ti,xi))Ejemplo(Est mal)Partiendo delejemplo de eulertenemos que calcularftyfx(22)ft=(0.5sin(x1)x20.5cos(x1)x2+0.5sin(x1)+x2)Para calcularfx, hay que derivar el primer elemento defporx1y el segundo porx2obteniendo:(23)fx=(01)Reemplazando en la ecuacin21obtenemos:(24)Double subscripts: use braces to clarify?Para un pasoh=0.05se genera la siguiente tabla de valores:ix1ix2i

160

20.523-0.012

30.522-0.023

40.519-0.044

100.498-0.095

Mtodo de Runge-KuttaSe utilizan las siguientes sucesiones preestablecidas, dondeti=ih:Orden local 2(25)k1k2xi+1===hf(ti,xi)hf(ti+h,xi+k1)xi+12(k1+k2)EjemploPartiendo delejemplo de eulertenemos que ver como adaptar el sistema de ecuaciones al algoritmo25.La variablek1se convierte en el vector(26)k1=(hx2h(0.5sin(x1)x2))yk2se obtiene de remplazar enf(t,x), donde aparezcat, ponert+h, donde aparezcax1,Double subscripts: use braces to clarify?siendoDouble subscripts: use braces to clarify?el primer componente del vectork1y donde aparezcax2cambiar porDouble subscripts: use braces to clarify?.(27)Double subscripts: use braces to clarify?Lo que produce al algoritmo en octavex1 = pi / 6;x2 = 0;h = 0.05;x = 0;for i = 1:10 k11 = h * x2; k12 = h * (-0.5 *sin(x1) - x2 ); k21 = h * (x2 + k12); k22 = h * (-0.5 * sin(x1 + k11) - (x2 + k12) ); x1 = x1 + 0.5 * (k11 + k21); x2 = x2 + 0.5 * (k12 + k22); printf("Iteracion %d, x1 = %f, x2 = %f\n",i, x1, x2);endPara un pasoh=0.05se genera la siguiente tabla de valores:ix1ix2i

160

20.523-0.012

30.522-0.024

40.521-0.035

100.497-0.097

Orden local 4(28)xi+1k1k2k3k4=====xi+16(k1+2k2+2k3+k4)hf(ti,xi)hf(ti+h2,xi+k12)hf(ti+h2,xi+k22)hf(ti+h,xi+k3)Nota: Observar que Runge Kutta de orden 2 es Heun, de la misma manera que Taylor de orden 1 es Euler.