Está en la página 1de 28

Introduccin a Matlab

& Anlisis de Datos

Clase 1:

Introduccin a la interfaz de
software Matlab
Tiempo del curso
Lunes a viernes
9:30 am - 12:30pm
William.trigos@gmail.com

William J. Trigos G. 2015

Instalando Matlab

Por efectos de licencia, he decidido


que usemos una versin portable
del aplicativo matlab.

La distribucin y reproduccin de
la misma, esta bajo su
responsabilidad.

Objetivos del curso


manipular y
analizar conjuntos de datos.

1. Adquirir la capacidad para

2. Habilidad para visualizar conjuntos de


datos
3. Adquirir ciertas destrezas en un lenguaje
de Programacin interpretado.

Anatoma del curso

Hands off (atencin)

Presentaciones

FAQs

Espacio de la clase para inquietudes y aclaraciones

Hands on

Material de lectura
Busqueda en manuales y paginas web(googleando)

ejemplos

Home work

Enviar a: william.trigos@gmail.com
Limite para recepcin mnimo 1 clase despus de ser
asignada la actividad.
4

Objectivos de esta clase


1. Familiarizarse con las ventanas del IDE Matlab
2. Tareas basicas esenciales (cambiar de
directorio)
3. Usar matlab como una calculadora avanzada
4. Una primera mano al uso de Scripts
5. Aprender a usar el comando Help!!! Y otros
mas
(pwd, ls, etc)

Estructura del computador


Nivel Hardware
CPU

Input devices

Memor
y

Storage
devices

Output
devices
6

Estructura del computador


Nivel Software

Software
Operating system
Gives services to
software:

Hardwar
e

Access
input/output
devices
Memory
allocations
7

From Thoughts to
Program
I want to
add one
and one

Human
language

1+1

Matlab
language

mambojumbo

0100110100
11

compiler

Intermediate Computer
language
language
Operating
System

que es? Matlab

Matlab (Matrix Laboratory)

Estamos frente a un programa


interactivo para efectuar calculos
matematicos, hacer graficos.
Un lenguaje de programacin de medio
alto nivel, util para computacin a nivel
tecnico (scripts).

Iniciemos
9

Ventana de comandos

Usando Matlab como una


calculadora:

Command line

Corramos la sentencia:
1+1
10

Ventana de comandos
Podemos acceder o llamar el
comando anterior con la flecha arriba
del teclado.
Limpiar la linea de comandos clc
cerrar todas las ventanas abiertas del
entorno con close all.
Limpiar el workspace con clear all.
Lnea de comando anterior
salida (respuesta)
Lnea de comando actual
11

Espacio de trabajo
(Workspace)
Ventana del workspace

Listado de variables en
el workspace

Valor de la variable
Limpiar el workspace con clear all.

12

Historial de comandos

Command History
Window
Historial
completo

13

Operadores aritmeticos
Suma (matricial)

Suma Unaria (unitaria - escalar)

Resta (matricial)

Resta Unaria (unitaria - escalar)

Multiplicacin Escalar

Multiplicacin componente a componente


(Vectorial) (Ojo producto punto)

.*

Potencia

Backslash o divisin matricial

Slash o divisin entera

/
14

Numeros especiales
pi

3.14159265

i and j

Unidad Imaginaria

eps
realmin
realmax
Inf

Precisin relativa 2-52


Son
palabras
-1022
Numero
masreservadas
pequeo 2para
Matlab, no puedo crear variables
mas grande
(2-eps)* 21023
conNumero
estos nombres,
ni asignarles
Infinito (alvalores!!!
dividir por cero, es mayor que
realmax)

NaN

No valor numrico (Not a Number)


(0/0 Inf/Inf) (indefiniciones)

15

Trabajemos matlab
como una calculadora

Queremos hacer una


ensalada para 10 personas.
Ingredientes para 5
personas:
6

naranjas

bananos

Manzanas

melon

Cuantas frutas necesitamos


en total?
cuanto es el costo de hacer
la ensalada para estas
personas?
RTA:

Lista de precios:
Naranja

1.5

banano

1.2

Manzana

melon

5
16

Trabajemos matlab
como una calculadora
2*5+10
2*(5+10)
2/3*4

1 3 2 3 4
1/0
0/0

Ten en
cuenta
Existe priorizacin en operaciones
matematicas!!!
(1+3+2*pi)^(3/4)

Que esta diciendo cada operacin?

Que valor obtienes?

Inf NaN

Malo,Porque?
porque
Que valor obtienes?
Inf te
imprimir mucha basura
Consejos utiles:
y te perders o te
cansaras de ver nmeros
clc , flechitas up/down
de seguro ;S
Usualmente cuando usas ; al final de un comando, matlab deshabilita
la interfaz echo (Impresin en consola) de la lnea de comando.

2*realmax

Existen 3 caminos para presentar salidas: disp() fprintf() y el malo, no


17
usar ;

Vas de ayuda
Usando Help, Doc, etc

Help:

Ctrl + C
Help (help
1. Busca las funciones elementales
elementary math functions
cos); ??
Te detiene la
2.
y has una lista de las funciones
ejecucin
del
lookfor
disponibles en matlab.
comando, si este
Doc (doc cos);??
Tip: el comando doc, podra ser una
tarda mucho ;)
opcin para esta labor.
Search
3. Como se calcula una raiz cuadrada
? Busca...
Google matlab

