Practica ecuaciones diferenciales con Matlab/Simulink 5 PDF

Title Practica ecuaciones diferenciales con Matlab/Simulink 5
Course Ecuaciones Diferenciales
Institution Instituto Tecnológico de Tijuana
Pages 30
File Size 1.6 MB
File Type PDF
Total Downloads 76
Total Views 175

Summary

Ejercicios varios de ecuaciones diferenciales, resueltos utilizando Matlab y la herramienta Simulink...


Description

TECNOLÓGICO NACIONAL DE MÉXICO

INSTITUTO TECNOLÓGICO DE TIJUANA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA CARRERA: INGENIERÍA ELECTRÓNICA MATERIA: ECUACIONES DIFERENCIALES UNIDAD 2 Práctica 5 Equipo #6 ELABORADO POR: Aviña Zúñiga Mario Salvador Chávez Espinoza Gabriel Gavaldón Esparza Miguel Ángel Salgado Farfán Cristian Rene

-16212559 -16212564 -16212576 -16212604

PROFESOR: DRA. Diana Gamboa Loaiza

FECHA DE ENTREGA 02/03/2018

TIJUANA, B.C., MÉXICO

 Contenido  Índice de figuras

2

Objetivos

3

Fundamentos Teóricos

4

Procedimiento y descripción de actividades 1) Ejemplo 3.5 y 3.9 - MATLAB Ejemplo 3.5: Ejemplo 3.9: 2) Ejercicio 3.1-MATLAB 3) Ejercicio 3.2 4) Resolver en Simulink el problema 1 para los incisos (a-d) Ejercicio a) Ejercicio b) Ejercicio c) Ejercicio d) 5) Resolver en Simulink el problema 4 para los incisos (b,d) Ejercicio b) Ejercicio c) Ejercicio d)

6 6 6 7 8 11 13 13 15 17 19 22 22 24 25

Conclusiones

28

Referencias bibliográficas

29

1

Índice de figuras 1.1

Ventana de comandos de MATLAB donde se muestra la longitud de la respuesta usando el comando dsolve………………….

7

2.1 2.2 2.3 2.4 2.5 2.6 3.1 3.2 3.3 3.4 3.5 3.6

Código del inciso A……………………………….……………………………….. Respuesta del inciso A……………………………………….……………………. Código del inciso B……………………………….……………………………….. Respuesta del inciso B……………………………………….……………………. Código del inciso C……………………………….……………………………….. Respuesta del inciso C……………………………………….……………………. Código en Matlab ejercicio 1)........................................................................... Respuesta en Matlab ejercicio 1)..................................................................... Código en Matlab ejercicio 2)........................................................................... Respuesta en Matlab ejercicio 2)..................................................................... Código en Matlab ejercicio 3)........................................................................... Respuesta en Matlab ejercicio 3).....................................................................

8 8 9 9 10 10 11 11 11 11 12 12

4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8

Ejercicio a) en Simulink…..……………………………………................... Gráfica de la solución ejercicio a) en Simulink...…………………………. Código en Matlab comando ode45 a)……….…………………………….. Gráfica de la solución ejercicio a) en Matlab……………………………… Ejercicio b) en Simulink…..……………………………………................... Gráfica de la solución ejercicio b) en Simulink...…………………………. Código en Matlab comando ode45 b)……….…………………………….. Gráfica de la solución ejercicio b) en Matlab……………………………… Ejercicio c) en Simulink…..…………………………………….................... Gráfica de la solución ejercicio c) en Simulink...…………………………… Código en Matlab comando ode45 c)……….…………………………….... Gráfica de la solución ejercicio c) en Matlab……………………………….. Ejercicio d) en Simulink…..……………………………………..................... Gráfica de la solución ejercicio d) en Simulink...…………………………… Código en Matlab comando ode45 d)……….………………………………. Gráfica de la solución ejercicio d) en Matlab……………………………….. Diagrama de ED ejercicio 3.2 b)................................................................ Familia de soluciones para la función b)................................................... Solucion a problema b) por medio de matlab………………………………. Diagrama de ED ejercicio 3.2 c)................................................................ Familia de soluciones para la función c)................................................... Solucion a problema c) por medio de matlab………………………………. Diagrama de ED ejercicio 3.2 d)................................................................ Familia de soluciones para la función d)...................................................

