Tecnologo
1.
Introducci´n o
En esta pr´ctica vamos a profundizar un poco en las capacidades de Matlab para trabajar con matrices. Veremos a en primer lugar algunas operaciones y comandos b´sicos y no tan b´sicos que tiene el programa para trabajar con a a matrices.
2.Matrices en Matlab
Para introducir una matriz en Matlab se procede de la forma siguiente. Si por ejemplo tenemos la matriz A= 1 2 3 4 5 6 7 8
se introduce como: >>A=[1 2 3 4; 5 6 7 8] A = 1 5 O bien, >>A=[1,2,3,4;5,6,7,8]; Observemos que unas matrices especiales son los vectores, de esta forma, el vector fila v = (1.0, 1.1,1.2,1.3, . . . , 1.9,2.0), se escribe en Matlab como >>v=[1.0, 1.1,1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0] 2 6 3 7 4 8
3.
Operaciones y comandos para Matrices
Hemos visto c´mo se introducen las matrices en Matlab. Veamos un ejemplo para introducir algunos de los o comandos b´sicos: a Ejemplo 1 Operaciones Elementales Definimos dos matrices: >>A=[2 1;3 2] A = 2 3 >>B=[3 4;-1 5] B = 3 -1
1 2
4 5
• Para sumar las dos matrices:
1
>>A+B ans= 5 2 5 7
• Para multiplicar una matriz por un escalar: >>3*A ans = 6 9 3 6
• Producto de matrices: >>C=A*B C = 5 7
13 22
Siempre que los tama˜os de las matrices sean los adecuados. Para saber cu´l es el tama˜ o de una matriz con n a n la que estamos trabajando, >>size(A) ans = 2
2
Que quiere decir, evidentemente, 2 filas y 2 columnas. • Para calcular la matriz transpuesta: >>A’ans = 2 1 3 2
Ejercicio 1 Utilizando las matrices definidas en el ejemplo anterior, comprobar que (AB) t = B t At . (At es la transpuesta de A). Ejemplo 2 Operaciones t´rmino a t´rmino: .* ./ .^ e e Matlab tiene tres operaciones, que las llamaremos operaciones con punto, que permiten i) multiplicar matrices t´rmino a t´rmino: .* e e ii) dividir matrices t´rmino a t´rmino: ./ e e ii) elevar lost´rminos de una matriz a una cierta potencia: .^ e Si v es el vector definido en la Secci´n 2, explorar qu´ hace la orden o e >>v.^2 Por otra parte, si A y B son las matrices definidas anteriormente, explorar qu´ hacen las ordenes e ´ >>A.*B >>A./B Estas operaciones con punto son esenciales en el c´lculo num´rico y se utilizan para representar funciones a e num´ricamente. e Ejemplo 3 Matricesespeciales con Matlab • Para generar la matriz identidad cuadrada,
2
>>eye(3) ans = 1 0 0
0 1 0
0 0 1
¿Por qu´ habr´n elegido el nombre eye? e a • Una matriz 3 × 2 llena de unos, >>ones(3,2) • Y si queremos que est´ llena de ceros, e >>zeros(3,2) • Para generar una matriz con n´meros aleatorios uniformemente distribuidos entre 0 y 1, u >>rand(3,2) Si se usa el comando randn los n´merosaleatorios son normalmente distribuidos, siguiendo la Normal Estandar u N (0, 1). Ejemplo 4 Rango, Inversa y Determinante • Definimos la matriz, >>X=[2 3 4; 1 -1 0] X = 3 4 2 1 -1 0 Para calcular su rango, >>rank(X) ans = 2 • Supongamos que tenemos definida la siguiente matriz, H = 8 3 4 1 5 9 6 7 2
Para calcular su inversa, >>inv(H) ans = 0.1472 -0.0611 -0.0194
-0.1444 0.0222 0.1889
0.06390.1056 -0.1028
Y si queremos ver el resultado en forma racional, >>format rational >>inv(H) ans = 53/360 -13/90 -11/180 1/45 -7/360 17/90
23/360 19/180 -37/360
(Para ver todas las opciones del comando format hacer help format) • Para calcular el determinante de la matriz anterior H, 3
>>det(H) ans = -360 Ejercicio 2 Generar una matriz cualquiera, por ejemplo 25×25, y calcular su inversa,su rango y su determinante. (¡No imprimirla!) ¿Qu´ ocurre con el determinante de la matriz y el de su inversa? e Ejemplo 5 Los comandos especiales rref y rrefmovie • El comando rref produce la forma reducida escalonada por filas de una matriz usando la eliminaci´n de o Gauss-Jordan, es decir, haciendo ceros por debajo y por encima de la diagonal principal sin mover las columnas. Por ejemplo,...
Regístrate para leer el documento completo.