Descargar

Ecuaciones diferenciales en el contexto del MATLAB


Partes: 1, 2

    edu.red ALEPH SUB – CERO SERIE DE DIVULGACIÓ ?0 2008 – II ?0 ECUACIO ES DIFERE CIALES E EL CO TEXTO DEL MATLAB Carlos Enrique úñez Rincón1 Los matemáticos, en lugar de simplemente utilizar un método que parece funcionar, quieren hallar una justificación para el método y una serie de condiciones que garanticen que el método funciona. Glenn Ledder El presente artículo de corte divulgativo tiene como propósito hacer una contrastación entre la resolución usual de ecuaciones diferenciales ordinarias (EDO), es decir la resolución empleando el Álgebra y el Cálculo, y la resolución operando los comandos del Programa de Cálculo Técnico Científico MATLAB. Está dirigido al lector interesado en el tema, pero sobre todo a los alumnos que cursan la asignatura Matemática IV en las diversas Carreras de Ingeniería que configuran la Oferta Académica de la UNET. Ecuaciones separables g(y) dy dx = f (x) Resolver y´= 4- y2. Es necesario expresar la ecuación en la notación de Leibniz, es decir dy dx = 4- y2, ahora se lleva a la forma de variable separada, esto es = dx dy 4- y2 1 El autor del artículo es Licenciado en Matemática, egresado de la Universidad de los Andes – ULA – Venezuela. Asimismo, es Magíster, y Doctor en Ciencias. Actualmente es Profesor en la Categoría de Titular, adscrito al Departamento de Matemática y Física de la Universidad Nacional Experimental del Táchira – Venezuela. [email protected], [email protected] edu.red ? 4- y =?dx? – ln 2- y + ln 2+ y = x+C ? ln = e4x+4C = e e4C = ±e e4C , haciendo A= ±e4C, obtenemos Ecuaciones diferenciales en el contexto del MatLab luego 2 dy = x +C 1 1 1 2+ y 4 4 4 2- y entonces, la solución es 4x 2+ y 2- y luego, 4x 2+ y 2- y = Ae4x 2+ y 2- y por lo tanto, y = 2 Ae4x -1 Ae4x +1 . Consideremos, ahora, la condición inicial y(0) =1, obtenemos 1 1 1 4 4 4 entonces, la solución particular es y = 2(3e4x -1) 3e4x +1 . Ahora, obtenemos la solución general y particular utilizando los comandos de MatLab, asimismo se representa gráficamente las soluciones (figura 1) y la de solución particular (figura 2). >> pretty(solve('int(1/(4-y^2),y)=int(1,x)')) – 1/4 log(y – 2) + 1/4 log(y + 2) >> C=simple(sym('solve(subs(x=0,y=1,x=-1/4*ln(2-y)+1/4*ln(2+y)-C),C)')) C = 1/4*log(3) >> [X,Y]=meshgrid(-2:0.1:2); 2 edu.red x2 + y dx = xdy – ydx. Expresándola ) Carlos úñez >> Z=-X+(-log(abs(2-Y))+log(abs(2+Y)))./4; >> contour(Z,20) >> fplot('(6*exp(4*x)-2)/(3*exp(4*x)+1)',[-3,3]) Cuadro 1 Figura 1 Figura 2 Como es posible observar, es bastante simple hallar la solución general y particular de la ecuación diferencial, así como la solución gráfica. Ecuaciones homogéneas M(x,y)dx+ (x,y)dy = 0 2 Consideremos la ecuación diferencial de la forma homogénea, esto es ( x2 + y2 + y dx- xdy = 0 probamos que las dos funciones son homogéneas M(tx,ty) =tM(x,y) y 3 (tx,ty) =t (x,y) edu.red ? y ? = 1+v2 +v? x ? ln(v + 1+v2) =ln(x)+C ? v + 1+v2 = e ( ) = e x = Ax + 1+? 2 ? = Ax? Ecuaciones diferenciales en el contexto del MatLab es claro, que ambas tienen el mismo grado de homogeneidad. Ahora, la expresamos de la forma dy dx x2 + y2 + y x = y dividiendo numerador y denominador por x, obtenemos y x tomando la sustitución v = 2 dy y = 1+? ? + ? x ? dx x , es decir y = xv, donde dy dv = v + x dx dx , tenemos dv dv dx dx v + x = 1+v2 la ecuación la hemos convertido en una ecuación diferencial separable, es decir dx x = dv 1+v2 integramos para obtener la solución general C dx x ln x +C dv 1+v2 ? =? y x y + x2 + y2 x finalmente, sustituimos v por y ? y2 ? x ? x ? = Ax? y + x2 + y2 = Ax2. Ahora, obtenemos la solución general utilizando los comandos de MatLab: Determinamos si la ecuación es homogénea: 4 edu.red Carlos úñez >> maple('m:=(x,y)->sqrt(x^2+y^2)+y'); >> maple('n:=(x,y)->-x'); >> pretty(sym(maple('collect(m(t*x,t*y),t)'))) 2 2 2 2 1/2 (t x + t y ) +ty >> pretty(sym(maple('collect(n(t*x,t*y),t)'))) -t x Se carga el la librería difforms y el comando maple('defform(v=0,x=0,y=0)'), que permiten utilizar las formas diferenciales y expresar las variables, respectivamente: >> maple('with(difforms)'); >> maple('defform(v=0,x=0,y=0)'); Se hace el cambio de variable y = xv y se expresa la ecuación en forma de variables separadas: >> pretty(simple(sym(maple('subs(y=x*v,m(x,y)*d(x)+n(x,y)*d(y))')))) 2 1/2 -x (-d(x) (1 + v ) + x d(v)) >> pretty(sym(maple('collect((x*sqrt(1+v^2)*d(x)-x*x*d(v))/(x),{d(v),d(x)})'))) 2 1/2 d(x) (1 + v ) – x d(v) Se resuelve la ecuación separable: >> pretty(simple(sym('int(1/(sqrt(1+v^2)),v)-int(1/x,x)'))) asinh(v) – log(x) Finalmente se sustituye v por y/x: >> pretty(simple(sym('subs(v=y/x,a*sinh(v)-log(x))'))) a sinh(y/x) – log(x) Cuadro 2 5 edu.red + 2x)dx +e dy =0, ésta es de la forma ? ?x Ecuaciones diferenciales en el contexto del MatLab Ecuaciones exactas M(x,y)dx + (x,y)dy =0 ? = ?M ?y ? ?x Consideremos la ecuación x x (ye M(x,y)dx+ (x,y)dy = 0, aplicando la condición de exactitud, comprobamos que es exacta, esto es = ex = ?M ?y ? ?x . Utilizando el procedimiento de resolución de ecuaciones diferenciales exactas, obtenemos

    Partes: 1, 2
    Página siguiente