13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 22 23 23 24 24 25 26 26

5.9

Solucion a problema d) por medio de matlab……………………………….

27 2

Objetivos Objetivo general ● Utilizar matlab y sus herramientas para la resolución de problemas matemáticos.

Objetivos específicos ● Emplear el uso del modelado matemático para trabajar con problemas de manera analitica. ● Identificar las características de un problema que permiten expresarlo de manera matemática y resolverlo.

3

Fundamentos Teóricos Ecuaciones diferenciales Las ecuaciones diferenciales (ED) son como su nombre indica ecuaciones que tienen la característica de relacionar de manera no “trivial” una función desconocida con una o más derivadas con respecto a una o más variables independientes de la misma función no conocida. Por no trivial hablamos de una ecuación diferencial que cumplen la definición de ED pero son identidades que funcionan sin importar la función se conozca o no, por lo que la respuesta es no satisfactoria y por lo tanto trivial. Un claro ejemplo de esto es la identidad trigonométrica: s in2 (dy/dx) + cos2 (dy/dx) = 1 Que sin importar que sea dy/dx el resultado siempre será 1. Las ED cuentan con diversas características que nos permiten introducirlas en diversas categorías o clasificarlas, estas clasificaciones pueden depender de su orden o de su grado. El orden de una ED está dado por la derivada de mayor orden con la que cuente la ecuación ejemplo: ex d2 y/dx2 + s enx dy/dx = x

Es de segundo orden debido a d2 y/dx2

Por otro lado el grado se relaciona directamente con el orden, esto debido a que el grado de una ED depende directamente del término que indica el orden de la misma, ya que el exponente de la derivada de mayor orden indicará el grado de esta, ejemplo: ex (d3 y/dx3 )3 + s enx (dy/dx)5 = x

Es de tercer grado debido a (d3 y/dx3) 3

Un término utilizado en la realización de esta práctica con respecto a las ED es el de trayectoria inclinada,estas se podrían definir, dada la ED y ’ = f (x, y ) , se llaman curvas de nivel o inclinadas a las obtenidas a imponer la condición y ’ = k . [2] Un problema de valor inicial de n-ésimo orden consiste en resolver la ED lineal: dn y

n−1

d

y

dy

an (x) dxn + an−1 (x) dxn−1 + ... + a1 (x) dx + a0(x)y = g(x) Sujeta a las n condiciones iniciales: y (x0 ) = y0 , y′(x0 ) = y1 , ... , y(n−1) (x0 ) = yn−1 Resolverlos consiste en encontrar una función y(x) en definida en un intervalo l que contiene a x0 , donde se cumple la evacuación y las condiciones iniciales. 4

La siguiente ED lineal de orden n: n n−1 d y d y dy an (x) dx + a0(x)y = g(x) n + an−1 (x) dxn−1 + ... + a1 (x) dx se dice que es NO homogénea. La siguiente ED lineal de orden n: n n−1 d y d y dy an (x) dx + a0(x)y = 0 n + an−1(x) dxn−1 + ... + a1(x) dx se dice que ES homogénea.

