Está en la página 1de 21

UNIDAD 5.- Solucin de ecuaciones diferenciales.

5.1 Mtodos de un paso.

5.1.1 Mtodo de Euler y Euler mejorado.

Mtodo de Euler Se llama mtodo de Euler al mtodo numrico consistente en ir incrementando paso a paso la variable independiente y hallando la siguiente imagen con la derivada. La primera derivada proporciona una estimacin directa de la pendiente en Xi (ver Grfico N01). [1]

Donde f (Xi, Yi) es la ecuacin diferencial evaluada en Xi y Yi, Tal estimacin podr substituirse en la ecuacin [2] nos queda que:

[2] Esta frmula es conocida como el mtodo de Euler (punto medio). Se predice un nuevo valor de Y por medio de la pendiente (igual a la primera derivada en el valor original de X).

Error para el mtodo de Euler La solucin numrica de las ecuaciones diferenciales ordinarias (EDO) involucra dos tipos de error. 1) Errores de Truncamiento, o discretizacion, causados por la naturaleza de las tcnicas empleadas para aproximar los valores de y.

2) Errores de Redondeo, que son el resultado del nmero limite de cifras significativas que pueden retener una computadora. Mtodo de Euler Mejorado Este mtodo se basa en la misma idea del mtodo anterior, pero hace un refinamiento en la aproximacin, tomando un promedio entre ciertas pendientes. La frmula es la siguiente:

Donde

Para entender esta frmula, analicemos el primer paso de la aproximacin, con base en la siguiente grfica:

En la grfica, vemos que la pendiente promedio corresponde a la pendiente de la recta bisectriz de la recta tangente a la curva en el punto de la condicin inicial y la "recta tangente" a la curva en el punto donde es la aproximacin obtenida con la primera frmula de Euler. Finalmente, esta recta bisectriz se traslada paralelamente hasta el punto de la condicin inicial, y se considera el valor de esta recta en el punto como la aproximacin de Euler mejorada.

5.1.2 Mtodo de Runge-Kutta. Introduccin: La computadora, es la herramienta mas poderosa hasta ahora conocida, para la solucin de problemas en el campo de las ciencias exactas, en este caso los mtodos numricos, como punto principal por sus aplicaciones en la ingeniera. Los mtodos numricos son tcnicas, donde es posible resolver los problemas por medio de operaciones aritmticas, estos mtodos implementan un buen numero de clculos que son por dems demasiado lentos si se hacen manualmente, gastando mucha energa en la tcnica misma de solucin en vez de aplicarla sobre la definicin del problema y su interpretacin. El trabajo montono que se hacia anteriormente al uso de la computadora, hace de importancia, el dominio de los mtodos numricos, los cuales se deben llevar a cabo en combinacin con las capacidades y potencialidades de la programacin de computadoras para de esa forma resolver los problemas de ingeniera mucho mas fcilmente y eficientemente.

Objetivo de los mtodos de Runge-Kutta: El objetivo de los mtodos numricos de runge-kutta, es el anlisis y solucin de los problemas de valor inicial de ecuaciones diferenciales ordinarias (EDO), estos son una extensin del mtodo de euler para resolver las (EDOS), pero con un orden de exactitud mas alto que este. Modelos matemticos: Los conocimientos cientficos se usan rutinariamente por los ingenieros en el diseo de elementos tales como maquinas, circuitos elctricos, estructuras etc. Estos conocimientos son muy tiles cuando se expresan en forma de un modelo matemtico, el cual se puede definir como una ecuacin que expresa las caractersticas fundamentales de un sistema o proceso fsico en trminos matemticos, siendo clasificados estos modelos, desde simples relaciones algebraicas hasta grandes y complicados sistemas de ecuaciones diferenciales. Anlisis de un modelo matemtico: Un modelo matemtico: es una expresin matemtica como veremos en el siguiente ejemplo: Formula de la segunda ley de newton: F= ma donde : F es la fuerza neta que acta sobre el cuerpo.

