Está en la página 1de 6

ALGEBRA LINEAL

INGENIERIA INFORMATICA

Curso 08/09

PRACTICA 1

Comenzando con MATLAB


1 Funcionamiento de Matlab
MATLAB es un sistema interactivo basado en matrices para calculos cientficos y de ingeniera. El
nombre de MATLAB proviene de las iniciales de MATrix LABoratory, ya que el tipo de dato basico
con el que trabaja es una matriz. Matlab se puede utilizar en computacion matematica, analisis y
procesamiento de datos, graficos, 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 historico 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 documentacion para ayudar al usuario en el manejo
de la aplicacion. Esta ventana se abre directamente desde el men
u help que esta 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 informacion del comando especfico cuyo
nombre(nom) hemos escrito.

Ventana de comando
Como hemos mencionado anteriormente la ventana de comando es la ventana principal de MAT-
LAB 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 smbolo >>, tambien llamado prompt, esto nos indica que MATLAB esta esperando
un comando.

Observaciones
Para teclear un comando el cursor debe estar situado a continuacion 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 mas tarde que este problema puede solucionarse.
Puede teclearse mas de un comando en una lnea, 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 lnea anterior para hacer una correccion y volver a ejecutar
un comando.

Un comando tecleado anteriormente puede volver a ser llamado utilizando las flechas 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 final de un comando hace que la salida no sea visualizada. Si
tecleamos varios comandos en la misma lnea basta separarlos por (;) en vez de por (,).

El smbolo tanto por ciento


Cuando se teclea el smbolo tanto por ciento al principio de una lnea, MATLAB entiende que
todo lo que aparece detras es un comentario. Dicho comentario puede ir detras de un comando en
la misma lnea, este no tiene ning
un efecto sobre la ejecucion del comando.

El comando clc
El comando clc borra la ventana de comandos. Este comando no vara nada de lo que se ha hecho
anteriormente, por ejemplo, si anteriormente se han definido variables con sus valores asignados,
estas podran seguir siendo utilizadas. Los comandos tecleados anteriormente pueden seguir siendo
recuperados con los cursores, como hemos indicado anteriormente.

Formatos de visualizaci on de numeros Cuando MATLAB visualiza resultados numericos


sigue algunas reglas. Por defecto, si un resultado es entero lo visualiza como entero. Cuando un
resultado es real lo visualiza con aproximadamente cuatro dgitos a la derecha del punto decimal. Si
los dgitos significativos en el resultado estan fuera de este rango, MATLAB visualiza el resultado
en notacion cientfica similar a las calculadoras. Si queremos que los resultados aparezcan de una
forma diferente a la dada por defecto se debera especificar el formato numerico diferente usando la
opcion Numeric Format en el men u de Preferencias de la aplicacion o escribiendo la orden apropiada
en MATLAB. Algunos de estos formatos numericos son:

format long: 16 dgitos

short e : 5 dgitos mas exponente

long e : 16 dgitos mas exponente

format bank: 2 dgitos decimales

format rat : aproximacion racional

format short: visualizacion por defecto

Observacion: MATLAB no cambia la representacion interna de un n


umero cuando se escogen
diferentes formatos, solo se modifica la visualizacion del mismo.
MATLAB opera siempre por defecto en forma aproximada, por ejemplo >> b=1/6
b= 0.1666

2 Matrices y Matlab
2.1 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 filas se separan por un punto y coma.

La matriz esta metida entre corchetes.

Ejemplo: Introducir la matriz [1 -1 1 0; 2 0 0 1;3 1 -1 2] presionar enter y ver de que forma la


presenta en pantalla MATLAB.
Para asignar un nombre a una matriz utilizamos el operador de asignacion =, de la forma: A=[1
-1 1 0; 2 0 0 1;3 1 -1 2]

Observaciones

Todas las filas 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 posicion (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 aparecera dividida en subconjuntos de columnas que
apareceran 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 fila 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 filas m y n de la matriz A.


5. La especificacion A(m : n, :) puede generalizarse a A(m : q : n)indicando los terminos (filas o
columnas) desde la posicion m hasta la n saltando de q en q

EJERCICIO 1.
Definir una matriz A de dimension 4 5 y extraer los bloques formados por:

1. la fila cuarta

2. la columna tercera

3. desde la fila 2 a la 4

4. desde la columna 1 a la columna 3

5. las columnas 1,3 y 5

6. las filas 2 y 4

2.2 Generaci
on de matrices
2.2.1 Los comandos zeros, ones, eye

MATLAB posee instrucciones para generar tipos especiales de matrices como son : la matriz iden-
tidad, matriz nula y matrices cuyos elementos son todos unos. Estos comandos son los siguientes:

1. eye(i) presenta en pantalla una matriz identidad de dimension i i.

2. t = k ; eye(t) presenta una matriz identidad de dimension k k.

3. eye(A) presenta una matriz identidad de la misma dimension 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 dimension m n.

6. ones(m,n) produce una matriz de unos de dimension m n.

2.2.2 El comando rand

El comando rand produce n umeros pseudoaleatorios en el intervalo (0, 1). La instruccion rand(m,n)
genera aleatoriamente una matriz de dimension m n as como rand(n) genera una matriz aleatoria
de dimension 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 instruccion (10*rand(m,n ))
Con fix(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 mas 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 filas 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) asignandoles las
siguientes variables: A de dimension 3 2, B de dimension 3 3, C de dimension 2 3, D de
dimension 22. A continuacion 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, multiplicacion
producto por un escalar, calculo de potencias y la trasposicion. La notacion utilizada para estas
operaciones sera:

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
0
6. Trasposicion A
3 Formas escalonadas de una matriz
Sabemos que toda matriz tiene una forma canonica escalonada equivalente. En MATLAB esta se
obtiene con el comando rref( ).

EJERCICIO 3.

a) Introducir una matriz aleatoria, A, de dimension 34 y obtener su forma escalonada canonica.

b) Obtener la forma escalonada canonica de la matriz A0 .

c) Que relacion existe entre ambas formas escalonadas?

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

5 Inversas
En MATLAB la inversa de una matriz cuadrada, si existe, se puede calcular utilizando el comando
inv. Tambien 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.

También podría gustarte