Matlab Matlab es un sistema de programación y cálculo basado en la manipulación de matrices. Su nombre proviene de la abreviación MATriz LABoratoy. Este sistema considera a los objetos como matrices de forma que podamos usar álgebra matricial y otras propiedades para ahorrar tiempo de cómputo. [1] Este software cuenta con un lenguaje de programación propio (lenguaje M) con el cual se trabaja en el entorno de desarrollo integrado (IDE) en el cual se trabaja con todas las funciones que le programa provee. Además de las funciones básicas que se puede esperar de un software matemático como resolución de ecuaciones, graficas y demas cosas de esta naturaleza matlab cuenta con mas softwares dentro de él mismo, como es el caso de simulink (este es incluido con matlab a partir de su segunda versión). A continuación se describen algunos de los comandos usados en esta práctica: dsolve: Permite obtener la solución exacta de algunas ED y de los correspondientes problemas con una o varias condiciones iniciales usando el argumento > > d solve(′f(x)′, ′x′ . [2] simplify: Auxilia reduciendo el resultado, se usa con el argumento >> simplif y(ans) diff: Comando una para derivar una función con el argumento > > d if f(f(x), x, n) roots: Comando que nos permite sacar las raíces de un polinomio p1x n + ... + pnx + pn+1 = 0 , se utiliza con el argumento > > d iff ([A B C D E ... N ])

Simulink Es un software incluido con matlab a partir de su segunda versión el cual comparte ciertas características con matlab pero le da otro enfoque a la manera de trabajar. Este es un entorno de programación visual matemático con el cual se pueden resolver diversos problemas, es una gran herramienta de simulación y modelado matemático por su naturaleza, además de esto es capaz de usarse a la vez junto con matlab para usar funciones con las que este no cuente o simplemente para desarrollar trabajos más complejos en los cuales se complementan.

5

Procedimiento y descripción de actividades

1) Ejemplo 3.5 y 3.9 - MATLAB Ejemplo 3.5: Resolver la ED y ′′ + 4y ′ + 4y = 0

La ecuación y ′′ + 4y ′ + 4y = 0 tiene como raíz doble m =− 2 del polinomio m2 + 4m + 4 = 0 , dando como resultado final una respuesta de y = C 1e −2x + C 2e −2x .

6

Ejemplo 3.9: Considere la EDLH L[y] = 0 L[y] = y

iv)

− 6y

îii)

+ 9y

ii)

− 24y

i)

− 20y

La respuesta usando el comando dsolve MATLAB nos lanza una respuesta con 3205 caracteres, es la respuesta correcta, pero es muy larga para poder visualizarla en el programa cómodamente, así que procederemos a usar el comando roots, el cual nos permite calcular las raíces de un polinomio de la forma p1x n + ... + pnx + pn+1 = 0 , así que usaremos el polinomio característico P = m4 − 6m3 + 9m2 − 24m − 20 .

7

2) Ejercicio 3.1-MATLAB a. y iv) − 10y iii) + 3y ii) − 2y i) − 20y = 0

Primero se presenta el código hecho en matlab, ya que este no debe ser resuelto con dsolve, se utilizó otro método resolviendo primeramente en forma numérica, ya hecho esto con el comando “roots” se encuentra las raíces de dicha solución y al final se encuentra el valor máximo que puede tomar y.

Figura 2.1: Código del inciso A.

Al correr este código nos da la siguiente solución numérica de la figura 2.2:

Figura 2.2: Respuesta del inciso A

8

b. y iii) − 2y ii) + 3y i) = 0 Para el problema b. se utilizó el mismo procedimiento que el problema a., por lo que primeramente se resuelve numéricamente y posteriormente se con el comando roots se encuentran las raíces, y ya al final se despliega el valor máximo que puede tomar y.

Figura 2.3: Código del inciso b.

La figura 2.4 representa la solución numérico del inciso b.

Figura 2.4: Respuesta del inciso b.

9

c. y iv) − 6y iii) + 9y ii) − 24y i) + 50y = 1 Ya habiendo resuelto los ejercicios a y b, este ejercicio se torna sencillo, ya que se aplica los mismos métodos y pasos, encontrando primeramente una solución numérica y después calculando las raíces, finalizando con el valor absoluto que puede tomar y.

Figura 2.5: Código del inciso c.

Y como en los ejemplos anteriores, al correr el programa despliega una respuesta numérica, así como se muestra en la figura 2.6.

Figura 2.6: Respuesta del inciso c.

10

3) Ejercicio 3.2 1. ( 10x + 50)2 y′′ − 3(x + 5 )y′ + 7y = x−2 Esta ecuación se resolvió por el comando dsolve como se muestra en la figura 3.1.

Figura 3.1: Código en Matlab ejercicio 1)

Y a dicha ecuación propuesta en la figura 3.1 se encuentra la siguiente solución en la figura 3.2.

Figura 3.2: Respuesta en Matlab ejercicio 1)

Esta ecuación se resolvió por el comando dsolve como se muestra en la figura 3.3.

Figura 3.3: Código en Matlab ejercicio 2)

