You are on page 1of 6

ALGEBRA LINEAL INGENIER IA INFORMATICA Curso 08/09 PRACTICA 1

Comenzando con MATLAB


1 Funcionamiento de Matlab
MATLAB es un sistema interactivo basado en matrices para c alculos cient cos y de ingenier a. El nombre de MATLAB proviene de las iniciales de MATrix LABoratory, ya que el tipo de dato b asico con el que trabaja es una matriz. Matlab se puede utilizar en computaci on matem atica, an alisis y procesamiento de datos, gr acos, simulaciones, desarrollo de algoritmos, etc. Una vez que hemos iniciado el programa aparece la ventana de comando, aunque podemos abrir otras como: ventana de directorio actual y ventana de hist orico de comandos. La ventana de comando es la principal y es conveniente mantenerla abierta siempre como u nica ventana visible. Help Window (Ventana de ayuda) La ventana de ayuda proporciona toda la documentaci on para ayudar al usuario en el manejo de la aplicaci on. Esta ventana se abre directamente desde el men u help que est a situado en la barra de herramientas que se encuentra en la ventana principal de MATLAB. Existe otra forma de pedir ayuda y es utilizando el comando help;con el podemos visualizar un buen n umero de directorios que contienen los nombres de los comandos. Escribiendo help nom, donde nom es el nombre de un comando, nos da informaci on del comando espec co cuyo nombre(nom) hemos escrito. Ventana de comando Como hemos mencionado anteriormente la ventana de comando es la ventana principal de MATLAB y se utiliza para ejecutar los comandos, abrir otras ventanas, ejecutar programas realizados por el usuario y gestionar el software de MATLAB. Una vez hayamos entrado en MATLAB veremos aparecer su s mbolo >>, tambi en llamado prompt, esto nos indica que MATLAB est a esperando un comando. Observaciones Para teclear un comando el cursor debe estar situado a continuaci on del prompt. Una vez tecleado el comando se pulsa la tecla Intro, entonces el comando es ejecutado. Hay que hacer notar que solo se ejecuta el u ltimo comando introducido, ya que se ejecuta comando a comando. Veremos m as tarde que este problema puede solucionarse.

Puede teclearse m as de un comando en una l nea, basta separarlos por comas. Cuando se pulsa Intro todos los comandos se ejecutan, de izquierda a derecha. No es posible ir con el cursor a una l nea anterior para hacer una correcci on y volver a ejecutar un comando. Un comando tecleado anteriormente puede volver a ser llamado utilizando las echas arriba (comando anterior)y abajo (comando posterior) de los cursores para encontrar el comando deseado. Una vez encontrado, puede editarse y ejecutarse.

Punto y coma (;) Si tecleamos punto y coma (;) al nal de un comando hace que la salida no sea visualizada. Si tecleamos varios comandos en la misma l nea basta separarlos por (;) en vez de por (,). El s mbolo tanto por ciento Cuando se teclea el s mbolo tanto por ciento al principio de una l nea, MATLAB entiende que todo lo que aparece detr as es un comentario. Dicho comentario puede ir detr as de un comando en la misma l nea, este no tiene ning un efecto sobre la ejecuci on del comando. El comando clc El comando clc borra la ventana de comandos. Este comando no var a nada de lo que se ha hecho anteriormente, por ejemplo, si anteriormente se han denido variables con sus valores asignados, estas podr an seguir siendo utilizadas. Los comandos tecleados anteriormente pueden seguir siendo recuperados con los cursores, como hemos indicado anteriormente. Formatos de visualizaci on de n umeros Cuando MATLAB visualiza resultados num ericos sigue algunas reglas. Por defecto, si un resultado es entero lo visualiza como entero. Cuando un resultado es real lo visualiza con aproximadamente cuatro d gitos a la derecha del punto decimal. Si los d gitos signicativos en el resultado est an fuera de este rango, MATLAB visualiza el resultado en notaci on cient ca similar a las calculadoras. Si queremos que los resultados aparezcan de una forma diferente a la dada por defecto se deber a especicar el formato num erico diferente usando la opci on Numeric Format en el men u de Preferencias de la aplicaci on o escribiendo la orden apropiada en MATLAB. Algunos de estos formatos num ericos son: format long: short e : long e : 16 d gitos 5 d gitos m as exponente 16 d gitos m as exponente 2 d gitos decimales aproximaci on racional visualizaci on por defecto

format bank: format rat : format short:

Observaci on: MATLAB no cambia la representaci on interna de un n umero cuando se escogen diferentes formatos, s olo se modica la visualizaci on del mismo.

MATLAB opera siempre por defecto en forma aproximada, por ejemplo >> b=1/6 b= 0.1666

2
2.1

Matrices y Matlab
Manejo de matrices en MATLAB

