Post on 16-Nov-2014
description
Aplicaciones Numéricas en Investigación de Operaciones2
Prof. Gonzalo Müller
gmullerb@mail.com
Postgrado de Investigación de Operaciones
Facultad de Ingeniería
Universidad Central de Venezuela
Clase anterior
� Pautas de curso.� Matlab
� Ambiente de trabajo Matlab� Funciones Matemáticas� Variables
Definición de nombre
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 2
� Definición de nombre� Asignación
� Arreglos� acceder a un elemento o submatriz específica
� Operadores Aritméticos� por elemento entre matrices: .*, ./, .^
Clase anteriorClase anterior
� Definición de Funciones
� Encabezado
� Cuerpo
� Variable de Retorno
� Nombre del archivo y de función deben coincidir.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 3
� Nombre del archivo y de función deben coincidir.
� ; se coloca al final de una instrucción para evitar lapresentación en pantalla del resultado.
Bits y BytesBits y Bytes
El computador solo es capaz de almacenar un conjunto de 0s y 1s.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 4
Bits y Bytes
El computador sólo es capaz de almacenar un conjunto de 0s y 1s.
� Bit: es la localidad de almacenamiento más pequeña.
� Físicamente constituye un elemento biestable queesta encendido o apagado.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 5
esta encendido o apagado.
� Es capaz de almacenar un 1 ó un 0.
Bit Almacena
Apagado 0
Encendido 1
Bits y Bytes
� Aislado sirve de poco por lo que se trabaja enforma conjunta.
Ejemplo: 2 bits puede representar 4 situaciones:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 6
Bit 1 Bit 2 Almacena
00
01
10
11
Bits y BytesBits y Bytes
Ejemplo: 3 bits puede representar 8 situaciones:
Bit 1 Bit 2 Bit 3 Almacena
000
001
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 7
001
010
011
100
101
110
111
Bits y Bytes
� Byte: es un conjunto de 8 bits.
� En los computadores la localidad de menor tamañoes un byte.
LocalidadTamaño: 8 bits
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 8
LocalidadTamaño: 8 bits
Sistemas de Numeración
� El computador sólo es capaz de almacenar unconjunto de 0s y 1s, por lo tanto si se desea almacenarun valor como 524 es necesario realizar la conversióna 0s y 1s, lo que lleva a utilizar diferentes sistemas denumeración.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 9
� Sistema Binario.
Sistemas de Numeración
� Sistema numeración Decimal.
� Alfabeto: 0 1 2 3 4 5 6 7 8 9
� Cardinalidad del alfabeto: 10
� Cada dígito tiene un valor relativo según la posiciónque ocupa.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 10
que ocupa.
Ejemplo:
8 x 102 + 7 x 101 + 6 x 100 = 876
Posición 2 1 0Digito 8 7 6
Sistemas de Numeración
� Sistema numeración Binario.
� Alfabeto: 0 1
� Cardinalidad del alfabeto: 2
� Cada dígito tiene un valor relativo según la posiciónque ocupa.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 11
que ocupa.
� Notación : NÚMERO2
Sistemas de NumeraciónSistemas de Numeración
Ejemplo: Obtener la representación decimal de 1012:
Posición 2 1 0Digito 1 0 1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 12
1 x 22 + 0 x 21 + 1 x 20 = 5
Sistemas de Numeración
� En general, para obtener la representación decimal de un número:
∑−
=
1
*Dígitos
kk BaseDígitoNÚMERO
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 13
∑=
=
0
*k
k BaseDígitoNÚMERO
Números
� Representación de los números:
� Punto fijo.
� Punto flotante.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 14
Números
� Punto Fijo.
� Se especifica una cantidad de fija de dígitos antes ydespués del punto decimal.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 15
0 1 2 3 4 5 0 012.345
n1 n2
punto decimal
Números
� Punto flotante: el punto decimal no esta fijo.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 16
punto decimal
Números
� Punto flotante: el punto decimal no esta fijo.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 17
punto decimal
Números
� Se rige según la norma IEEE 754.
� La forma como es almacenado un número realestaba basado en la notación científica:
5.67x1056
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 18
5.67x1056
5.67→ mantisa
56→ exponente
Números
�Mantisa normalizada
0.1 ≤ Mantisa normalizada < 1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 19
0.567x1057
0.567→ mantisa normalizada
57→ exponente
Números
� Solo sería necesario almacenar:
567
57
� Existe un ahorro en memoria:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 20
0
.
x
10
Números
� En general:
Exponente Mantisa
s n bits m bits
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 21
� La Mantisa es un número binario.
� El Exponente es un número entero sin signo.
� La Base es 2, no 10:
(-1)Signo x 1.Mantisa x 2 Exponente – Bias
Números
� Real de 4 bytes, Precisión Sencilla:
� En el exponente se puede almacenar:
Exponente Mantisa
s 8 bits 23 bits
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 22
0 … 255 (1 … 254)
� 6 cifras significativas.
� 16777216 puntos en el rango.
(-1)Signo x 1.Mantisa x 2 Exponente – 127
Números
� El mayor número que se puede representar:
1.11111111...12 x 2 127
3.4028234663852886 x 10 38
� En número más pequeño que se puede representar:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 23
1.17549435 x 10 -38
� La separación entre un número y otro:
1.1920929 x 10 -7
Números
� Real de 8 bytes , Precisión Doble:
Exponente Mantisa
s 11 bits 52 bits
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 24
� En el exponente se puede almacenar:
0 … 2047(1 … 2046)
� 15 cifras significativas.
� 9007199254740992 puntos en el rango.
(-1)Signo x 1.Mantisa x 2 Exponente – 1023
Números
� El mayor número que se puede representar:
1.11111111...12 x 2 1023
1.7976931348623158 x 10 308
� En número más pequeño que se puede representar:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 25
2.2250738585072014 x 10 -308
� La separación entre un número y otro:
2.2204460492503131 x 10 -16
NúmerosNúmeros
Real de 4 Byte
03.4028234663852886 x 10 38-3.4028234663852886 x 10 38
1.17549435 x 10-38- ∞ ∞
1.1920929 x 10-7
Dos número consecutivos de subconjunto finito
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 26
Real de 8 Byte
01.7976931348623158 x 10 308-1.7976931348623158 x 10 308
2.2250738585072014 x 10-308- ∞ ∞
2.2204460492503131 x 10-16
Dos número consecutivos de subconjunto finito
Números
� Un número que no puede ser representado se redondea, esto quiere decir:
0.d d d … d Si 0 ≤ d ≤ 4
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 27
0.d1 d2 d3 … dt Si 0 ≤ dt+1 ≤ 4
0.d1 d2 d3 … dt + 10-t Si dt+1 ≥ 5n =
0.d1 d2 d3 … dt Si dt+1 = 0
0.d1 d2 d3 … dt + 2-t Si dt+1 = 1n =
NúmerosNúmeros
n = 0.d1 d2 d3 … dt dt+1 dt+2 dt+3 dt+4 dt+5
información perdida
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 28
t = 5
1.234567
1.234568
Son iguales
1.23457
Limitaciones computacionales
� El conjunto de número que se puede representar en el computador es finito.
� Esto ocasiona problemas:
� Al ingresar los datos de entrada.
� Al representar resultados intermedios resultados
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 29
� Al representar resultados intermedios resultadosde las operaciones matemáticas.
� Aunque los datos de entrada pertenezcan alconjunto de números, el resultado de las operacionespuede no pertenecer.
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
a = 7.35e+210
b = 9.01e+201
c = a*b
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 30
who lista las variables definidas
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
a = 7.35e+210
b = 9.01e+201
c = a*b Overflow Error: Número más grande de lo que puede ser representado
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 31
who lista las variables definidas
representado
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
a = 7.35e-210
b = 9.01e-201
c = a*b
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 32
whos lista las variables definidas, sus tipos y sus tamaños
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
a = 7.35e-210
b = 9.01e-201
c = a*b Underflow Error: Número más pequeño de lo que puede ser representado
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 33
whos lista las variables definidas, sus tipos y sus tamaños
representado
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
c = 0.5 – 0.1 – 0.1 - 0.1 – 0.1 – 0.1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 34
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
c = 0.5 – 0.1 – 0.1 - 0.1 – 0.1 – 0.1
Debería ser 0!
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 35
Limitaciones computacionalesLimitaciones computacionales
Ejemplo:
c = 0.5 – 0.1 – 0.1 - 0.1 – 0.1 – 0.1
Debería ser 0!
La representación binaria de 0.1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 36
0.000110011001100110011001100110011...
Requiere un número infinito de dígitos por lo tanto el computador trabaja con un aproximación de 0.1.
Errores
� Establecer la certeza de los resultados obtenidos.
� Básicamente dos factores afectan ésta certeza:
� errores de redondeo
� errores de aproximación.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 37
Errores
� Errores de redondeo:
� Debido a la representación de valores con elconjunto finito de números que maneja elcomputador.
� Omnipresente
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 38
� Omnipresente
� Siempre existirá una incertidumbre en el últimodigito decimal obtenido
Errores
� Errores de truncamiento:
� Error obtenido como resultado de la discretizaciónde un problema real.
� Método que obtiene soluciones aproximadas per separa un problema real.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 39
para un problema real.
� Esta diferencia entre la solución aproximada y la realse conoce como error de truncamiento.
Ejemplo: el calculo de una integral definida.
� No se debe confundir con el truncamiento que seproduce en el redondeo.
Errores
� Estos errores se propagan a medida que se realizan operaciones
� Errores pequeños al comienzo se propagan y seconvierte errores muy grandes a medida que serealizan operaciones
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 40
realizan operaciones
error error error ...
Errores
� Recomendación:
� Utilizar la precisión adecuada que garantice lacantidad de dígitos que requiere el problema.
� De igual manera se debe tener cuidado al presentarlos resultados colocar la cantidad adecuada de
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 41
los resultados colocar la cantidad adecuada dedecimales, ya que se pueden establecer conclusioneserradas.
Inevitablemente siempre habrá un error presente
sin importar cuantas precauciones se tomen
Errores
� En líneas generales siempre :
� Se expresará un resultado con una precisión igual omenor a la menor de las precisiones de los númerosutilizados.
#.###
#.##
#.##
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 42
� Sin la precisión obtenida en el resultado es menorque la precisión de los números utilizados elresultado es exacto.
#.##
#.###
#.##
#.# Exacto!
Números en Matlab
� Matlab representa los números de las 2 maneras:
� Punto Fijo.
� Punto Flotante.
Para construir una constante en punto flotante:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 43
9.88426x10-45→ 9.88426E-45 ó 9.88426e-45
Mx10N
MeN
MENM: Punto Fijo
N: Entero con o sin signo
Números en Matlab
� Mantisa:
� 0 ≤ M < 10
� Contiene p dígitos conoce precisión.
� Exponente:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 44
� min ≤ N ≤ max
Números en Matlab
� Generalmente Matlab presenta la información con 7 cifras significativas, punto fijo:
� 3 dígitos antes del punto decimal.
� 4 dígitos después del punto decimal.
###.####
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 45
###.####
� En caso de que se superen los 3 dígitos lo presenta con punto flotante con:
� 4 dígitos después del punto decimal.
#.####e###
Números en Matlab
� Se puede llamar a la función format para cambiar la presentación de la información
format tipo
short 3 y 4
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 46
long 3 y 14
short e 1 y 4 + exponente
long e 1 y 14 + exponente
bank * y 2
+ +, – y 0
Gráficas
� Matlab permite graficar curvas y superficies en 2D y 3D.
Las principales funciones para graficar son:
� plot
� plot3
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 47
� plot3
� surf
� mesh
Gráficas de Líneas
� plot: Realiza graficas de curvas en 2D.
Se puede emplear de diferentes maneras:
1.
plot(Y)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 48
produce un gráfico de líneas tal que:
x índice del elemento de Y
y elemento de Y
Gráficas de LíneasGráficas de Líneas
2.
plot(X,Y)
produce un gráfico de líneas tal que:
x elemento de X
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 49
x elemento de X
y elemento de Y
Gráficas de LíneasGráficas de Líneas
3.
plot(X1,Y1, X2, Y2,..., XN, YN)
produce N gráficos de líneas en una misma imagen tal que:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 50
que:
...
x elemento de X1
y elemento de Y1
x elemento de XN
y elemento de YN
Gráficas de LíneasGráficas de Líneas
4.
plot3(X1,Y1,Z1,..., XN, YN, ZN)
produce N gráficos de líneas 3D en una misma imagen tal que:
x elemento de X1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 51
x elemento de X1
y elemento de Y1
z elemento de Z1
x elemento de XN
y elemento de YN
z elemento de ZN
...
Gráficas de Líneas
� Es posible establecer colores y estilos diferentes a los por defecto.
� Luego de cada curva se indica el estilo y color.
plot(X1,Y1,‘estilocolor1’,
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 52
plot(X1,Y1,‘estilocolor1’,
...,XN,YN,‘estilocolorN’)
� Estilo y color es una combinación de:
color+estilo+marcador
Gráficas de Líneas
� colores, estilos y marcadores:color estilo marcador
c
m
y
r
cyan
mangenta
amarillo
rojo
-
- -
:
-.
+
o
x
*
+
o
x
*
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 53
r
g
b
w
k
rojo
verde
azul
blanco
negro
-. *
s
d
^
>
<
p
*
Gráficas 3D
� En graficas 3D, la superficie se levanta sobre una malla de puntos en plano X-Y:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 54
X-Y
Gráficas 3D
� En graficas 3D, la superficie se levanta sobre una malla de puntos en plano X-Y:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 55
X-Y
Gráficas 3D
� En graficas 3D, la superficie se levanta sobre una malla de puntos en plano X-Y:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 56
-4
-2
0
2
4
-4
-2
0
2
4
0
5
10
15
20
X-Y
X-Y
X-Y-Z
Gráficas 3D
� meshgrid: define la malla de puntos.
� Dados el rango de X y de Y en 2 vectores
� Construye dos matrices, una con filas iguales para Xy otra con columnas iguales para Y que define lamalla.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 57
malla.[XS,YS] = meshgrid(X, Y)
XS YS
X1 Xn
X1 Xn
Y1
Yn
Y1
Yn
Gráficas 3D
� meshgrid: define la malla de puntos.
� Dados el rango de X y de Y en 2 vectores
� Construye dos matrices, una con filas iguales para Xy otra con columnas iguales para Y que define lamalla.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 58
malla.[XS,YS] = meshgrid(X, Y)
XS YS
X1 Xn
X1 Xn
Y1
Yn
Y1
Yn
Grid
Gráficas 3D
� mesh: Realiza graficas 3D como una malla de líneas que definen la superficie.
mesh(X,Y,Z)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 59
� surf: Realiza graficas 3D como una malla de cuadriláteros coloreados que definen la superficie.
surf(X,Y,Z)
Gráficas
� En general para graficar en 2D y en 3D, es necesario:
1. Definir el dominio de la función
� Se define el vector (2D) o las matrices (3D) con losvalores del domino en orden.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 60
Gráficas
� En general para graficar en 2D y en 3D, es necesario:
1. Definir el dominio de la función
� Se define el vector (2D) o las matrices (3D) con losvalores del domino en orden.
2. Definir el rango de la función
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 61
2. Definir el rango de la función
� Se define un vector (2D) o matriz (3D) con losvalores del rango en orden.
� Cada elemento del vector de dominio tendrá sucorrespondencia en el vector o matriz de rango.
Gráficas
� En general para graficar en 2D y en 3D, es necesario:
1. Definir el dominio de la función
� Se define el vector (2D) o las matrices (3D) con losvalores del domino en orden.
2. Definir el rango de la función
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 62
2. Definir el rango de la función
� Se define un vector (2D) o matriz (3D) con losvalores del rango en orden.
� Cada elemento del vector de dominio tendrá sucorrespondencia en el vector o matriz de rango.
3. Graficar utilizando la función adecuada.
GráficasGráficas
Ejemplo: Realizar grafica 2D.
1. Definir el vector de valores de x.X = –3:0.5:3
2. Definir el vector de valores de y.
-3 -2 -1 0 1 2 3-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 63
2. Definir el vector de valores de y.
Y = sin(X)
3. Graficar.
plot(X, Y)
clf limpia la ventana de gráfica
GráficasGráficas
Ejemplo: Realizar grafica 2D.
1. Definir el vector de valores de x.X = –3:0.5:3
2. Definir el vector de valores de y.
-3 -2 -1 0 1 2 3-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 64
2. Definir el vector de valores de y.
Y = sin(X)
Y1 = cos(X)
3. Graficar.plot(X, Y, X, Y1)
plot permite colocar más de una gráfica
GráficasGráficas
Ejemplo: Realizar grafica 3D.
1. Definir las matrices de la malla.x = –3:0.5:3
y = –3:0.25:3
-4
-2
0
2
4
-4
-2
0
2
4
-2
-1
0
1
2
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 65
y = –3:0.25:3
[X,Y] = meshgrid(x, y)
2. Definir el vector de valores de z.Z = sen(X) + cos(Y)
3. Graficar.
mesh(X,Y,Z)
GráficasGráficas
Ejemplo: Realizar grafica 3D.
1. Definir las matrices de la malla.
[X,Y] = meshgrid(–3:0.5:3, –3:0.25:3)
2. Definir el vector de valores de z.
-4
-2
0
2
4
-4
-2
0
2
4
-2
-1
0
1
2
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 66
2. Definir el vector de valores de z.
Z = sen(X) + cos(Y)
3. Graficar.
surf(X,Y,Z)
clc limpia la ventana de comandos
Ajustando la Gráfica
� axis: ajusta los ejes a un rango dado
axis([xmin xmax ymin ymax]) Ajusta eje en 2Daxis([xmin xmax ymin ymax
zmin zmax])Ajusta eje en 3D
axis auto Auto ajusta
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 67
� grid: muestra u oculta malla.
grid on/off
axis auto Auto ajustaaxis equal Marcas de ejes igualesaxis square Ejes del mismo tamaño
Documentando la Gráfica
� xlabel: coloca un titulo en el eje x
xlabel(‘titulo’)
� ylabel: coloca un titulo en el eje y
ylabel(‘titulo’)
� zlabel: coloca un titulo en el eje z
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 68
� zlabel: coloca un titulo en el eje z
zlabel(‘titulo’)
� title: coloca el titulo principal de la gráfica
title(‘titulo’)
� legend: agrega una leyenda a la gráfica
legend(‘leyenda1’, ..., ‘leyendaN’)
Construir la siguiente gráfica en Matlab:
1/x-sen(x)*xy 3=
Construir la siguiente gráfica en Matlab:
Tramo 1
Tramo 2
Tramo 3
La función text permite agregar un texto ala gráfica en un posición especifica X, Y
Tramo 1
Tramo 4
La trayectoria de una partícula en el espacio estadescrita por las siguientes ecuaciones:
x = t
y = t * cos(t)y = t * cos(t)
z = e0.2t
construir una gráfica en Matlab de la trayectoriadescrita por la partícula hasta un tiempo de 4π
Construir la siguiente gráfica en Matlab:
10
15
20
-4
-2
0
2
4
-4
-2
0
2
4
0
5
22 y+x=z
Construir la siguiente gráfica en Matlab:
2 222 22 yx)/yxsen(z ++=
Gráficas
� scatter: gráfica de conjunto de puntos en el plano X-Y.
scatter(X,Y)
� hist: histograma.
hist(Y,N)
N: tamaño del grupo
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 74
N: tamaño del grupo
� stem: gráfica de errores.
stem(X,Y)
X: posición X
Y: tamaño del error
Gráficas
� stairs: gráfica de errores continua.
stairs(X,Y)
X: posición X
Y: tamaño del error
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 75
� bar, barh: gráfica de barras.
bar(X,Y)
X: posición X
Y: alto de la barra
Gráficas
� pie: gráfica de torta.
pie(X)
X: datos
� scatter3: gráfica de conjunto de puntos en el plano X-Y-Z.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 76
Y-Z.
scatter3(X,Y,Z)
� pie3: gráfica de torta.
pie(X)
X: datos
Gráficas Múltiples
� Matlab permite presentar múltiples gráficas en una misma imagen, esto se logra con el comando subplot.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 77
Gráficas Múltiples
� subplot: divide la imagen en una matriz de imágenes independientes y establece cual es la subventana activa
subplot(m,n,a)
m: cantidad de filas.
n: cantidad de columnas.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 78
n: cantidad de columnas.
a: número de la subventana activa.
1 ≤ a ≤ m*n
1 2 ... n
n+1 n+2 ... ...
... ... ... m*n
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 79
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 80
subventana....
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 81
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
...
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 82
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
4. Se realizan todas las operaciones gráficas de esa subventana.
...
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 83
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
4. Se realizan todas las operaciones gráficas de esa subventana.
... ...
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Subventana1
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 84
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
4. Se realizan todas las operaciones gráficas de esa subventana.
... ...
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 85
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
4. Se realizan todas las operaciones gráficas de esa subventana.
... ...
Subventana2
Gráficas Múltiples
� Uso de subplot:
1. Se selecciona la subventana a utilizar:subplot(m,n,a1)
2. Se realizan todas las operaciones gráficas de esa subventana.
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 86
subventana....
3. Se selecciona la siguiente subventanasubplot(m,n,a2)
4. Se realizan todas las operaciones gráficas de esa subventana.
... ...
más Subventanas
La trayectoria de una partícula en el espacio estadescrita por las siguientes ecuaciones:
x = t
y = t * cos(t)y = t * cos(t)
z = e0.2t
Construir una gráfica en Matlab de la trayectoriadescrita por la partícula hasta un tiempo de 4π , en elespacio, en el plano x, en el plano y en el plano z.
Gráficas de una función
� fplot: gráfica una función dada en un rango específico.fplot(funcion,rango)
funcion: función a graficar
� Texto con la función o funciones separadas por
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 88
� Texto con la función o funciones separadas porcomas
‘[funcion1(x), funcion2(x), …]’
rango: vector con lo limites del intervalo de x a graficar.
[xmin xmax]
Debe ser x Debe ser x
Gráficas de una funciónGráficas de una función
Ejemplo:
X = [-3 3];
fplot(‘sin(x)’, X);
fplot(‘[sin(x), cos(x)]’, X);
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 89
fplot(‘[sin(x), cos(x)]’, X);
Apuntador a una función
� Matlab ofrece otro tipo de dato:
function_handle
Contiene toda la información para encontrar yejecutar una función.
� Su principal utilidad es pasar como parámetros
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 90
� Su principal utilidad es pasar como parámetrosfunciones.
� Un function_handle consiste del carácter arrobaseguido del nombre de la función (Sólo el nombre):
@funcion
Apuntador a una funciónApuntador a una función
Ejemplo:
fplot también recibe un function_handle comoparámetro para la función.
X = [-3 3];
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 91
X = [-3 3];
fplot(@sin, X);
Construir una función en Matlab para evaluar:
y = x3*sen(x) – 1/x
� Utilizar la función fplot con un function_handlepara graficar la función en para valores de x entre0.5 y 5.
Resumen
� Bits y Bytes
� Sistemas de Numeración
� Sistema Binario de Numeración
� Números:
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 93
� Punto Fijo.
� Punto flotante
� Precisión Sencilla
� Precisión Doble
� Redondeo
Resumen
� Limitaciones computacionales
� Overflow Error
� Underflow Error
� Errores
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 94
� de redondeo
� de truncamiento(discretización de un problema real)
� Números en Matlab
Resumen
� 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.
�
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 2 – GM – 95
� 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