Manuales de
Matlab
Ojo!!, matlab es case
Como ves Matlab
sensitive!, sensible a
maysculas
minsculas
contiene ymuchas
mas funciones

TAREA!!!

4.
5.

6.

Que hace la funcin factor?


Cual es la diferencia entre los
comandos ceil floor, fix and
round?
Haz un ejemplo usndolos para ver
que sucede?
18

Ventana Directorio
Actual

Archivos

Ruta del directorio


actual
Ventana del directorio
actual

La accion Doble click, abre el archivo:


.m file (script) en el
Editor/Debugger
.fig file (figure) en una Graphic
window
.mat file (data) carga las variables
19

Cambiando Directorio
Actual
Ruta del directorio
actual
pwd Ruta actual
cd Cambiar de directorio (linea
comnados)
dir, ls listar archivos del
directorio
./ - directorio actual
../ - directorio padre
20

Ventana Editor /
Debugger
Abrir el Editor:
menu Matlab -> Window -> Editor

21

Ventana Editor /
Debugger
Abrir el Editor: menu Matlab -> Editor

disp(hello world);

Puedes anclar
el editor a tu
ventana
principal de
Matlab

F5 / run button (para correr tu script)

22

Ventana Editor /
Debugger
Abre un Editor: menu matlab -> Desktop -> Editor
Guarda tu script como helloWorld.m
Ejecuta tu script:
Usando el botn run
Escribiendo en la command window:
helloWorld
Tips

atajos tiles para (editor /


command win.)

Cntrl-C,

Cntrl-V,

Cntl-Z,

Cntl-F,

Cntrl-H

Comentarios usando %
23

Formato de Salida

El uso de la funcin formato, controla el


formato de salida de los valores numericos
desplegados en la Command window.
>> format short (5
digitos)

>> format Long (15


digitos)

>> format rat


(racional)

>> pi
ans =

>> pi
ans =

>> pi
ans =

3.1416

Formato
Formato de
de
salida,
salida, que
que
usa
usa matlab
matlab por
por
defecto
defecto

3.141592653589793

355/113

format Compact / format loose determinan el


espaciado entre lneas de comando
24

Identificando y
Manejando los Errores

Ejemplos de errores:

dis(error)

Error de Sintaxis / error en depuracin del


comando

Permite ejecutar
Lnea 15

disp(error)

Error de Sintaxis / reportado duranteNo


ejecucin
Permite ejecutar
del script (error en el/los argumentos)
Lnea 15
25

Una lista de Comandos y


Operadores en Matlab

Arithmetic operators.
plus - Plus +
uplus - Unary plus +
minus - Minus uminus - Unary minus mtimes - Matrix multiply *
times - Array multiply *
mpower - Matrix power ^
power - Array power .^
mldivide - Backslash or left matrix divide \
mrdivide - Slash or right matrix divide /

Relational operators.
eq - Equal ==
ne - Not equal ~=
lt - Less than <
gt - Greater than >
le - Less than or equal <=
ge - Greater than or equal >=

Logical operators.
and - Logical AND &
or - Logical OR |
not - Logical NOT ~
xor - Logical EXCLUSIVE OR
any - True if any element of vector is nonzero
all - True if all elements of vector are nonzero

Te dejare este
documento
En la carpeta, te
ser de ayuda
rpida ;)
26

Este debe ser


un

Desarrollo de los ejercicios


documentar el cdigo
Buen Habito
% Solucion Tarea_1 < Archivo: Tarea_1_Solved.m >
% Author :
%
Fulanito de tal,
% Fecha:
%
12/06/2015<name T.Z., name T.Z. >

Siempre!!

% -------------------------------------------------------------------------------------------------% Descripcin Corta:


%
% Este programa calcula y presenta las operaciones que determinan la nota final de la
%
asignatura XXXX, para cada uno de los estudiantes .
%
Los clculos son efectuados teniendo en cuenta las notas obtenidas en X exmenes,
%
y un porcentaje apreciativo de participacin en clase.
% -------------------------------------------------------------------------------------------------clear;
clc;

Limpiar el workspace y la lnea de comandos al comienzo del Script es un buen


habito. Porque?
Ojo: Nunca estos a la mitad de un Script!! Porque?
Usar nombre representativos dentro del programa, no use variables
ambiguas !!!!!
x y, i

notas = Te
[80 invito
77 70 60 a
65];
% vector
las calificaciones
cada alumno
que
me con
propongas
un para
cdigo
de solucin,
participacion_en_clase = [1.10, 1.05, 1.07, 0.99, 1.10]; % vector porcentaje participacin de
considerando:
los estudiantes
%participation
Notas para 9 alumnos
Nota_finales= (notas .* participacion_en_clase) + 10; % Calcula la nota final de cada
considera darles una nota apreciativa por participacin, para
estudiante

27

Desarrollo de los ejercicios


Indentacin y uso de variables
- Usa ctrl+a, ctrl+i - Con
paraestos
identar
apropiadamente
consejos
en cuenta tu
cdigo
disp(Hi !)
disp(Hi !);
Podrs sacar mayor provecho del
;
x=1;
curso
x=1;
y=80;
y=80;
Y te ser mas sencillo, entender y
- Usa para dividir
sentencias
muy cuando
repasar
tus cdigos
largas:
quieras ;)

- Evita usar nmeros mgicos:


- if (final_grades<60)
- for i=1:5
- hourly_pay=500*3.62

- if (final_grades<passing_grade)
- for i=1:length(students_ID)
- hourly_pay=salary*dollarRate
28