Para introducir una matriz con MATLAB se hace de la forma siguiente: Los elementos de la matriz se escriben separados por espacios. Las las se separan por un punto y coma. La matriz est a metida entre corchetes. Ejemplo: Introducir la matriz [1 -1 1 0; 2 0 0 1;3 1 -1 2] presionar enter y ver de qu e forma la presenta en pantalla MATLAB. Para asignar un nombre a una matriz utilizamos el operador de asignaci on =, de la forma: A=[1 -1 1 0; 2 0 0 1;3 1 -1 2] Observaciones Todas las las de la matriz han de tener el mismo n umero de elementos. MATLAB distingue entre may usculas y min usculas, por lo tanto la matriz B no es la misma que la b. El nombre de una matriz puede volverse a utilizar pero tenemos que tener en cuenta que si lo hacemos se pierde el u ltimo contenido de dicha matriz. Si queremos cambiar un elemento, por ejemplo el (i, j ), se escribe A(i, j ) = nuevo valor. A(1, 3) = 5 asigna el valor 5 al elemento que ocupa la posici on (1, 3) de la matriz A. Para ver todos los elementos de una matriz basta con teclear solamente el nombre de ella. Si la matriz es muy grande, en pantalla aparecer a dividida en subconjuntos de columnas que aparecer an sucesivamente. Si queremos ver el elemento (i, j ) de una matriz A tecleamos A(i,j).

El operador (:) en matrices El operador (:) se puede utilizar para presentar los siguientes datos: 1. A(i,:) nos nuestra los elementos de la la i- esima de la matriz A . 2. A(:,j) nos nuestra los elementos de la columna j- esima de la matriz A. 3. A(:,m:n) nos nuestra los elementos entre las columnas m y n de la matriz A. 4. A(m:n,:) nos presenta los elementos entre las las m y n de la matriz A.

5. La especicaci on A(m : n, :) puede generalizarse a A(m : q : n)indicando los t erminos (las o columnas) desde la posici on m hasta la n saltando de q en q

EJERCICIO 1. Denir una matriz A de dimensi on 4 5 y extraer los bloques formados por: 1. la la cuarta 2. la columna tercera 3. desde la la 2 a la 4 4. desde la columna 1 a la columna 3 5. las columnas 1,3 y 5 6. las las 2 y 4

2.2
2.2.1

Generaci on de matrices
Los comandos zeros, ones, eye

MATLAB posee instrucciones para generar tipos especiales de matrices como son : la matriz identidad, matriz nula y matrices cuyos elementos son todos unos. Estos comandos son los siguientes: 1. eye(i) presenta en pantalla una matriz identidad de dimensi on i i. 2. t = k ; eye(t) presenta una matriz identidad de dimensi on k k . 3. eye(A) presenta una matriz identidad de la misma dimensi on que la matriz A. 4. eye(m,n) presenta una matriz con 1 en la diagonal y 0 en el resto. 5. zeros(m,n) produce una matriz nula de dimensi on m n. 6. ones(m,n) produce una matriz de unos de dimensi on m n. 2.2.2 El comando rand

El comando rand produce n umeros pseudoaleatorios en el intervalo (0, 1). La instrucci on rand(m,n) genera aleatoriamente una matriz de dimensi on m n as como rand(n) genera una matriz aleatoria de dimensi on n n. Los elementos de todas estas matrices, como hemos dicho anteriormente, pertenecen al intervalo (0, 1). Podemos extender el intervalo de los n umeros, por ejemplo entre 0 y 10, con la instrucci on (10*rand(m,n )) Con x(10*rand(m,n )) obtenemos una matriz de n umeros enteros entre 0 y 9.

2.3

Construcci on de matrices por bloques

Podemos generar matrices combinando otras matrices de dimensiones m as peque nas, como si de n umeros se tratase, siempre que las dimensiones sean las adecuadas. 1. [A B ]: genera la matriz formada por las columnas de A y B . 2. [A; B ]: genera la matriz formada por las las de A seguidas de las de B . 3. [A B ; C D]: genera una matriz formada por cuatro bloques.

EJERCICIO 2. Construir cuatro matrices aleatorias de n umeros enteros en el intervalo (0, 9) asign andoles las siguientes variables: A de dimensi on 3 2, B de dimensi on 3 3, C de dimensi on 2 3, D de dimensi on 22. A continuaci on teclear las siguientes instrucciones observando el resultado obtenido: 1. E = [A B ] 2. F = [B ; C ] 3. G = [A eye(3)] 4. H = [A B ; C D] 5. J = [E ; zeros(2, 5)] 6. K = [F ones(5, 2)]

2.4

Algebra matricial

Las operaciones que podemos realizar con matrices en el MATLAB son la suma, resta, multiplicaci on producto por un escalar, c alculo de potencias y la trasposici on. La notaci on utilizada para estas operaciones ser a: 1. Suma de matrices A + B 2. Resta de matrices A B 3. Producto de matrices A B 4. Producto de un escalar por una matriz a A 5. Potencias A k 6. Trasposici on A

Formas escalonadas de una matriz

Sabemos que toda matriz tiene una forma can onica escalonada equivalente. En MATLAB esta se obtiene con el comando rref( ). EJERCICIO 3. a) Introducir una matriz aleatoria, A, de dimensi on 3 4 y obtener su forma escalonada can onica. b) Obtener la forma escalonada can onica de la matriz A . c) Qu e relaci on existe entre ambas formas escalonadas?

Determinantes

En MATLAB el determinante de una matriz cuadrada se puede calcular mediante el comando det( ).

Inversas

En MATLAB la inversa de una matriz cuadrada, si existe, se puede calcular utilizando el comando inv. Tambi en podemos el algoritmo de Gauss-Jordan partiendo de la matriz por bloques [A eye(A)] EJERCICIO 4. Generar una matriz cuadrada aleatoria de orden 7 a) Comprobar si es regular b) En caso de ser regular calcular la inversa mediante los dos procedimientos anteriormente descritos.

You might also like