m es la masa del objeto. Utilizando esta ley, vamos a determinar la velocidad de un paracaidista en cada libre. Para este caso puede crearse un nuevo modelo, expresando la aceleracin como la razn de cambio de la velocidad con respecto al tiempo (dv/dt) . Y sustituir en la ecuacin de nueva forma: F=m(dv/dt) As la masa, multiplicada por la razn de cambio de la velocidad es igual a la suma de fuerzas que actan sobre el cuerpo. Si la fuerza total cuando el objeto cae es positiva el objeto acelera, pero si es negativa desacelera, pero si la fuerza neta es cero la velocidad permanecer a un nivel constante. Para un cuerpo que cae la fuerza , la fuerza total esta compuesta por dos fuerzas contrarias, la atraccin debida a la gravedad Fd, y la fuerza hacia arriba debida a la resistencia del aire Fu. Por lo tanto: F= Fd + Fu La fuerza debida a la gravedad Fd se puede reescribir: Fd=mg donde g es la constante de gravitacin que equivale a 980 cm por segundo cuadrado. La resistencia del aire se puede formular como una aproximacin sencilla linealmente proporcional a la velocidad: Fv = -cv donde c es una constante de proporcionalidad llamada coeficiente de arrastre. Entonces la fuerza total es la diferencia de las fuerzas hacia abajo y hacia arriba, as que combinando las ecuaciones anteriores: M(dv/dt)= mg cv o dividiendo cada lado entre m:

esta es la ecuacin de un cuerpo que cae a las fuerzas que actan sobre el y es una ecuacin diferencial porque esta escrita en trminos de la razn diferencial dv/dt.

Usando el calculo y resolviendo esta ecuacin diferencial se puede llegar a la siguiente formula que expresa la velocidad del paracaidista en funcin del tiempo.

Ec(principal). A continuacin se observara la diferencia existente entre tres tipos de soluciones para el problema del paracaidista analizando las ventajas de cada uno de ellos con respecto a los dems: Enunciado del problema de un paracaidista que cae:

MTODO ANALTICO: Un paracaidista con una masa de 55500 g salta de un aeroplano apliquese la ecuacin principal para calcular la velocidad antes de abrir el paracadas. El cociente de arrastre c es aproximadamente igual a 10500 g/s. Solucin : Al sustituir los valores de los parmetros en la ecuacin principal se obtiene

Al dar varios valores de t se obtienen las velocidades se obtienen las velocidades para el tiempo, los resultados se presentan a continuacin: TABLA DE RESULTADOS Tiempo en segundos 0 2 4 6 Velocidad en cm/s. 0 1631.7 2749.5 3515.1

8 10 12 Al infinito

4039.6 4398.8 4644.9 5180.0

Nota: La escala de la velocidad en la grfica es de 1=1000. Si lo has notado para sacar el resultado de tus clculos de la tabla y grfica anteriores necesitas estar sustituyendo en la formula de v(t) esto hace el mtodo analtico cansado y repetitivo, pero es una solucin analtica exacta porque satisface la ecuacin diferencial original.

SOLUCIN NUMRICA: La aproximacin de la razn de cambio de la velocidad con respecto al tiempo puede representarse de la siguiente forma

Y llegamos a ordenar esta ecuacin de la siguiente manera

la cual puede emplearse para extender el calculo , as que aplicandola directamente se dir Nuevo valor = valor anterior + valor estimulado x incremento del tiempo.

de v. de v de la pendiente As pues efectuando el mismo calculo para el problema se procede como sigue: Sustituyendo en la ecuacin, nuevamente vemos que necesitamos aplicar las matemticas sin el auxilio de una computadora, y nos vamos a tardar un buen rato .

v(4)= 2330.8 cm/s. Y as sucesivamente se continua con el calculo para obtener los valores en la siguiente tabla

Tiempo en seg. 0 2 4 6 8 10 12 al infinito.

Vel. En cm/s.

Puede verse por el resultado en la tabla anterior que la solucin por un mtodo numrico se aproxima bastante bien a la solucin exacta, pero debido al empleo de rectas para aproximar la funcin que es continuamente curva, existe discrepancia entre los resultados de la tabla del mtodo analtico y la de este

mtodo , una manera de minimizar el error es utilizando intervalos menores de tiempo en el muestreo de la ecuacin, y as los segmentos de recta seguirn mas de cerca a la solucin verdadera. Calculando manualmente el esfuerzo al usar incrementos cada vez mas pequeos har poco practicas las soluciones numricas, es por eso que a continuacin se presentara un mtodo con el cual se har uso de un programa de computadora para la solucin del problema.

SOLUCIN POR EL MTODO DE EULER DEL PROBLEMA DEL PARACAIDISTA. Los mtodos de euler son procedimientos para resolver EDOS de primer orden y se pueden programar en una computadora para no hacer los clculos manualmente. Una desventaja importante de los mtodos de euler es que el orden de exactitud es bajo comparado con los de RUNGE- KUTTA .Y aunque para uno y otro existen versiones diferentes nosotros solamente nos basaremos en su potencialidad de aplicacin dentro de la programacin por computadora para la solucin del problemas.

