Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ayudantía 01 - 18 de Agosto
Ayudantía 01 - 18 de Agosto
Ingeniería Química y
Bioprocesos
Este material fue generado en base a “Introduction to Matlab” del profesor Ricardo Pérez .
Matlab
• Herramienta científica – computacional
DIQB
Lugar de Trabajo
• Ventana de comandos → Escritura de código y datos / Resultados Numéricos
DIQB
Variables
• Pueden ser escalares – vectores – matrices
DIQB
Formatos
• Las variables son guardadas con 16 dígitos pero pueden ser mostradas
con diferentes formatos:
DIQB
Arrays – Vectores – Matrices
• Son creados con “[]”
DIQB
Acceso a elementos
• Se puede ocupar el formato (n,m) o un valor absoluto que ira de arriba hacia abajo contando (n)
DIQB
Creación de Matrices / Vectores
• Para crear matrices existen funciones base de Matlab:
• Zeros (r,c)
• Zeros (n)
• Ones (r,c)
• Ones (n)
• Linspace (x1,x2,n)
• Logspace(x1,x2,n)
DIQB
Elementos computacionales de Matlab
• Cálculos de Matrices – Vectores • Cálculos de Matrices – Vectores por elemento
• El símbolo “ ^ ” es para elevar matrices, ósea, • El símbolo “ .^ ” es para elevar matrices, ósea,
multiplicarse por si misma (Matrices cuadradas) multiplicarse por si misma (Matrices cuadradas)
DIQB
Gráficos
• Los gráficos generados por Matlab son de alta calidad y versátiles.
DIQB
Gráficos
• Los comandos “hold on” y “hold off” sirven para que se mantenga el gráfico “abierto” para adicionar mas
información
• El comando “subplot (m,n,p)” sirve para crear un conjunto de gráficos en formato matriz
DIQB
Funciones
• Una función acepta un input de valores y entrega valores de salida
• Las variables creadas dentro de un archivo de función no afecta la ventana de comandos, a menos que se
utilice un código para lograrlo
DIQB
Estructura del Código
• Existen diferentes estructuras que permiten tomar decisiones en el flujo del código
DIQB
Funciones Anónimas
• Es una función escrita en una liena de código y tienen como estructura:
variable = @(argumentos) expresión
DIQB
Sistema de ecuaciones
• Ecuaciones lineales se pueden resolver con el uso de matrices
DIQB
Sistema de ecuaciones
• Ecuaciones no lineales es posible ocupar el comando “fsolve” que permite resolver un sistema de ecauciones
igualadas a 0
x2 − 2 = 0
y2 − 5 = 0
DIQB
Ecuaciones diferenciales ordinarias
• Muchos modelos y dinámicas funciones con ecuaciones diferenciales.
𝐹 𝑡, 𝑦 ′ , 𝑦 ′′ , … , 𝑦 𝑛 = 0
• Tenemos 2 casos:
DIQB
Ecuaciones diferenciales ordinarias
𝑦𝑖′ 𝑥 = 𝑓𝑖 𝑡, 𝑦1 , 𝑦2 , … , 𝑦𝑛 ; 𝑦𝑖 𝑡0 = 𝑦𝑖,0 , 𝑖 = 1,2, … , 𝑛
DIQB
Ecuaciones diferenciales ordinarias
Existen varios comandos que pueden resolver este tipo de problemas:
DIQB
Ecuaciones diferenciales ordinarias
• Problemas de valor inicial:
𝑑𝒚
𝒚′ = = 𝒇 𝑡, 𝒚 ; 𝒚 𝑡 = 0 = 𝐲𝟎
𝑑𝑡
DIQB
Ecuaciones diferenciales ordinarias
• El código sería: [T,Y] = odexxx(@fun, [ti tf], y0)
DIQB
Ejercicios
Representación del producto de la circunferencia de las funciones:
𝑦 = cos 𝑡
𝑥 = sin 𝑡 , −𝜋 ≤ 𝑡 ≤ 𝜋
i. Gráficos de las ecuaciones en función del tiempo:
ii. Graficar la función y vs. x.
DIQB
Ejercicios
Las oscilaciones de un péndulo pueden simularse utilizando el siguiente modelo no lineal:
𝑑2𝜃 𝑔
+ sin(𝜃) = 0
𝑑𝑡 2 𝑙
𝑚
Dónde 𝜃 es el ángulo de desplazamiento en radianes, 𝑔 = 9.81 𝑠2 la constante gravitacional, y 𝑙 el largo del
péndulo. Para pequeños desplazamientos angulares, sin 𝜃 ~ 𝜃 y el modelo puede ser linealizado como
𝑑2𝜃 𝑔
+ 𝜃=0
𝑑𝑡 2 𝑙
Utilice ode45 para encontrar el desplazamiento angular 𝜃 en función del tiempo para el modelo lineal y no
lineal, donde 𝑙 = 0.6𝑚. Primero, resuelva para el caso en que la condición inicial es un desplazamiento pequeño
𝑑𝜃 𝜋 𝑑𝜃
( 𝜃 = 0.8 𝑦 𝑑𝑡 = 0). Luego, repita el cálculo para desplazamientos grandes ( 𝜃 = 2 , 𝑑𝑡 = 0) . Para cada caso,
grafique las simulaciones lineales y no lineales en el mismo gráfico utilizando el comando subplot.
DIQB