Prac 1
Prac 1
Prac 1
Natalia Boal
Marı́a Luisa Sein-Echaluce
Universidad de Zaragoza
1 Generalidades
MATLAB (MATrix LABoratory) es un paquete interactivo basado en matrices que permite
la realización de cálculos cientı́ficos (aritméticos y simbólicos), es fácil de usar y , en prin-
cipio, no requiere el conocimiento de un lenguaje de programación. Este sistema ofrece
excelentes posibilidades gráficas (en dos y tres dimensiones), tiene gran cantidad de fun-
ciones predefinidas y además permite al usuario crear sus propias funciones de modo que se
aumenta la aplicabilidad del sistema. Destacar también que MATLAB posee unas toolboxes
(que se adquieren por separado) con las que se pueden resolver problemas especı́ficos como,
por ejemplo, procesado de señales, simulación de sistemas dinámicos, redes neuronales, etc.
Otra de las posibilidades que ofrece este programa es la de interaccionar con otros lenguajes
de programación como son C o Fortran.
Antes de empezar a trabajar con MATLAB conviene dar unas indicaciones de carácter
general:
• “>>” es el prompt de MATLAB e indica que está listo para aceptar órdenes.
• Hay que respetar la sintaxis utilizada por el programa y tener en cuenta que MATLAB,
por defecto, distingue entre mayúsculas y minúsculas.
• Para ejecutar una orden basta pulsar la tecla ENTER.
• Una sentencia termina con un retorno de carro. Si ocupa más de una lı́nea se puede
continuar en la siguiente, para ello basta poner tres punto suspensivos (...) y pulsar retorno
de carro.
• Terminar una orden con punto y coma (;) indica que no queremos visualizar en pantalla
el resultado de una expresión.
• Se pueden escribir varias sentencias en la misma lı́nea separadas por una coma o por un
punto y coma.
• >> diary nombre fichero.txt: permite grabar en un fichero texto la sesión de trabajo.
Con diary off y diary on desactivamos y activamos la grabación en el fichero.
• >> help nombre funcion: para consultar cualquier función del programa.
• >> clear: elimina todas las variables no permanentes. Es posible borrar únicamente
algunas de las variables del espacio de trabajo con la orden clear nombre variable.
• >> who: visualiza las variables creadas en la sesión actual de trabajo. (>> whos da una
información más amplia).
• % indica que lo que sigue es un comentario y no se ha de ejecutar.
1
2 Uso de matrices
MATLAB trabaja esencialmente con matrices de números reales o complejos. Las matrices
1×1 las interpreta como escalares y las matrices fila o columna como vectores. A continuación
presentamos unas instrucciones para el manejo básico de matrices.
Calcula:
a) a13 + a32 ,
b) tres veces la primera columna de A,
c) dos veces la segunda columna más tres veces la cuarta,
d) A.*A y A*A explica cuál es el resultado en cada caso.
2
Ejercicio. Dadas las matrices
1 2 3 1 1 Ã ! 1 0 0 0
1 1 1 1
A = 4 5 6 , B = 1 2 , C = , D= 0 1 0 0
2 3 1 2
7 8 9 0 3 0 0 1 0
• Funciones matriciales
Ejercicio. Considera la matriz A del ejercicio anterior y calcula A0 , |A|, rang A. ¿Qué ocurre
si calculamos con MATLAB A−1 ?
d) Utiliza MATLAB para comprobar si has contestado bien a las preguntas anteriores.
e) Comprueba que |A| = |A1 | |A2 |.
3
3 Una aplicación de las matrices
Con frecuencia los gobiernos, las agencias nacionales de seguridad y las empresas se interesan
en la transmisión de mensajes codificados que sean difı́ciles de descifrar por otros, en caso de
ser interceptados, pero que se decodifiquen con facilidad por quienes lo escriben. Hay muchas
formas interesantes de cifrar o codificar un mensaje, y en su mayor parte usan la teorı́a de
números o el álgebra lineal. A continuación describimos uno que es eficaz, en especial cuando
se usa una matriz regular de gran tamaño.
Sea M una matriz regular, sólo conocida por quienes la transmiten y quienes la reciben.
Por ejemplo, µ ¶
−3 4
M =
−1 2
Supongamos que se desea codificar el mensaje
AT AC AR AH ORA
Ejercicio. Basado en el método anterior, decodifica el mensaje dado por los números
{−2, −18, 19, 0, −1, 1, −8, −20, 20, −6, −8, 15, 0, −4, 9, 26, 10, −5, 10, 15, −5, 13, −3, 6, −4, 2, 7}
conocida la matriz
1 0 1
M −1 = 0 1 1.
0 1 2
Ejercicio. Dadas A y B matrices de Mn (IK) razona si son ciertas o falsas las siguientes
afirmaciones.
a) (A + B)2 = A2 + 2AB + B 2 .
b) (A + B)(A − B) = A2 − B 2 .
c) Si AX = BX para todo X ∈ Mn×1 (IK) se cumple A = B.