Tutorial de MatLab(Clase1)
-
Upload
humbertoporras -
Category
Documents
-
view
9 -
download
1
description
Transcript of Tutorial de MatLab(Clase1)
Temas
• Fundamentos de Matlab
– Introducción al software Matlab
– El entorno Matlab: ventanas, variables y
archivos
– Símbolos y Comandos Básicos
• Gráficas con Matlab
– Graficación Simple
– Graficación de Malla y de Superficies
Introducción al Software Matlab
Origen: MATLAB fue originalmente escrito por
Cleve Moler, fundador de MathWorks Inc., con el
objetivo de proporcionar un acceso fácil al
software matricial desarrollado en los proyectos de
UNIX LINPACK (de LINear equations PACKage) y
EISPACK (de Eigenvalue Subroutines PACKage).
Características de Matlab
• Es un lenguaje sencillo pero potente y rápido. En una
sesión de trabajo típica, no hay que compilar o crear
ejecutables y los ficheros son de texto, por lo que ocupan
poca memoria.
• Muchas de las funciones matemáticas y de aplicación
(análisis estadístico, optimización, diseño en ingeniería)
están predefinidas y agrupadas en librerías comerciales
(llamadas toolboxes). El usuario puede acceder a la mayor
parte de estas funciones para modificarlas y/o crear las
suyas propias.
Características de Matlab
• Presenta una gran capacidad para generar gráficos, en dos
y tres dimensiones, y permite incorporar efectos y
animaciones.
• Permite el desarrollo de aplicaciones complejas con ayuda
del editor de ventanas, menús y controles de la utilidad GUI
(Graphics User Interface).
• Puede intercambiar datos con otros lenguajes y entornos.
Puede acceder a distintos dispositivos de hardware tales
como tarjetas de sonido, tarjetas de adquisición de datos y
DSPs (Digital Signal Processors).
Partes constitutivas
El programa MATLAB está constituido por:
• El entorno (ventanas, variables y ficheros)
• Los objetos gráficos (se verán con más detalle
en el Tema 2)
• Un lenguaje propio de programación (se verá
con más detalle en el Sub-Tema 3)
Ventanas
Son de diversos tipos:
• Las ventanas que forman el núcleo (kernel) del
programa se organizan en el escritorio
(desktop), pero en una sesión típica se abren y
cierran gran número de ventanas secundarias
correspondientes a figuras, editores de archivo
o de variables, aplicaciones diversas...
Ventanas y Escritorio
Escritorio: Al abrir el programa MATLAB aparece
un escritorio (desktop) como el mostrado en la
figura
Ventana principal: Command Window
• En ella se escriben los comandos de MATLAB.
• Desde esta ventana es posible ejecutar
instrucciones del sistema operativo. con sólo
poner el signo ! a continuación del prompt (por
ejemplo: >>!dir).
• También es posible recuperar instrucciones
ejecutadas con anterioridad con ayuda de la tecla ↑ (ello nos ahorra el tener que volver a
teclearlas).
Ventana: Command History
Almacena las instrucciones introducidas en
cada una de las sesiones anteriores de
MATLAB, indicando fecha y hora de la
sesión.
Ventana: Current Directory
• Muestra el listado de archivos y carpetas
en el directorio actual.
• El directorio seleccionado por defecto es
el directorio <work>.
Ventana: Editor
Es un editor de texto donde se pueden escribir
instrucciones, las cuales se ejecutan al ser
invocadas desde la ventana principal
Ventanas
Existen, además, ventanas específicas
correspondientes a la ayuda y a las
demostraciones (helps y demos).
Ejercicio 1
1. Abrir el programa MATLAB y localizar las
siguientes ventanas: Command Window,
Workspace, Current Directory, Command
History.
2. Añadir la ventana Help con ayuda de la opción
Desktop del menú principal. Usar los botones
(dock/undock) a fin de encajar/desencajar
ventanas al/del escritorio.
3. Ver qué otras opciones de apariencia de
escritorio están disponibles en la opción
Desktop del menú principal.
Tiempo de ejecución: 5 min
Ejercicio 1
4. Volver a la apariencia por defecto: Desktop →
Desktop Layout → Default. (Es la más
recomendable para trabajar en la mayoría de
los casos).
5. Seleccionar la ventana de comandos (Command
Window). Para ello, hacer clic en su interior. Echar
un vistazo a las opciones disponibles dentro del
menú principal (File, Edit, Debug, Desktop,
Window, Help). Intentar deducir para qué sirven.
6. Idem con los botones de la barra de herramientas
(Toolbar).
(Nota: Este ejercicio es de familiarización. No hay que entregarlo)
Variables y Worspace
Durante una sesión, las variables creadas
por los comandos se guardan en el
Workspace, donde pueden ser modificadas
y/o utilizadas en otros comandos. Este
almacenamiento es temporal, sólo para la
sesión en curso, con lo que al cerrar el
MATLAB las variables son borradas.
Editor: Array
Para ver el contenido de una variable var1
basta con teclear su nombre en la ventana
de comandos >>var1.
También es posible visualizar su contenido
en el Array Editor. Para abrirlo basta con ir
a la ventana Workspace y hacer doble clic
en el icono de la variable en cuestión.
Importación/Exportación de Variables
Es posible guardar las variables del workspace (todas o algunas de ellas) en un archivo para que no se pierdan al cerrar MATLAB y así posteriormente, en otra sesión, poder cargarlas de nuevo en el workspace.
Funciones para este fin: save y load
Los archivos de datos en MATLAB tienen la extensión *.mat. Si al usar save no se indica un nombre al archivo de datos, MATLAB le asigna el nombre por defecto matlab.mat.
Importación/Exportación de Variables
Es posible guardar las variables del workspace (todas o algunas de ellas) en un archivo para que no se pierdan al cerrar MATLAB y así posteriormente, en otra sesión, poder cargarlas de nuevo en el workspace.
Funciones para este fin: save y load
Los archivos de datos en MATLAB tienen la extensión *.mat. Si al usar save no se indica un nombre al archivo de datos, MATLAB le asigna el nombre por defecto matlab.mat.
Ejercicio 2
1. Crear variables: En la ventana de comandos introducir
un escalar, una matriz, una cadena de caracteres y un
par de operaciones cualquiera.
Por ejemplo:
>> x=2
>> A=[1 2;3 4;5 6];
>> A
>> s=‘hola’
>> a=2/0
>> 0/0
Tiempo de ejecución: min
Ejercicio 2
Notar cómo los comandos introducidos quedan registrados
en la ventana Command History.
a. ¿Para qué sirve el punto y coma?
b. ¿MATLAB distingue entre mayúsculas y minúsculas?
c. ¿Qué pasa al teclear: >> y=40.5 y, a continuación,
>> y=102.3?
d. ¿Qué significa ans?
e. Teclear : >>who y >>whos. ¿Qué hacen estas dos
funciones?
Tiempo de ejecución: min
Ejercicio 2
2. Los elementos de una matriz pueden ser cualquier expresión de Matlab:
x = [-1.3, sqrt(3),(1+2+3) *4/5]
3. Manipulación de Vectores y Matrices
Generando Vectores: los dos puntos (:) son importantes
en MATLAB.
u=1:15;
v=1: 3: 15;
w=15:-2:1
¿Que observa en la definición de estas 3 variables?
¿Cuál es el incremento/decremento en cada vector?
Tiempo de ejecución: min
Ejercicio 2
4. Índices. Podemos referirnos a elementos individuales de
matrices encerrando sus índices en paréntesis. Ejemplo, si
>> A = [1 2 3; 4 5 6; 7 8 9]
¿Qué efecto tienen los comandos?
>> A(3, 3)
>> A(1, 3)
>> A(3, 1)
>> A(3, 3) = A(1, 3) + A(3, 1)
Tiempo de ejecución: min
Ejercicio 2
5. Un índice puede ser un vector:
Por ejemplo, si A es la matriz mágica 10 por 10:
>> A=magic(10)
La fila 1 de A se obtiene tecleando el comando:
>> A(1,:)
La columna 1 de A se obtiene tecleando el comando:
>> A(:,1)
a. Extraiga la columna 5 y la fila 5 de A y almacénelas en
las variables c5 y f5
b. Sume los elementos de c5: >> sum(c5)
c. Sume los elementos de f5: >> sum(f5)
¿Qué observa? ¿Puede generalizar sus resultados?
Tiempo de ejecución: min
Ejercicio 2
6. Un índice puede ser un vector:
Por ejemplo, si A es la matriz mágica 10 por 10:
>> A=magic(10)
La fila 1 de A se obtiene tecleando el comando:
>> A(1,:)
La columna 1 de A se obtiene tecleando el comando:
>> A(:,1)
a. Extraiga la columna 5 y la fila 5 de A y almacénelas en
las variables c5 y f5
b. Sume los elementos de c5: >> sum(c5)
c. Sume los elementos de f5: >> sum(f5)
¿Qué observa? ¿Puede generalizar sus resultados?
Tiempo de ejecución: min
Operaciones con Matrices
Matriz Traspuesta:
El caracter ' (apóstrofe) denota la transpuesta
de la matriz.
Operaciones con Matrices
Matriz Traspuesta. Por ejemplo si:
>> B=[1 2 3; 4 5 6; 7 8 9]
B =
1 2 3
4 5 6
7 8 9
el comando: >> B’ produce el siguiente resultado:
>> B'
ans =
1 4 7
2 5 8
3 6 9
Operaciones con Matrices
Sumando y Restando Matrices.
>> B=[1 2 3; 4 5 6; 7 8 9]
B =
1 2 3
4 5 6
7 8 9
el comando: >> B’ produce el siguiente resultado:
>> B'
ans =
1 4 7
2 5 8
3 6 9
Operaciones con Matrices
Sumando y Restando Matrices.
Las operaciones suma (+) y resta (-) están definidas
para las matrices siempre y cuando éstas tengan la
misma dimensión
Operaciones con Matrices
Sumando y Restando Matrices.
Ejemplo:
>> A=[1 2 3;4 5 6];
>>B=[6 5 4; 3 2 1];
define las matrices A y B. Para sumarlas se escribe la
operación:
>>A+B
El resultado de la operación es:
ans =
7 7 7
7 7 7
Operaciones con Matrices
Multiplicando Matrices
La operación de multiplicación de matrices está
definida siempre que el número de columnas de la
primera matriz sea igual a el número de filas de la
segunda matriz.
Operaciones con Matrices
Multiplicando Matrices.
Ejemplo:
>> A=[1 2 4;3 1 2; 4 1 3];
>> B=[7 3 1; 2 3 5; 8 1 6];
define las matrices A y B. Para multiplicarlas se
escribe la operación:
>>A*B
El resultado de la operación es:
ans =
43 13 35
39 14 20
54 18 27
Ejercicio 3
1. Sean:
A=[1 2 4; 3 1 2; 4 2 3]
B=[7 3 1; 2 3 5; 8 1 6]
x=[1 2 4]’
y=[ 3 9 4]’
a. Calcule A+B, B-A, x+y, x-y
b. Calcule Ax, AB, BA, x’A’
Ejercicio 3
2. Matrices especiales:
2.1 Matriz Identidad mxm, se genera con:
eye(m)
2.2 Matriz Nula mxm, se genera con:
zeros(m)
2.3 Matriz mxn con todas las entradas igual a 1 se
genera con:
ones(m,n)
a) Generar las matrices Identidad 2x2, 3x3, y 5x5.
b) Generar las matrices nulas 2x2, 3x1, 1x3, 5x4.
c) Generar un vector en R6 con todas sus entradas igual a 1
Matriz Inversa
Ejemplo:
>> A =[1 2 4;3 1 2; 4 1 3]: define la matriz:
A =
1 2 4
3 1 2
4 1 3
su inversa se obtiene mediante:
>> inv(A)
ans =
-0.2000 0.4000 -0.0000
0.2000 2.6000 -2.0000
0.2000 -1.4000 1.0000
Ejercicio 4
1. Hallar la inversa de:
>> B=[7 3 1; 2 3 5; 8 1 6]
y almacenarla en C.
2. Verifique que BC=CB=Identidad
Operaciones de Arreglos
El término operaciones de arreglo se refiere a las
operaciones de aritmética elemento por elemento.
Un punto (.) antes de un operador indica una
operación de arreglos elemento por elemento.
Operaciones de Arreglos
• Suma y Resta de Arreglos:
Para suma y resta, las operaciones de
arreglos y las operaciones de matrices son
iguales.
• Multiplicación y División de Arreglos:
El símbolo .* denota multiplicación de
arreglos elemento por elemento
Operaciones de Arreglos
Ejemplo: Si
>> x = [1 2 3];
>> y = [4 5 6];
el comando:
>> z = x. *y
da como resultado:
>>z =
4 10 18
Operaciones de Arreglos
Cociente de Arreglos. Las expresiones: x./y, y.\x
dan los cocientes de los elementos individuales.
Operaciones de Arreglos
Ejemplo: Si
>> x = [1 2 3];
>> y = [4 5 6];
El comando:
>>z = x./y
da como resultado:
>>z =
0.2500 0.4000 0.5000
Operaciones de Arreglos
Exponentes con Arreglos. El símbolo .^ denota
exponenciación elemento por elemento
Operaciones de Arreglos
Ejemplo: Si
>> x = [1 2 3];
>> y = [4 5 6];
Los comandos:
>>z = x.^2, >>Z=y.^3
dan como resultado:
>>z =
1 4 9
>>Z=
64 125 216