Y a dicha ecuación propuesta en la figura 3.3 se encuentra la siguiente solución en la figura 3.4

Figura 3.4: Respuesta en Matlab ejercicio 2)

11

Esta ecuación se resolvió por el comando dsolve como se muestra en la figura 3.5.

Figura 3.5: Código en Matlab ejercicio 3)

Y a dicha ecuación propuesta en la figura 3.5 se encuentra la siguiente solución en la figura 3.6.

Figura 3.6: Respuesta en Matlab ejercicio 3)

12

4) Resolver en Simulink el problema 1 para los incisos (a-d) Las recomendaciones para simular ecuaciones diferenciales en Simulink: 1) Despejar el diferencial de mayor orden en un lado de la igualdad, pues es de mucha importancia para entender el diagrama. 2) Comenzar con los bloques “integrador” necesarios en simulink. 3) Hacer las operaciones necesarias (con otros bloques) para llegar o tener lo que está en el otro lado de la igualdad. 4) Agregar el bloque “scope” al final del programa, este nos muestra la función resultante o solución de la ecuación. 5) Correr el programa y luego dar doble click sobre el bloque “scope” para observar resultados. Modele los siguientes problemas de valores iniciales en Simulink y compare las soluciones con aquellos que usan ode45 en Matlab. a) b) c) d)

y′′ − 9y′ + 20y = 0, y′′ − 3y′ + 4y = 0, 8y′′ + 4y′ + y = 0, x′′ − x′ − 6x = 0,

y(0) = 0, y(0) = 0, y(0) = 1 , x(0) = 0,

y′(0) = 1 y′(0) = 1 y ′(0) = 0 x′(0) = 1

Ejercicio a) Despejando el diferencial de mayor orden queda: y′′ = 9y′ − 20y Entonces haciendo el programa en simulink, quedaría representado como en la figura 4.1.

Figura 4.1: ejercicio a) en Simulink. Haciendo uso del bloque “scope” en el programa se puede observar la respuesta de manera gráfica en un intervalo de 0 < t < 10 en la figura 4.2. 13

Figura 4.2: Gráfica de la solución ejercicio a) en Simulink. Ahora bien, en la Figura 4.3 se muestra el código en Matlab haciendo uso del comando ode45 para resolver la ecuación diferencial, observar que se necesitan dos scripts para usar este comando, pues en uno se declara una función y en el segundo es para aplicar dicho comando así como mostrar gráficamente la respuesta.

Figura 4.3: Código en Matlab comando ode45 a). Ejecutando el programa se obtiene la respuesta la cual es la función de color azul claro, mostrada en la Figura 4.4.

14

Figura 4.4: Gráfica de la solución ejercicio a) en Matlab. Observar que las soluciones son las mismas tanto en Matlab como en Simulink.

Ejercicio b) Despejando el diferencial de mayor orden queda: y′′ = 3y′ − 4y Entonces haciendo el programa en simulink, quedaría representado como en la figura 4.5.

Figura 4.5: ejercicio b) en Simulink. Haciendo uso del bloque “scope” en el programa se puede observar la respuesta de manera gráfica en un intervalo de 0 < t < 10 en la figura 4.6 . 15

Figura 4.6: Gráfica de la solución ejercicio b) en Simulink. Ahora bien, en la Figura 4.7 se muestra el código en Matlab haciendo uso del comando ode45 para resolver la ecuación diferencial, observar que se necesitan dos scripts para usar este comando, pues en uno se declara una función y en el segundo es para aplicar dicho comando así como mostrar gráficamente la respuesta.

Figura 4.7: Código en Matlab comando ode45 b) Ejecutando el programa se obtiene la respuesta la cual es la función de color azul claro, mostrada en la Figura 4.8.

16

Figura 4.8: Gráfica de la solución ejercicio b) en Matlab. Observar que las soluciones son las mismas tanto en Matlab como en Simulink.

Ejercicio c) Despejando el diferencial de mayor orden queda: y′′ = −4y8′−y Entonces haciendo el programa en simulink, quedaría representado como en la figura 4.9.