PROGRAMA PARA LA SOLUCIN DEL PROBLEMA DEL PARACAIDISTA. clear, clf, hold off t=0; n=0; v=0; C=10.5; M=55.5; g=9.8; h=.1; t_rec(1)=t; v_rec(1)=v; while t<=12 n=n+1; v=v+h*(-C/M*v*v+g); t=t+h; v_rec(n+1)=v; t_rec(n+1)=t; end plot(t_rec,v_rec) Este programa anterior fue realizado en matlab (Laboratorio de matrices) el cual puede considerarse como un lenguaje de programacin como fortran o C, pero mas sencillo que estos puesto que cualquier variable puede contener nmeros de cualquier tipo sin una declaracin especial durante la programacin . Por lo que resulta una poderosa herramienta para el anlisis numrico y matemtico en la aplicacin de los mtodos numricos a la solucin de los

problemas de ingeniera. La siguiente grfica muestra el resultado del programa anterior (tambin realizada por matlab).

Velocidad cm/s. Tiempo en seg. Podemos observar, con los resultados anteriores , que la solucin por medio de la programacin por computadora se puede hacer que se aproxime a la solucin exacta de la ecuacin diferencial tanto como se quiera, dependiendo del mtodo que se utilice. En los mtodos de RUNGE-KUTTA, el mtodo de exactitud se incrementa mediante el empleo de un mtodo de integracin numrica de mas alto orden, la mayor exactitud implica que el resultado calculado es mas exacto y que los errores se reducen con mayor rapidez al reducirse h, donde h es un intervalo de tiempo fijo que se utiliza repetidamente. Si consideramos la ecuacin diferencial ordinaria siguiente

Si queremos calcular

Aplicamos una regla trapezoidal al miembro derecho , la cual resulta de dividir el rea de una curva en n intervalos iguales de longitud h evaluando el rea de cada una de las fajas, aproximando el arco y=f(x) con la cuerda correspondiente a cada fajita, si h es lo suficientemente pequea, entonces se puede aproximar como el rea de un trapecio bajo la curva, es decir:

El rea total es la suma de las reas parciales

Entonces la forma trapezoidal en donde el rea se aproxima mediante una suma de n trapecios es

Esta formula es muy importante ya que se aplica directamente a las diferentes versiones de los mtodos de RUNGE-KUTTA , para poder aplicar las ecuaciones a problemas concretos. A continuacin veremos algunos ejemplos de los mtodos de runge a problemas de circuitos elctricos, y su solucin mas rpida y eficiente por medio de un programa realizado en computadora por MATLAB que como ya vimos anteriormente , ahorra la fatiga de calcular manualmente. El comportamiento de un circuito elctrico cambia significativamente dependiendo de los valores de los componentes empleados , as, en el circuito que se muestra a continuacin , la inductancia L=50mH, una resistencia R=20ohms y una fuente de voltaje de E=10v. entonces, si se cierra el interruptor en un t=0 la corriente I(t) satisface la ecuacin diferencial

I(0) = 0 Se necesita encontrar el valor de la corriente para 0< t < 0.02 s. mediante un mtodo de RUNGE-KUTTA de segundo orden con h=.0001.

donde

Mostramos entonces los clculos para los dos primeros pasos: t=0

t= 0.0001

en el segundo paso se procede de la misma manera, obteniendo para la corriente dos un resultado de .038431, pero como podemos darnos cuenta , seria muy

tardado resolverlo manualmente de ah que lo que falta para calcular se har en el programa de matlab. NOTA: Los programas pueden estar sujetos a errores al escribirse, as que es recomendable estudiar matlab con mayor detenimiento para poder detectarlos mas fcilmente.

PROGRAMA PARA RESOLVER EL CIRCUITO ANTERIOR: clear, clf, hold off R=20; %ohm L=50e-3; %H E=10; %V y(1)=0; t(1)=0; h=.1e-3; n=1; y_rec(1)=y; t_rec(1)=0; t=0; RL=R/L; EL=E/L; while t(n)<.02 K1=h*fn10_9(y(n),RL,EL); K2=h*fn10_9(y(n)+K1,RL,EL); y(n+1)=y(n)+.5*(K1+K2); t(n+1)=n+h; n=n+1; end plot(t,y) xlabel('t = seg. ' ) ylabel('I(A)') fn10_9 function f=fn10_9(I,RL,EL) f=-RL*I+EL Ahora vamos a un segundo ejemplo de aplicacin a circuitos y veamos la siguiente figura

Los valores de los elementos que se encuentran en la figura anterior son hipotticos es solo para representar el circuito, el cual puede definirse por medio de las siguientes ecuaciones diferenciales con su consiguiente solucin por medio de un listado de programa. Para la primera inductancia, resistencia y capacitor

con

