tutorial de matlab(clase1)

60
Tutorial de MatLab - I Entorno Matlab Prof. Blanca Guillén Septiembre 2014

Upload: humbertoporras

Post on 22-Dec-2015

9 views

Category:

Documents


1 download

DESCRIPTION

matematica especial

TRANSCRIPT

Tutorial de MatLab - I

Entorno Matlab

Prof. Blanca Guillén Septiembre 2014

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

Fundamentos de Matlab

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)

EL ENTORNO MATLAB: VENTANAS

Fundamentos de Matlab

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

Ventanas y Escritorio

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 de Comandos

prompt

Las instrucciones se escriben después del prompt: >>

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: Command History

Ventana: Current Directory

• Muestra el listado de archivos y carpetas

en el directorio actual.

• El directorio seleccionado por defecto es

el directorio <work>.

Ventana: Current Directory

Ventana: Workspace

Muestra las variables creadas, así como su

tipo y su valor.

Ventana: Workspace

Ventana: Editor

Es un editor de texto donde se pueden escribir

instrucciones, las cuales se ejecutan al ser

invocadas desde la ventana principal

Ventana: Editor

Ventanas

Existen, además, ventanas específicas

correspondientes a la ayuda y a las

demostraciones (helps y demos).

Ventanas

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)

EL ENTORNO MATLAB: VARIABLES

Fundamentos de Matlab

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.

Ejemplo 1

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.

Ejemplo 2

Ejemplo 2

Ejemplo 2

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

En Matlab la inversa de una matriz A se obtiene

mediante el comado:

inv(A)

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

Ejercicio 5

1. Sean

>> a=[2; 1; 2]

>> b=[1; 2; 3]

Hallar:

i) a.*b

ii) a./b

iii) a.^4

iv) b.^2

v) a+b