Clase 3 Aplicaciones Numéricas en Investigación de Operaciones
description
Transcript of Clase 3 Aplicaciones Numéricas en Investigación de Operaciones
![Page 1: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/1.jpg)
Aplicaciones Numéricas en Investigación de Operaciones3
Prof. Gonzalo Müller
Postgrado de Investigación de Operaciones
Facultad de Ingeniería
Universidad Central de Venezuela
![Page 2: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/2.jpg)
Clase anteriorClase anterior
� Bits y Bytes
� Sistemas de Numeración
� Sistema Binario de Numeración
� Números:
� Punto Fijo.
� Punto flotante
� Precisión Sencilla
� Precisión Doble
� Redondeo
![Page 3: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/3.jpg)
Clase anteriorClase anterior
� Limitaciones computacionales
� Overflow Error
� Underflow Error
� Errores
� de redondeo
� de truncamiento(discretización de un problema real)
� Números en Matlab
![Page 4: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/4.jpg)
Clase anteriorClase anterior
� Gráficas de Línea: plot, plot3
� Gráficas 3D: surf, mesh, meshgrid
� Ajustando la gráfica: axis, grid.
� Documentando la gráfica: *label, title, legend.
�� Otras gráficas: scatter, hist, stem, stairs, bar, pie,
scatter3
� Gráficas Múltiples: subplot
� Gráfica de una función: fplot
� Apuntador a función: function_handle
![Page 5: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/5.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Arreglo de celdas (Cell arrays): constituyen un arreglo donde cada elemento del arreglo es un arreglo.
...
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 5
... ...
...
![Page 6: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/6.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Para construir un arreglo de celdas:
� Se coloca la colección entre llaves, {}.
variable = {arreglo1 arreglo2; ...}
� Se utiliza la función cell:
variable = cell(tamaño1, tamaño2, ...)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 6
variable = cell(tamaño1, tamaño2, ...)
� Para acceder a un elemento del arreglo de celdas se
debe utilizar las llaves
variable{indice1, indice2, ...}
![Page 7: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/7.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
Ejemplo:
A = [2 1; 3 5; 6 2]
B = [3 4; 1 5]
C = [2.5; 3.1; 2.4]
D = 2.5
3 4
1 5
2 1
3 5
6 2
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 7
D = 2.5
E = {A B; C D}
J = E{1,1} * E{1,2}
2.5
3.1
2.4
2.5
Crea arreglo de celdas
Accede a arreglo de
celdas
![Page 8: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/8.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Estructuras: vector de celdas donde cada elemento se
accede a través de un nombre (y no un número):
…
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 8
{1} {N}
…
![Page 9: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/9.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Estructuras: vector de celdas donde cada elemento se
accede a través de un nombre (y no un número):
…
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 9
…
Cada elemento de la estructura se le llama campo
Nombre1 NombreN{1} {N}
![Page 10: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/10.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Para construir una estructura:
� A cada campo se le da un nombre y se asigna un
valor:
variable.campo1 = valor1
variable.campo2 = valor2
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 10
variable.campo2 = valor2
…
variable.campoN = valorN
![Page 11: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/11.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Se utiliza la función struct:
variable = struct(campo1, valor1,
campo2, valor3 ..., campoN, valorN)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 11
campo2, valor3 ..., campoN, valorN)
� Para acceder a un campo de la estructura se debe
utilizar el nombre del campo:
variable.campoK
![Page 12: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/12.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
Ejemplo:
3 4
1 5
2 1
3 5
6 2
2.5
3.1
2.4
2.5
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 12
F.matriz1 = [2 1; 3 5; 6 2]
F.matriz2 = [3 4; 1 5]
F.vector1 = [2.5; 3.1; 2.4]
F.valor1 = 2.5
H = F.matriz1* F.matriz2
Crea estructura
Accede a la estructura
![Page 13: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/13.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Texto: vector fila donde cada elemento es un carácter.
MATLAB
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 13
![Page 14: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/14.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Texto: vector fila donde cada elemento es un carácter.
MATLAB
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 14
M A T L A B
![Page 15: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/15.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Texto: vector fila donde cada elemento es un carácter.
MATLAB
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 15
Ejemplo:
Text1 = ‘MATLAB’
Text2 = [‘M’ ‘A’ ‘T’ ‘L’ ‘A’ ‘B’]
M A T L A B
![Page 16: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/16.jpg)
Otros tipos de datos en Otros tipos de datos en MatlabMatlab
� Como sería un arreglo de textos?
‘MATLAB’
‘LINUX’ ?
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 16
‘LINUX’
‘C++’
‘2009’
?
![Page 17: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/17.jpg)
Archivos en Archivos en MatlabMatlab
� Matlab trabaja básicamente con dos tipos de archivos:
� Archivo de variables Matlab.
� Permite almacenar múltiples variables.
� La extensión mat le indica a Matlab que es unarchivo de variables (no es de texto).
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 17
archivo de variables (no es de texto).
� Archivo de texto.
� Solo se puede almacenar una matriz.
� La extensión del archivo puede ser cualquiera menosmat.
![Page 18: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/18.jpg)
Archivos en Archivos en MatlabMatlab
� El archivo de texto de matrices debe tener el siguienteformato:
� Espacios en blancos separan los elementos de cada fila.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 18
A11 A22 ... A1n
A12 ... A2n
...
Am1 Am2 ... Amn
El archivo puede contener cometarios comenzando con el carácter %
![Page 19: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/19.jpg)
Archivos en Archivos en MatlabMatlab
� El archivo de texto de matrices debe tener el siguienteformato:
� Espacios en blancos separan los elementos de cada fila.
� Cada línea representa una fila.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 19
A11 A22 ... A1n
A12 ... A2n
...
Am1 Am2 ... Amn
El archivo puede contener cometarios comenzando con el carácter %
![Page 20: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/20.jpg)
Archivos en Archivos en MatlabMatlab
� El archivo de texto de matrices debe tener el siguienteformato:
� Espacios en blancos separan los elementos de cada fila.
� Cada línea representa una fila.
� Cada fila debe tener la misma cantidad de elementos
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 20
A11 A22 ... A1n
A12 ... A2n
...
Am1 Am2 ... Amn
El archivo puede contener cometarios comenzando con el carácter %
![Page 21: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/21.jpg)
Archivos en Archivos en MatlabMatlab
� Las principales funciones para manejar archivos:
� Escritura:
� save.
� dlmwrite.
� Lectura:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 21
� Lectura:
� load.
� dlmread.
![Page 22: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/22.jpg)
Escritura de archivos en Escritura de archivos en MatlabMatlab
� save: guarda los valores de las variables indicadas enun archivo de variables Matlab.
save(‘archivo.mat’, ‘variable1’, ...,
‘variableN’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 22
� Si no se indican variables se almacena todas lasvariables de trabajo existentes.
whos –file archivo lista las variables definidas, sus tipos y sus tamaños en el archivo indicado
![Page 23: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/23.jpg)
Escritura de archivos en Escritura de archivos en MatlabMatlab
� dlmwrite: guarda una matriz en un archivo de texto.
dlmwrite(‘archivo’,variable)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 23
![Page 24: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/24.jpg)
Escritura de archivos en Escritura de archivos en MatlabMatlab
� dlmwrite: guarda una matriz en un archivo de texto.
dlmwrite(‘archivo’,variable)
Se puede guarda una matriz en un archivo de texto
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 24
Se puede guarda una matriz en un archivo de texto con un delimitador específico:
dlmwrite(‘archivo’,variable,
‘delimitador’)
la coma , es el carácter por defecto en dlmwrite
![Page 25: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/25.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
� load: cargar matrices o variables desde un archivo de variables Matlab.
load(‘archivo.mat’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 25
� Cada variable almacenada es restaurada en memoriacon el nombre que fue almacenada.
� Si la variable existe en memoria, se sobrescribe.
![Page 26: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/26.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
� load: cargar matrices o variables desde un archivo de variables Matlab.
load(‘archivo.mat’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 26
� Cada variable almacenada es restaurada en memoriacon el nombre que fue almacenada.
� Si la variable existe en memoria, se sobrescribe.
Se puede indicar cuales variables cargar del archivo:
load(‘archivo.mat’,’var1’,…,’varN’)
![Page 27: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/27.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
� Si se desea se puede almacenar las variables contenidas en una archivo de datos Matlab en una variable:
variable = load(‘archivo.mat’,…,’varN’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 27
La variable resultante es una estructura donde cadacampo corresponde con una variable del archivo conel mismo nombre con el que fue almacenada.
![Page 28: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/28.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
� dlmread : Carga la matriz contenida en un archivo de texto en una variable especifica:
variable = dlmread( ‘archivo.ext’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 28
![Page 29: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/29.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
� dlmread : Carga la matriz contenida en un archivo de texto en una variable especifica:
variable = dlmread( ‘archivo.ext’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 29
Si el archivo de texto está delimitado con un carácter específico se debe emplear:
variable = dlmread(
‘archivo.ext’,’delimita’)
![Page 30: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/30.jpg)
Lectura de archivos en Lectura de archivos en MatlabMatlab
Es posible cargar un rango de la matriz almacenada:
variable = dlmread(
‘archivo.ext’,’delimita’, ‘rango’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 30
rango:
� vector:[FilaSup ColumnaIzq FilaInf ColumnaDer]
Ejemplo: [0 1 1 2]
� rango notación hoja de calculo A1..Z9
la función importdata permite leer data con
encabezados y colocarlo en un estructura
![Page 31: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/31.jpg)
Archivos en Archivos en MatlabMatlab
� Las matrices pueden ser definidas en otrosprogramas siempre que se exporte correctamente lainformación.
� Excel, Access, etc.
� Las funciones xlsread y xlswrite permite trabajar conarchivos Excel directamente.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 31
archivos Excel directamente.
Es posible importar archivos de otros
formatos utilizando el Import Wizard
Existen otras funciones para el manejo de archivo que
permiten establecer un mayor detalle o trabajar a bajo nivel
![Page 32: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/32.jpg)
� Construir una función en Matlab que dado el nombre
del archivo retorne un vector con:
� el número del expediente con la máxima oferta
(utilizar la función max).
� el número del expediente con la mínima oferta� el número del expediente con la mínima oferta
(utilizar la función min).
El archivo tiene el siguiente formato:
#expediente1 oferta1
… …
#expedienteN ofertaN
![Page 33: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/33.jpg)
Archivos en Archivos en MatlabMatlab
� print: almacena en un archivo la última imagen generada:
print(‘archivo.ext’,’-dFormato’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 33
Los principales formatos: Formato -dFormato
BMP mono -dbmpmono
BMP 24 bit -dbmp
JPEG -djpeg
PDF -dpdf
PGM -dpgm
PNG -dpng
PPM -dppm
TIFF -dtiff
![Page 34: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/34.jpg)
Archivos en Archivos en MatlabMatlab
� La función print también sirve para imprimir el gráfico
print()
Imprime un gráfico en la impresora por defecto.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 34
Imprime un gráfico en la impresora por defecto.
� Si es necesario imprimir en un impresora especificase debe indicar su nombre:
print(‘-Pnombre’)
![Page 35: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/35.jpg)
� Construir una función en Matlab que dado el nombre
del archivo de origen y del archivo de salida:
� realice un histograma con las ofertas.
� guarde la imagen en el archivo de salida.
� retorne la media de las ofertas (utilizar la función� retorne la media de las ofertas (utilizar la función
mean)
El archivo de origen tiene el siguiente formato:
#expediente1 oferta1
… …
#expedienteN ofertaN
![Page 36: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/36.jpg)
� El manejo de archivos es de gran utilidad.
� Persistencia de dato.
� Interconexión de procesos.
� ...
Archivos en Archivos en MatlabMatlab
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 36
Proceso 1
Herramienta 1
Datos
Entrada
Datos
SalidaProceso 2
Herramienta 2Resultado
![Page 37: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/37.jpg)
Salida en Salida en MatlabMatlab
� disp: presenta información en la ventana de comandos
disp(‘texto’)
disp(variable)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 37
disp(variable)
Ejemplo:
disp(‘MATLAB’)
disp(Text1)
disp(A)
disp(F)
![Page 38: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/38.jpg)
Salida en Salida en MatlabMatlab
� Si se requiere concatenar texto y el valor de variables
es necesario utilizar las instrucciones:
� num2str: convierte número a string
� int2str: convierte entero a string
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 38
disp([‘texto’ num2str(variable)])
Ejemplo:
disp([‘Resultado: ’ num2str(H)])
![Page 39: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/39.jpg)
Entrada en Entrada en MatlabMatlab
� input: solicita un dato de entrada del usuario.
variable = input(‘texto’)
Ejemplo:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 39
Ejemplo:
k = input(‘Valor inicial:’)
![Page 40: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/40.jpg)
Entrada en Entrada en MatlabMatlab
� Si el dato de entrada del usuario es un string es
necesario incluir un parámetro adicional:
variable = input(‘texto’, ‘s’)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 40
Ejemplo:
arc = input(‘Nombre del archivo:’, ‘s’)
![Page 41: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/41.jpg)
FuncionesFunciones
� Una función puede devolver más de un valor:
function [salida1,salida2,...] =
nombre(parámetro1, parámetro2, ... )
...
salida = ...
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 41
� Llamada:[variable1,variable2,…]=nombre(argumento1,…
...
salida2 = ...
...
nombre.m
![Page 42: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/42.jpg)
� Construir una función en Matlab que dado el nombre
del archivo:
� retorne el número del expediente con la máxima
oferta (utilizar la función max).
� retorne el número del expediente con la mínima� retorne el número del expediente con la mínima
oferta (utilizar la función min).
� colocar textos sobre el progreso de las operaciones.
El archivo tiene el siguiente formato:#expediente1 oferta1
… …
#expedienteN ofertaN
![Page 43: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/43.jpg)
� Construir una función en Matlab que retorne el
máximo, el mínimo y la media aritmética de los
elementos de un vector de entrada:
� Máximo
� Mínimo
oferta1
…
� Utilizar las funciones matemáticas que ofrece
Matlab: mean, max y min.
� Colocar textos sobre el progreso de las operaciones.
� Mínimo
� Media
…
ofertaN
![Page 44: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/44.jpg)
FuncionesFunciones
� Una función puede no devolver ningún valor:
function nombre(parámetro1, parámetro2, ... )
...
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 44
nombre.m
![Page 45: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/45.jpg)
� Construir una función en Matlab que dado el nombre
del archivo de origen y del archivo de salida:
� realice un histograma con las ofertas.
� guarde la imagen en el archivo de salida.
� colocar textos sobre el progreso de las operaciones.� colocar textos sobre el progreso de las operaciones.
El archivo de origen tiene el siguiente formato:
#expediente1 oferta1
… …
#expedienteN ofertaN
![Page 46: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/46.jpg)
� Construir una función en Matlab para evaluar:
y = x3*sen(x) – 1/x
� Construir una función para graficar un función en R,
esta debe aceptar como parámetros de entrada:
� Función, x mínima, x máxima.� Función, x mínima, x máxima.
� Título.
� Archivo de salida del gráfico.
� Probar con la función definida en la primera parte
� Colocar textos sobre el progreso de las operaciones.
![Page 47: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/47.jpg)
� Construir una función en Matlab que dado:
� nombre de archivo 0 (entrada).
� nombre de archivo 1 (salida).
� nombre de archivo 2 (salida).
� Calcule y almacene en el archivo 1 (.mat) elArchivos
� Calcule y almacene en el archivo 1 (.mat) el
máximo, el mínimo y la media aritmética de los
elementos de la matriz (n x 2) del archivo 0.
� Realice un grafico scatter y guarde en el archivo 2.
� La función debe colocar textos sobre el progreso de las
operaciones.
![Page 48: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/48.jpg)
ResumenResumen
� Otros tipos de datos en Matlab
� Arreglo de celdas
� Estructuras
� Texto
� Archivos en Matlab
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 48
� Archivos en Matlab
� Archivos Matlab (.mat)
� Archivo de texto
� Escritura:
� save.
� dlmwrite.
![Page 49: Clase 3 Aplicaciones Numéricas en Investigación de Operaciones](https://reader033.fdocuments.ec/reader033/viewer/2022051312/5469eeb1b4af9fe0338b4e27/html5/thumbnails/49.jpg)
ResumenResumen
� Lectura:
� load.
� dlmread.
� Archivo de gráfico: print
� Salida en Matlab: disp
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 3 – GM – 49
� Salida en Matlab: disp
� Entrada en Matlab: input
� Funciones
� más de un retorno: function [salida1,salida2,...] = …
� sin retorno: function nombre(parámetro1,…