donde e(t) = 0 excepto e(t)=1 cuando 0<t<0.01s, q(t) es la carga del condensador, i1(t) e i2(t) son corrientes; Las condiciones iniciales son i1(0) = i2(0) = q(0) = 0 en todos los casos. Resolviendo las ecuaciones: a) b)igual que (a) excepto que c)igual que (a) excepto que d)igual que (a) excepto que La solucin se determina en el siguiente programa realizado en matlab clear;clg subplot(221) for k=1:4 e=1; if k=1; subplot (221); La=.01; Lb=.5; Ra=200; Rb=20; C=.002; end if k=2 subplot(222); La=.1; Lb=.5; Ra=200; Rb=20;C=.002; end if k=3; subplot(223); La=.01; Lb=.25; Ra=200; Rb=20; C=.002; end if k=4; subplot(224) La=.01; Lb=.5; Ra=20; Rb=20; C=.002; end M=[-Ra/La, Ra/La, -1/(La*C);... Ra/Lb,-(Ra+Rb)/Lb, 1/(Lb*C);...

1/C,-1/C,0] S=[0;0;0]; X=[0;0;0]; h=.00005; for n=1:101 t=(n-1)*h; %S=[sin(t*600)*exp(-t*600)/La;0;0] %S=[cos(t*600)/La;0;0]; S=[1/La;0;0]; if t>.001, S=[0;0;0];end k1=h*(M*X+S); k2=h*(M*(X+k1/2)+S); k3=h*(M*(X+k2/2)+S); k4=h*(M*(X+k3)+S); X=X+(K1+K2*2+k3*2+k4)/6; X_r(:,n)=X; t_r(n)=t; end plot(t_r,X_r(1:2,:),t_r,X_r(3,:)) xlabel('t'),ylabel('i1,i2,q') L=length(t_r) text(t_r(L/10),X_r(1,L/10),'i1') text(t_r(L/2),X_r(2,L/2),'i2') text(t_r(L*.8),X_r(3,L*.8),'q') if k==1;title('(A)'),end if k==2;title('(B)');end if k==3;title('(C)');end if k==4;title('(D)'),end end Hay que tener en cuenta que de alguna u otra manera los mtodos numricos estan sujetos a ciertos errores al hacer los clculos en muchos pasos (iteraciones), pero que estos se pueden llegar a despreciar por la actual eficiencia de las maquinas computadoras, las cuales pueden llegar a tomar los intervalos de tiempo infinitesimalmente pequeos para la aplicacin de las ecuaciones y obtener los resultados mas rpido y de manera mas exacta. No hay limite para las aplicaciones que se pueden realizar en programacin de computadoras para resolver los problemas de mtodos numricos as que ya para terminar a continuacin se darn algunos otros ejemplos en matlab para algunos mtodos mencionados como clsicos en algunos libros.

5.2 Mtodo de pasos mltiples. Mtodos de Paso Multiple: EL valor de xi+1se realiza en funcin de los valores de xi,xi-1, .xi-p

El paso de integracin h puede ser fijo o variable. En caso de variabilidad se utilizar el error de integracin estimado, como diferencia en la evaluacin de xi+1con dos mtodos diferentes. Metodos de paso multiple Se considera el problema de valores iniciales (P.V.I.) 8<: y0(x) = f(x; y(x)); x 2 [a; b]; y(a) = y0 dado, el que supondremos tiene solucion unica, y : [a; b] ! R, la cual es acotada y depende continuamente de los datos f e y0. Dada una partici on del intervalo [a; b]: a = x0 < x1 < _ _ _ < xN = b; los metodos que hemos visto hasta aqui solo usan la informacion del valor y de la solucion calculada en xi para obtener yi+1. Por eso se denominan metodos de paso simple Parece razonable pensar que tambien podrian utilizarse los valores yik; : : : ; yi obtenidos en los nodos xik; : : : ; xi, para k > 0. Para ello, si integramos y0(x) = f(x; y(x)) en el intervalo [xi; xi+1], se tiene: Z xi+1 xi y0(x) dx = Z xi+1 xi f(x; y(x)) dx y, por lo tanto, y(xi+1) = y(xi) + Z xi+1 xi f(x; y(x)) dx: La integral puede calcularse aproximando el integrando mediante el polinomio de

interpolacion de f(x; y(x)) en los puntos xik; : : : ; xi. Sin embargo, como los valores exactos de y(xik); : : : ; y(xi) no se conocen, no podemos utilizarlos en la evaluacion de f(x; y(x)). En su lugar podemos utilizar los valores de la soluci on calculada yik; : : : ; yi. Los metodos que asi se obtienen se denominan metodos de paso multiple.

5.3 Sistemas de ecuaciones diferenciales ordinarias.

También podría gustarte