Está en la página 1de 8
Metodo de Euler Gerardo Morales 4 de octubre de 2017 Metodo de Euler e 0.1. Resumen [1JEn este trabajo abordaremos el metodo de Euler utilizado para resolver EDO son di- ficiles de resolver de manera analitiea, este propone resolver por integracion numerica dichas ecuaciones apartir de un yelor inicial.Como enfoque primordial nos dedicaremos a realizar el procedimiento que este metodo ofrece utilizando algun lenguaje computacion(en este easo pyt- hon}y ademas buscaremos analizar la eapacidad del metodo apartir de sus propiedades. 0.2. Introduccion [2JEI metodo de Euler es Hamado asi en honor de Leonhard Euler, es un procedi- miento iterativo el cual es utilazdo para resulver EDO del tipo: de Sie, 1 7 Fle.y) () {2|partiendo del conociento de la funcion, osea debemos saber como es f(x,y) y conocer ademas algun valor inicial de ficha funsion, sabiendo esto podemos estimar Ia forma en la comparta la variable que deseamos calcular.La forma general de este metodo es nuevovator = valoranterior + pendiente + valordepaso @) [2)De aenerdo con esta ecnacion la pendiente se nsa. para extrapolar desite rn valor anterior a.un nuevo valor en una distancia que es el valor de paso, esta ecacion nos sirve para trasar la trayectoria de la solucion. 0.3. Teoria {1)Como habiamos mensionado anteriormente el metodo de Euler es utilizado para resolver EDO del tipo: © fay) @) v u(x) ® v(e) 6) bdiviciones de anchura h se obtie1 [lJahora tenemos que para un intevalo [2.4] en ns conjunto discreto de n +1 puntos del intervalo [2, rj], para cualquiera de estos estos puntos se eample que: ro +ih0 (0 ~ 41 )F (Xo, Yo) = Yo + HF (Xo: Yo) (9) con h = (t9~21) , el valor y sirve para aproximar el valor de F’(r) en el punto P = (2,.r2), de este modo repetimos el procedimiento anterior para conseguir la siguiente sucesion de valores: th = Yo + hF (xo, Yo) (10) wen + hPa) a) vost =U t AF (em) (12) We = Yin + AF (ein, yess) (13) 0.4. Procedimiento Ahora mostraremos el metodo numerico utilzado para ejemplificar el metodo de Eulel en iil utilizamos el lenguaje de programacion pytho con interface spyder, para explicar de manera mas facil y eficiente colocamos wna imagen del codigo en python el cual esta divido en 7 seeciones cada una denotada con el nombre de "Llavel”......”LlaveT” , respectivamente: [3)Para la Llavel utilizamos la libreria "numpy"la c 1 nos permite crear un vee- tor(arreglo)el cual usamos para guardar los valores que nas arroja el ciclo "for" {4jDespues la libre-ia matplotlib.pyplot que nos permite graficar.Estos los pode- mos ver en los renglos 7 y 8 de muestro codigo respectivamente. [5]La libreria ” math” nos permite realizar funsiones aritmeticas como exponenciales,logaritmicas,trigonometrica etc., asi como calealar el redondeo ya sea hacia arriba y hacia abajo entro otras ‘operaciones mas, en este caso se utilizo para u 1 una funsion exponencial ecrita, en Ia Llave? en una de las funsiones [o)Para la Llave2 tenemos que definir un par de funsiones. les funsiones en python se definen mediante la instruccion ”def’segudo del nombre de la funsion, seguido de las variables entre parentesis y finaliza con dos puntos, enseguida eseribo la ‘operacion matematicas que deseo io le pindo mediante la instruecion return” que me regresa la misma. Como podemios ver ¢ Ja Nave2 tenemos €os jardar en dicha funcion y por ulti insiones la primera definida como “solusion.%qui es donde podemos cambiar el valor de la pendiente osea es f(r) y la segunda es la calcula Ja solusion exacta de la EDO. [7]La Llave3 es la parte donde se le pide al usuario los valores de inicio para realizar las iteracion, el valor de paso y la x maxima o cual es el valor maximo en el que quiere avaluar la fimeion. Para esto usaremos las variables como tipo 2 Fisica computacional 9 eos mee Metodo de Euler punto flotante las cuales nos permiten guardar mmero grandes. Tambien es importante mensionar que hemos declarado n como entero puesto que es la parte del programa que alimentara los vectores que utilizaremos mas adente la Llaved, esto es porque no podemos hacer las componentes de los vectores con numero que no sean enteros. [8]Bn la Llaved usaremos Ia instruceion np.zeros(n) que nos sirve para crear un veetor Heno de ceras uno para la variable x otro para y y otro para ysol que es la varible que guarda los valores de la solucion exacta , los cuales se guardaran "fo Jos valores que genere el ¢ Llaved dejamos un par de renglones como comentario, esta es la parte donde pode- mos cambiar los valor de inicio de nuestro metodo de Euler y enseguida usamos Ja istruecion print para qe imprima los valores iniciales(en este easo empizan en cero) [p]Para la Llave6 usamos el ciclo "for" que es el que hace las iteraciones del programa ¥ lena los vectores que mensionamos en la Llave3, ademas usamos la instruccion np.arange la cual nos permite tener valores con punto decimal en el ciclo "forz para terminar usamos instrecion “print” para imprimir los valores de ciclo. Por ultimo en la Llave7 utilizamos la instruccion “plt.scatter.“ta es usada para imprimir la una grafica, hay que notar que se usa dos veces una para que grafica Jos valores obtenidos de metodo de Buler y otra para la solusion exacta. fee Teo woe J aes def fameton(ey) 2 ees i Terwee Laver det salucten(ny) Fates en9 (2) 55 ES pettoatiogut(tanaa de po") faves Balaton ere Lee") } % Beep. zero) jones) aves 25 yeolenpzres(n) Liaves: S princeton vton) peolfajsolocton(e(ta}eylta}) Seba rencdanets-an tay) Boman) (ony srtntalsloD sue setter (xyscelo plesseateer(nposlolerslie") 5 ever 0.4.1. Ejemplo exacta 0,25e%y — 0. 3 dt Para ilustrar el metodo hemos usado la ecuacion fa x + 2y la cual tienes una solusion le olo con el fin de ilustrar el metodo. 5 — 0. Fisica computacional Metodo de Euler 000 025 050 075 100 125 50 175 200 ‘Tenemos una grafica de puntos con 4 diferentes colores los cuales indican la trayectoria de ‘una curva diferente. Los puntos de color negro representan a la sohusion exacta y los otros 3 representan a las curvas obtenidas por el metodo de Enler cada una con diferente paso h. Para los puntos de color gris h = 0,25, para los de color azul h = 0,2 y para el rojo tenemos que h = 1,5, Podemos notar que conforme el valor de h es menor les puntos coinciden cada vez mas en la trayectoria, diche de otro modo mientras: mas queno es el valor de h nos accreamos mas a la curva sohusion, 0.5. Ejercicio Para ejemplifica resolveremos un problema usando la ley de enfriamiento de Newton, la cual ¢s representada por la siguiente ecuacion: —K(T(t) — Tr) (a4) con una temperatura inicial de Tp = 100C, temperatura ambiente Tp = 20C' y la constante de proporcinalidad de k = 0,07, utilizando los valores de paso de h=2,5 y 10. 0.6. Resultados Para resolver este ejercicio se utilizo el codigo mostrado anteriormente como base, en con- ereto el codigo resultante sera mostrado enseguida, 4 Fisica computacional Metodo de Euler Seucena 1S ronpzeosto) Ss yoplseretn) ate see B oetocost(0) 2 for in parang): 2a reader tpechneiontree tpn 2 oyacare se 2 orincesneTeD B pit-scater(es7) ahora tenemos para un valor de h=10 la siguiente grafica: ahora tenemos para un valor de h=5 la siguiente grafiea: es ahora tenemos para un valor de h=2 la siguiente grafiea: Fisica computacional Metodo de Euler Alcomparar las tres graiicas notamos que al disminuir el valor ce paso toma una trayectoria ‘mas definida tambien podemos ver que la cantidad de puntos aumento, esto se debe a la forma en la que esta construida el programa ya que el numero de puntos o iteraciones depende det valor de paso y del valor de la tmax, dicho de otra manera: n=s/h (13) esta sencialla ecuacion nos dice la cantidad de veces que correra el ciclo for en el programa, donde s representa In tmax. Enseguida mostramos una grafica que muestra la solucion exacta de la ecuacion de enfria- miento de Newton y la compara con los valores eneontrados con el metodo de Euler. tenemos que la trayectoria que siguen los puntos negros son el resultado del metodo de Euler y los puntos de color azul estan dados por la solucion exacta. Comparando las trayectoria observamos que en el intervalo (3.34) hay una notoria diferencia, pero en los valores finales tenemos que los puntos coineiden easi a la perfeccion. nota : hace faltaesrplicarlodelosnodos 6 Fisica. computacional Metodo de Euler 0.7. Referencias [https : //sites.google.com/ site /metodosnumericosmecanica/home/unidad — vi/62 — todos — de —un— paso ~mtodo—de—euler — mtodo—de—euler me jorado—y—mtodo—de— runge—kutta [2}metodosnumnericosparaingenierosquintaedicion, SteveC.Chapra, RaymonP.Canale [3]http : //pendientedemigracion.ucm.es/in fo/aocg/ python {modulos-ienti ficos/numpy/indesr.html [a}http : //pendientedemigracion.uem.es/in fo/aocg python modulos-ienti ficos/matplotlib/index.htmt ‘matplotlib [B]http : //programacion.net [articulo/ modulos,atematicostigythOny,athy

También podría gustarte