SlideShare una empresa de Scribd logo
1 de 5
Descargar para leer sin conexión
AMPLIACIÓN DE MATEMÁTICAS (2o Ing. de Telecomunicación y Aeronáutica)

            Departamento de Matemática Aplicada II. Universidad de Sevilla

                             CURSO ACADÉMICO 2008-2009




          Práctica II: Problemas de valor inicial en EDO’s.



1     Introducción
Es sabido que sólo en unos cuantos casos se puede expresar la solución de una ecuación
diferencial ordinaria por medios analíticos y que, en general, es imposible resolver el pro-
blema de Cauchy aun cuando se sepa que tiene solución única, por lo que es necesario
desarrollar métodos que permitan obtener aproximaciones precisas de esa solución. En
esta práctica, utilizaremos un método numérico para resolver problemas de valores ini-
ciales.
    Se llama problema de valor inicial (PVI) o problema de Cauchy en un intervalo [t0 , tf ],
al dado por una EDO y una condición inicial en la forma:
                                        ( 0
                                           y = f(t, y(t)),
                                (P V I)
                                           y(t0 ) = y0 .
    En general, los métodos numéricos se basan en la discretización de la variable inde-
pendiente t (tiempo o espacio) sustituyendo el intervalo [t0 , tf ] por una malla finita de
n + 1 puntos o nodos ti (i = 1, . . . , N) en los que se obtiene la solución de modo aproxi-
mado. La distancia entre dos nodos consecutivos de la malla hi = ti+1 − ti se denomina
paso. El objetivo es definir una estrategia que nos permita producir una sucesión {yn }
con n = 1, . . . , N que aproxime a la solución exacta y(t) en los puntos tn de la malla. A
esa sucesión se le llama solución numérica del problema de Cauchy.
    MATLAB dispone de varias funciones para resolver numéricamente Problemas de
Valor Inicial. En esta práctica, nos centramos en la orden ode45, aunque su utilización se
generaliza a las funciones de tipo ode**. La función ode45 está basada en un algoritmo
de tipo Runge-Kutta, que se desarrolló a partir del método de Euler mejorado. En las
aplicaciones, el método de Euler básico resulta ineficiente y por ello se han desarrollado
varios método numéricos de tipo Runge-Kutta.


                                             1
2     Uso de la función matlab ode45.
2.1    La sintaxis simple.
[T,Y]=ode45(funcion, tiempos ,y0)
    funcion es el nombre de una función que evalúa el segundo miembro de la ecuación,
esto es, f (t, y(t)). Puede ser un objeto inline o bien una referencia a una m-función del
tipo fun.m.
    tiempos es el intervalo en el que se quiere calcular la solución que puede ser [t0, tf] o
bien un vector cuyas componentes constituyen una partición t0 < t1 < · · · < tf .
    y0 es el valor de la condición inicial.
    T es un vector columna con la partición realizada en el intervalo [t0, tf].
    Y es una matriz con tantas columnas como componentes tenga y0 y tantas filas como
componentes tenga el vector T .

Ejercicio 1 resuelto. Calcular en el intervalo [1, π] la solución de
                                       ( 0
                                          y = 2t + y,
                               (P V I)
                                          y(1) = 0.5.
   >> f=inline(’2*t+y’,’t’,’y’);
   >> [T,Y]=ode45(f,[1,pi],0.5);
La gráfica se puede dibujar con
   >> plot(T,Y)
En este ejemplo puede observarse que los métodos ode** son de paso variable. Para
observar esto, consulta la ayuda de matlab sobre la función diff y teclea
   >> plot(T(2:length(T)),diff(T))
Otra forma de definir la función asociada es usar un m-archivo llamado mifun.m de la
forma:
   function [dydt]=mifun(t,y)
   dydt=2*t+y;
Después se ejecuta:
   >> [T,Y]=ode45(@mifun,[1,pi],0.5);
   • Con el símbolo @, MATLAB entiende que es una función de nueva creación.
   • Hay otra forma alternativa de llamar a una función con ode45:
   >> [T,Y]=ode45(’mifun’,[1,pi],0.5);
   Para usar esta alternativa, la función mifun debe estar grabada en otro fichero llamado
mifun.m.
                                                                           t
Ejercicio 2. Calcular la solución al PVI correspondiente a y 0 = 0.2 cos( 2 )y, y(1) = 0.5
usando una partición del intervalo [1, π] en 40 subintervalos (usar la orden linspace de
MATLAB).
   • Hacemos notar que la resolución de sistemas diferenciales con MATLAB se hace igual
que la de EDO sólo teniendo en cuenta que, en ese caso, la función del segundo miembro y

                                             2
la condición inicial toman valores vectoriales. Todos los vectores deben introducirse como
vectores columnas.

Ejercicio 3 resuelto. Resolver en el intervalo [0, 5π] el PVI
                                ⎧ 0
                                ⎪ y1 = y2 y3 ,
                                ⎪ 0
                                ⎪
                                ⎪ y2 = −0.7y1 y3 ,
                                ⎪
                                ⎪ 0
                                ⎨
                                    y3 = −0.51y1 y2 ,
                                ⎪ y1 (0) = 0,
                                ⎪
                                ⎪
                                ⎪ y2 (0) = 1,
                                ⎪
                                ⎪
                                ⎩
                                    y3 (0) = 1.
   Escribimos el sistema en forma vectorial como
                               ⎛             ⎞              ⎛ ⎞
                                    y2 y3                     0
                  0
               Y = f (t, Y ) = ⎝ −0.7y1 y3 ⎠ ; Y (0) = Y0 = ⎝ 1 ⎠ .
                                 −0.51y1 y2                   1
   >> f=inline(’[y(2)*y(3);-0.7*y(1)*y(3);-0.51*y(1)*y(2)]’, ’t’,’y’);
   >> [T,Y]=ode45(f,[0,5*pi],[0;1;1])

Ejercicio 4 resuelto. Resolución de un problema con la ecuación de Van der Pol de
parámetro μ = 1 en el intervalo [0, 20]:
                                  ⎧
                                  ⎪ y 00 − (1 − y 2 )y 0 + y = 0,
                                  ⎨
                          (P V I)
                                  ⎪ y(0) = 2,
                                  ⎩ y 0 (0) = 0.

   Usando el cambio y1 = y; y2 = y 0 , el sistema diferencial asociado es:
                            µ                     ¶                  µ ¶
               0                        y2                              2
             Y = f(t, Y ) =             2           ; Y (0) = Y0 =         .
                               (1 − y1 )y2 − y1                         0
   Construimos la función de Matlab que evalúe el segundo miembro (función asociada):
   function dydt=vderp(t,y)
   dydt = [y(2);(1-y(1)^2)* y(2)-y(1)];
   Observe que:
   • en la definición de la funcion vderp ha de escribirse la variable independiente t.
   • la matriz dydt debe ser escrita por columnas.
   Si queremos integrar numéricamente el problema de Cauchy y obtener una repre-
sentación gráfica de las dos componentes de la solución al sistema, escribimos:
   >> [T,Y]=ode45(@vderp,[0,20],[2;0]);
   >> plot(T,Y(:,1), T,Y(:,2));
Posteriormente podemos escribir lo siguiente para clarificar el dibujo.
   >> legend(’y_1’, ’y_2’);xlabel(’t’);ylabel(’y_1, y_2’)



                                            3
• Observar que la primera componente y1 es realmente la solución al problema de Van
der Pol.
    Si queremos representar una curva en el plano de fases:
    >> plot(Y(:,1),Y(:,2))
    Si queremos conocer el valor aproximado de la solución para un valor t que no está en
la partición T creada por el programa, podemos interpolar con la orden deval:
    >> sol=ode45(@vderp,[0 20],[2 0]);
    >> valor=deval(sol,4.5)
     valor =
    -1.3679
     0.8764

Ejercicio 5. Resolver en el intervalo [0, 5] el siguiente problema de segundo orden y
obtener una aproximación de la solución para t = 2:
                                    ⎧ 00      1
                                    ⎪ y = y0 − sen(y),
                                    ⎨
                            (P V I)
                                    ⎪ y(0) = 1,
                                    ⎩ 0
                                       y (0) = 1.

2.2    La sintaxis general: opciones y parámetros.
[T,Y]=ode45(funcion, tiempos ,y0, options, p1,p2, ... )
    El argumento options es una estructura creada con la orden odeset donde podemos
indicar una serie de parámetros que intervienen en el cálculo. Podemos averiguar los
valores que utiliza por defecto la orden ode45 ejecutando el comando odeset sin argu-
mentos:
    >> odeset
    Ver ayuda de Matlab para más detalles. Si no se necesita, poner una matriz vacía [ ]
en su lugar.
    Los argumentos p1, p2, ... son parámetros que serán pasados como argumentos a la
función creada fun.m cuando sea llamada.

Ejercicio 6 resuelto. Escribir un programa que permita resolver el siguiente problema
de Cauchy para la ecuación de Van der Pol general:
                                 ⎧ 00
                                 ⎨ y − μ(1 − y 2 )y 0 + y = 0,
                         (P V I)   y(0) = 0,
                                 ⎩ 0
                                   y (0) = 2.
   Previamente, creamos la función asociada en un m-fichero que se llame fun.m:
   function dydt=fun(t,y,mu)
   dydt = [y(2);mu*(1-y(1)^2)*y(2)-y(1)];
   En otro m-fichero escribimos las órdenes:
   function vanderpol(T,mu)


                                           4
[T1,Y]=ode45(@fun,[0,T],[0;2],[ ],mu);
    plot(T1,Y(:,1), T1,Y(:,2)),shg
    legend(’y1’,’y2’)
    pause
    plot(Y(:,1), Y(:,2)),shg
    • Los métodos en los que están basados las órdenes ode de MATLAB utilizan el control
del paso como herramienta para conseguir el compromiso entre la precisión deseada y
el costo numérico. Aun así, podemos encontrarnos con problemas numéricos como el
problema de “stiffness”, en el que los cálculos numéricos internos al programa llevan a
resoluciones erróneas. Introducimos los valores T = 20, μ = 1, μ = 10 y μ = 1000
para observar cuándo aparece oscilación brusca de la solución. En general, una posible
solución a este problema consiste en proporcionar el jacobiano para evitar que éste sea
determinado numéricamente. Utilizar ahora los siguientes ficheros:
    function dfdt=jacobiano(t,y,mu)
    dfdt = [0,1;-2*mu*y(1)*y(2)-1,mu*(1-y(1)^2)];
    function vanderstiff(T,mu)
    options=odeset(’Jacobian’,@jacobiano);
    [T1,Y]=ode45(@fun,[0,T],[0;2],options,mu);
    plot(T1,Y(:,1))
    axis([0,T,-2.5,2.5])
Ejercicio 7. Escribir un programa para resolver en el intervalo [0, 6π] el problema siguien-
te para distintos valores del parámetro a. Obtener la gráfica de la solución aproximada
para los valores a = 1 y a = −1.
                                        ( 0          t
                                          y = a cos( 2 )y,
                                (P V I)
                                          y(0) = 1.

Ejercicio 8. Considerar el problema
                                       ⎧
                                       ⎪ dy
                                       ⎨    = y − 4e−3t ,
                               (P V I)   dt
                                       ⎪
                                       ⎩ y(0) = 1.

   • Utilizar ode45 para encontrar una solución aproximada en el intervalo [0, 3]. ¿Qué
     parece ocurrir cuando t crece? A continuación dibujar la solución en un intervalo
     más largo (que vaya al menos hasta t = 20). ¿Qué ocurre cuando t crece?

   • Resolver el PVI exactamente, comparar la solución exacta con la aproximación de
     Matlab e interpretar los resultados.




                                             5

Más contenido relacionado

La actualidad más candente

Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...
Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...
Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...Yeina Pedroza
 
131971717 formulas-de-mecanica-de-fluidos
131971717 formulas-de-mecanica-de-fluidos131971717 formulas-de-mecanica-de-fluidos
131971717 formulas-de-mecanica-de-fluidosRoosvel Flores
 
Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Mayra Peña
 
Sistemas de segundo orden
Sistemas de segundo  ordenSistemas de segundo  orden
Sistemas de segundo ordenHenry Alvarado
 
FLUJO DE FLUIDOS EN TUBERIAS
FLUJO DE FLUIDOS EN TUBERIASFLUJO DE FLUIDOS EN TUBERIAS
FLUJO DE FLUIDOS EN TUBERIASRobin Gomez Peña
 
Electronica rectificadores
Electronica rectificadoresElectronica rectificadores
Electronica rectificadoresVelmuz Buzz
 
Ejercicios resueltos edo exactas
Ejercicios resueltos edo exactasEjercicios resueltos edo exactas
Ejercicios resueltos edo exactasYerikson Huz
 
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOS
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOSTRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOS
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOSIsrael Magaña
 
11 Transformada De Laplace
11 Transformada De Laplace11 Transformada De Laplace
11 Transformada De Laplacekahtya
 
Sistema control onoff
Sistema control onoffSistema control onoff
Sistema control onoffSalvador-UNSA
 

La actualidad más candente (20)

Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...
Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...
Aplicaciones de las ecuaciones diferenciales a problemas vaciado de tanques (...
 
Transformada de Laplace
Transformada de LaplaceTransformada de Laplace
Transformada de Laplace
 
G5 oscilaciones
G5 oscilacionesG5 oscilaciones
G5 oscilaciones
 
Regla de Simpson tres octavos
Regla de Simpson tres octavosRegla de Simpson tres octavos
Regla de Simpson tres octavos
 
131971717 formulas-de-mecanica-de-fluidos
131971717 formulas-de-mecanica-de-fluidos131971717 formulas-de-mecanica-de-fluidos
131971717 formulas-de-mecanica-de-fluidos
 
Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.
 
Aplicaciones funciones vectoriales
Aplicaciones funciones vectorialesAplicaciones funciones vectoriales
Aplicaciones funciones vectoriales
 
Sistemas de segundo orden
Sistemas de segundo  ordenSistemas de segundo  orden
Sistemas de segundo orden
 
FLUJO DE FLUIDOS EN TUBERIAS
FLUJO DE FLUIDOS EN TUBERIASFLUJO DE FLUIDOS EN TUBERIAS
FLUJO DE FLUIDOS EN TUBERIAS
 
Electronica rectificadores
Electronica rectificadoresElectronica rectificadores
Electronica rectificadores
 
Metodo adams bashforth
Metodo adams bashforthMetodo adams bashforth
Metodo adams bashforth
 
Ejercicios resueltos edo exactas
Ejercicios resueltos edo exactasEjercicios resueltos edo exactas
Ejercicios resueltos edo exactas
 
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOS
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOSTRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOS
TRANSFORMADA DE LAPLACE PARA CIRCUITOS ELÉCTRICOS
 
11 Transformada De Laplace
11 Transformada De Laplace11 Transformada De Laplace
11 Transformada De Laplace
 
1.2 aproximacion numerica
1.2 aproximacion numerica1.2 aproximacion numerica
1.2 aproximacion numerica
 
Sistema control onoff
Sistema control onoffSistema control onoff
Sistema control onoff
 
RAÍCES DE ECUACIONES NO LINEALES
RAÍCES DE ECUACIONES NO LINEALESRAÍCES DE ECUACIONES NO LINEALES
RAÍCES DE ECUACIONES NO LINEALES
 
Practica 7 Flip Flop
Practica 7 Flip FlopPractica 7 Flip Flop
Practica 7 Flip Flop
 
Matriz jacobiana
Matriz jacobianaMatriz jacobiana
Matriz jacobiana
 
transformada z
transformada ztransformada z
transformada z
 

Similar a Ode45

Ejemplos apicados a la biologia
Ejemplos apicados a la biologiaEjemplos apicados a la biologia
Ejemplos apicados a la biologiaMairim Villanueva
 
Metodos numéricos (euler, euler modificado, rk)
Metodos numéricos (euler, euler modificado, rk)Metodos numéricos (euler, euler modificado, rk)
Metodos numéricos (euler, euler modificado, rk)Beat Winehouse
 
Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Kike Prieto
 
Ecuaciones diferenciales parciales Parte 3
Ecuaciones diferenciales parciales Parte 3Ecuaciones diferenciales parciales Parte 3
Ecuaciones diferenciales parciales Parte 3Kike Prieto
 
Ecuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinariasEcuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinariasKike Prieto
 
Métodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasMétodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasJaime Martínez Verdú
 
Presentacion algebra
Presentacion algebraPresentacion algebra
Presentacion algebracarlos yanez
 
Metodos numericos de ecuaciones diferenciales
Metodos numericos de ecuaciones diferencialesMetodos numericos de ecuaciones diferenciales
Metodos numericos de ecuaciones diferencialesDantalian Gremory
 

Similar a Ode45 (20)

Metodos numericos
Metodos numericosMetodos numericos
Metodos numericos
 
Ecuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinariasEcuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinarias
 
Ecuaciones diferenciales 1
Ecuaciones diferenciales 1Ecuaciones diferenciales 1
Ecuaciones diferenciales 1
 
Ejemplos apicados a la biologia
Ejemplos apicados a la biologiaEjemplos apicados a la biologia
Ejemplos apicados a la biologia
 
Metodos numericos euler_euler_modificado
Metodos numericos euler_euler_modificadoMetodos numericos euler_euler_modificado
Metodos numericos euler_euler_modificado
 
Metodos numéricos (euler, euler modificado, rk)
Metodos numéricos (euler, euler modificado, rk)Metodos numéricos (euler, euler modificado, rk)
Metodos numéricos (euler, euler modificado, rk)
 
Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales
 
Lab06 521230-2018
Lab06 521230-2018Lab06 521230-2018
Lab06 521230-2018
 
Cálculo numérico 7 corrección
Cálculo numérico 7 correcciónCálculo numérico 7 corrección
Cálculo numérico 7 corrección
 
Ecuaciones diferenciales parciales Parte 3
Ecuaciones diferenciales parciales Parte 3Ecuaciones diferenciales parciales Parte 3
Ecuaciones diferenciales parciales Parte 3
 
Ecuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinariasEcuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinarias
 
Guia_04.pdf
Guia_04.pdfGuia_04.pdf
Guia_04.pdf
 
Anexos 8
Anexos 8Anexos 8
Anexos 8
 
Ed pr3 4_2012_13_enweb
Ed pr3 4_2012_13_enwebEd pr3 4_2012_13_enweb
Ed pr3 4_2012_13_enweb
 
Métodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasMétodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinarias
 
Mt4 pfproblemas
Mt4 pfproblemasMt4 pfproblemas
Mt4 pfproblemas
 
Presentacion algebra
Presentacion algebraPresentacion algebra
Presentacion algebra
 
Metodos numericos de ecuaciones diferenciales
Metodos numericos de ecuaciones diferencialesMetodos numericos de ecuaciones diferenciales
Metodos numericos de ecuaciones diferenciales
 
10 sep edo_2009_1
10 sep edo_2009_110 sep edo_2009_1
10 sep edo_2009_1
 
An 04 metodos-directos
An 04 metodos-directosAn 04 metodos-directos
An 04 metodos-directos
 

Último

PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaLuis Minaya
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 

Último (20)

PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 

Ode45

  • 1. AMPLIACIÓN DE MATEMÁTICAS (2o Ing. de Telecomunicación y Aeronáutica) Departamento de Matemática Aplicada II. Universidad de Sevilla CURSO ACADÉMICO 2008-2009 Práctica II: Problemas de valor inicial en EDO’s. 1 Introducción Es sabido que sólo en unos cuantos casos se puede expresar la solución de una ecuación diferencial ordinaria por medios analíticos y que, en general, es imposible resolver el pro- blema de Cauchy aun cuando se sepa que tiene solución única, por lo que es necesario desarrollar métodos que permitan obtener aproximaciones precisas de esa solución. En esta práctica, utilizaremos un método numérico para resolver problemas de valores ini- ciales. Se llama problema de valor inicial (PVI) o problema de Cauchy en un intervalo [t0 , tf ], al dado por una EDO y una condición inicial en la forma: ( 0 y = f(t, y(t)), (P V I) y(t0 ) = y0 . En general, los métodos numéricos se basan en la discretización de la variable inde- pendiente t (tiempo o espacio) sustituyendo el intervalo [t0 , tf ] por una malla finita de n + 1 puntos o nodos ti (i = 1, . . . , N) en los que se obtiene la solución de modo aproxi- mado. La distancia entre dos nodos consecutivos de la malla hi = ti+1 − ti se denomina paso. El objetivo es definir una estrategia que nos permita producir una sucesión {yn } con n = 1, . . . , N que aproxime a la solución exacta y(t) en los puntos tn de la malla. A esa sucesión se le llama solución numérica del problema de Cauchy. MATLAB dispone de varias funciones para resolver numéricamente Problemas de Valor Inicial. En esta práctica, nos centramos en la orden ode45, aunque su utilización se generaliza a las funciones de tipo ode**. La función ode45 está basada en un algoritmo de tipo Runge-Kutta, que se desarrolló a partir del método de Euler mejorado. En las aplicaciones, el método de Euler básico resulta ineficiente y por ello se han desarrollado varios método numéricos de tipo Runge-Kutta. 1
  • 2. 2 Uso de la función matlab ode45. 2.1 La sintaxis simple. [T,Y]=ode45(funcion, tiempos ,y0) funcion es el nombre de una función que evalúa el segundo miembro de la ecuación, esto es, f (t, y(t)). Puede ser un objeto inline o bien una referencia a una m-función del tipo fun.m. tiempos es el intervalo en el que se quiere calcular la solución que puede ser [t0, tf] o bien un vector cuyas componentes constituyen una partición t0 < t1 < · · · < tf . y0 es el valor de la condición inicial. T es un vector columna con la partición realizada en el intervalo [t0, tf]. Y es una matriz con tantas columnas como componentes tenga y0 y tantas filas como componentes tenga el vector T . Ejercicio 1 resuelto. Calcular en el intervalo [1, π] la solución de ( 0 y = 2t + y, (P V I) y(1) = 0.5. >> f=inline(’2*t+y’,’t’,’y’); >> [T,Y]=ode45(f,[1,pi],0.5); La gráfica se puede dibujar con >> plot(T,Y) En este ejemplo puede observarse que los métodos ode** son de paso variable. Para observar esto, consulta la ayuda de matlab sobre la función diff y teclea >> plot(T(2:length(T)),diff(T)) Otra forma de definir la función asociada es usar un m-archivo llamado mifun.m de la forma: function [dydt]=mifun(t,y) dydt=2*t+y; Después se ejecuta: >> [T,Y]=ode45(@mifun,[1,pi],0.5); • Con el símbolo @, MATLAB entiende que es una función de nueva creación. • Hay otra forma alternativa de llamar a una función con ode45: >> [T,Y]=ode45(’mifun’,[1,pi],0.5); Para usar esta alternativa, la función mifun debe estar grabada en otro fichero llamado mifun.m. t Ejercicio 2. Calcular la solución al PVI correspondiente a y 0 = 0.2 cos( 2 )y, y(1) = 0.5 usando una partición del intervalo [1, π] en 40 subintervalos (usar la orden linspace de MATLAB). • Hacemos notar que la resolución de sistemas diferenciales con MATLAB se hace igual que la de EDO sólo teniendo en cuenta que, en ese caso, la función del segundo miembro y 2
  • 3. la condición inicial toman valores vectoriales. Todos los vectores deben introducirse como vectores columnas. Ejercicio 3 resuelto. Resolver en el intervalo [0, 5π] el PVI ⎧ 0 ⎪ y1 = y2 y3 , ⎪ 0 ⎪ ⎪ y2 = −0.7y1 y3 , ⎪ ⎪ 0 ⎨ y3 = −0.51y1 y2 , ⎪ y1 (0) = 0, ⎪ ⎪ ⎪ y2 (0) = 1, ⎪ ⎪ ⎩ y3 (0) = 1. Escribimos el sistema en forma vectorial como ⎛ ⎞ ⎛ ⎞ y2 y3 0 0 Y = f (t, Y ) = ⎝ −0.7y1 y3 ⎠ ; Y (0) = Y0 = ⎝ 1 ⎠ . −0.51y1 y2 1 >> f=inline(’[y(2)*y(3);-0.7*y(1)*y(3);-0.51*y(1)*y(2)]’, ’t’,’y’); >> [T,Y]=ode45(f,[0,5*pi],[0;1;1]) Ejercicio 4 resuelto. Resolución de un problema con la ecuación de Van der Pol de parámetro μ = 1 en el intervalo [0, 20]: ⎧ ⎪ y 00 − (1 − y 2 )y 0 + y = 0, ⎨ (P V I) ⎪ y(0) = 2, ⎩ y 0 (0) = 0. Usando el cambio y1 = y; y2 = y 0 , el sistema diferencial asociado es: µ ¶ µ ¶ 0 y2 2 Y = f(t, Y ) = 2 ; Y (0) = Y0 = . (1 − y1 )y2 − y1 0 Construimos la función de Matlab que evalúe el segundo miembro (función asociada): function dydt=vderp(t,y) dydt = [y(2);(1-y(1)^2)* y(2)-y(1)]; Observe que: • en la definición de la funcion vderp ha de escribirse la variable independiente t. • la matriz dydt debe ser escrita por columnas. Si queremos integrar numéricamente el problema de Cauchy y obtener una repre- sentación gráfica de las dos componentes de la solución al sistema, escribimos: >> [T,Y]=ode45(@vderp,[0,20],[2;0]); >> plot(T,Y(:,1), T,Y(:,2)); Posteriormente podemos escribir lo siguiente para clarificar el dibujo. >> legend(’y_1’, ’y_2’);xlabel(’t’);ylabel(’y_1, y_2’) 3
  • 4. • Observar que la primera componente y1 es realmente la solución al problema de Van der Pol. Si queremos representar una curva en el plano de fases: >> plot(Y(:,1),Y(:,2)) Si queremos conocer el valor aproximado de la solución para un valor t que no está en la partición T creada por el programa, podemos interpolar con la orden deval: >> sol=ode45(@vderp,[0 20],[2 0]); >> valor=deval(sol,4.5) valor = -1.3679 0.8764 Ejercicio 5. Resolver en el intervalo [0, 5] el siguiente problema de segundo orden y obtener una aproximación de la solución para t = 2: ⎧ 00 1 ⎪ y = y0 − sen(y), ⎨ (P V I) ⎪ y(0) = 1, ⎩ 0 y (0) = 1. 2.2 La sintaxis general: opciones y parámetros. [T,Y]=ode45(funcion, tiempos ,y0, options, p1,p2, ... ) El argumento options es una estructura creada con la orden odeset donde podemos indicar una serie de parámetros que intervienen en el cálculo. Podemos averiguar los valores que utiliza por defecto la orden ode45 ejecutando el comando odeset sin argu- mentos: >> odeset Ver ayuda de Matlab para más detalles. Si no se necesita, poner una matriz vacía [ ] en su lugar. Los argumentos p1, p2, ... son parámetros que serán pasados como argumentos a la función creada fun.m cuando sea llamada. Ejercicio 6 resuelto. Escribir un programa que permita resolver el siguiente problema de Cauchy para la ecuación de Van der Pol general: ⎧ 00 ⎨ y − μ(1 − y 2 )y 0 + y = 0, (P V I) y(0) = 0, ⎩ 0 y (0) = 2. Previamente, creamos la función asociada en un m-fichero que se llame fun.m: function dydt=fun(t,y,mu) dydt = [y(2);mu*(1-y(1)^2)*y(2)-y(1)]; En otro m-fichero escribimos las órdenes: function vanderpol(T,mu) 4
  • 5. [T1,Y]=ode45(@fun,[0,T],[0;2],[ ],mu); plot(T1,Y(:,1), T1,Y(:,2)),shg legend(’y1’,’y2’) pause plot(Y(:,1), Y(:,2)),shg • Los métodos en los que están basados las órdenes ode de MATLAB utilizan el control del paso como herramienta para conseguir el compromiso entre la precisión deseada y el costo numérico. Aun así, podemos encontrarnos con problemas numéricos como el problema de “stiffness”, en el que los cálculos numéricos internos al programa llevan a resoluciones erróneas. Introducimos los valores T = 20, μ = 1, μ = 10 y μ = 1000 para observar cuándo aparece oscilación brusca de la solución. En general, una posible solución a este problema consiste en proporcionar el jacobiano para evitar que éste sea determinado numéricamente. Utilizar ahora los siguientes ficheros: function dfdt=jacobiano(t,y,mu) dfdt = [0,1;-2*mu*y(1)*y(2)-1,mu*(1-y(1)^2)]; function vanderstiff(T,mu) options=odeset(’Jacobian’,@jacobiano); [T1,Y]=ode45(@fun,[0,T],[0;2],options,mu); plot(T1,Y(:,1)) axis([0,T,-2.5,2.5]) Ejercicio 7. Escribir un programa para resolver en el intervalo [0, 6π] el problema siguien- te para distintos valores del parámetro a. Obtener la gráfica de la solución aproximada para los valores a = 1 y a = −1. ( 0 t y = a cos( 2 )y, (P V I) y(0) = 1. Ejercicio 8. Considerar el problema ⎧ ⎪ dy ⎨ = y − 4e−3t , (P V I) dt ⎪ ⎩ y(0) = 1. • Utilizar ode45 para encontrar una solución aproximada en el intervalo [0, 3]. ¿Qué parece ocurrir cuando t crece? A continuación dibujar la solución en un intervalo más largo (que vaya al menos hasta t = 20). ¿Qué ocurre cuando t crece? • Resolver el PVI exactamente, comparar la solución exacta con la aproximación de Matlab e interpretar los resultados. 5