Figura 4.9: ejercicio c) en Simulink. Haciendo uso del bloque “scope” en el programa se puede observar la respuesta de manera gráfica en un intervalo de 0 < t < 10 en la figura 4.10 17

Figura 4.10: Gráfica de la solución ejercicio c) en Simulink. Ahora bien, en la Figura 4.11 se muestra el código en Matlab haciendo uso del comando ode45 para resolver la ecuación diferencial, observar que se necesitan dos scripts para usar este comando, pues en uno se declara una función y en el segundo es para aplicar dicho comando así como mostrar gráficamente la respuesta.

Figura 4.11: Código en Matlab comando ode45 c) Ejecutando el programa se obtiene la respuesta la cual es la función de color azul claro, mostrada en la Figura 4.12.

18

Figura 4.12: Gráfica de la solución ejercicio c) en Matlab. Observar que las soluciones son las mismas tanto en Matlab como en Simulink.

Ejercicio d) Despejando el diferencial de mayor orden queda: x′′ = x′ + 6x Entonces haciendo el programa en simulink, quedaría representado como en la figura 4.13.

Figura 4.13: ejercicio d) en Simulink. Haciendo uso del bloque “scope” en el programa se puede observar la respuesta de manera gráfica en un intervalo de 0 < t < 10 en la figura 4.14.

19

Figura 4.14: Gráfica de la solución ejercicio d) en Simulink. Ahora bien, en la Figura 4.15 se muestra el código en Matlab haciendo uso del comando ode45 para resolver la ecuación diferencial, observar que se necesitan dos scripts para usar este comando, pues en uno se declara una función y en el segundo es para aplicar dicho comando así como mostrar gráficamente la respuesta.

Figura 4.14: Código en Matlab comando ode45 d)

Ejecutando el programa se obtiene la respuesta la cual es la función de color azul claro, mostrada en la Figura 4.16.

20

Figura 4.16: Gráfica de la solución ejercicio d) en Matlab. Observar que las soluciones son las mismas tanto en Matlab como en Simulink. Entonces como conclusión, ahora conocemos dos maneras de como solucionar una ecuación de segundo orden, a través del software de Matlab, ambas muy sencillas y no tan complejas.

21

5) Resolver en Simulink el problema 4 para los incisos (b,d) Las recomendaciones para simular ecuaciones diferenciales en Simulink: 1) Despejar el diferencial de mayor orden en un lado de la igualdad, pues es de mucha importancia para entender el diagrama. 2) Comenzar con los bloques “integrador” necesarios en simulink. 3) Hacer las operaciones necesarias (con otros bloques) para llegar o tener lo que está en el otro lado de la igualdad. 4) Agregar el bloque “scope” al final del programa, este nos muestra la función resultante o solución de la ecuación. 5) Correr el programa y luego dar doble click sobre el bloque “scope” para observar resultados. Modele las siguiente ecuaciones en simulink con las condiciones iniciales apropiadas y grafique la solución. b) y′′ + 2y′ + y = 5 + 10sen(2x) c) y′′ − 5y′ + 6y = 3ex d) y′′ + 5y′ − 6y = 3ex

Ejercicio b) Aun en estos casos que las ecuaciones diferenciales no son homogéneas es necesario igualar todo a la diferencial de mayor orden para poder realizar el modelado en simulink. y′′ =− 2y′ − y + 5 + 10sen(2x) Ya que tenemos despejada correctamente la ecuación, el diagrama de la ED quedaría como en la Figura 5.1:

Figura 5.1: Diagrama de ED ejercicio 3.2 b) 22

Con este modelo podemos graficar la familia de respuestas para este sistema en específico la cual podemos observar en la Figura 5.2.

Figura 5.2: Familia de soluciones para la función b) Utilizando las herramienta de matlab para resolver las ecuaciones diferenciales y la función de plot, declaramos un vector para definir el rango en el que queremos mostrar nuestras respuestas y graficamos la solución como vemos en la Figura 5.3.

Figura 5.3: Solución a problema b) por medio de matlab

23

Ejercicio c) Aun en estos casos que las ecuaciones diferenciales no son homogéneas es necesario igualar todo a la diferencial de mayor orden para pod...


Similar Free PDFs