Main Content

Matrices y arreglos

MATLAB es la abreviatura de "matrix laboratory" (laboratorio de matrices). Aunque otros lenguajes de programación mayormente procesan los números de uno en uno, MATLAB® está diseñado para funcionar principalmente con matrices y arreglos completos.

Todas las variables de MATLAB son arreglos multidimensionales, sin importar el tipo de datos. Una matriz es un arreglo bidimensional que a menudo se utiliza para el álgebra lineal.

Creación de arreglos

Para crear un arreglo con cuatro elementos en una fila única, separe los elementos con una coma (,) o un espacio.

a = [1 2 3 4]
a = 1×4

     1     2     3     4

Este tipo de arreglo es un vector fila.

Para crear una matriz con varias filas, separe las filas con punto y coma.

a = [1 3 5; 2 4 6; 7 8 10]
a = 3×3

     1     3     5
     2     4     6
     7     8    10

Otra forma de crear una matriz es usando una función, como ones, zeros o rand. Por ejemplo, cree un vector columna de ceros de 5 por 1.

z = zeros(5,1)
z = 5×1

     0
     0
     0
     0
     0

Operaciones con matrices y arreglos

MATLAB le permite procesar todos los valores de una matriz mediante el uso de una sola función u operador aritmético.

a + 10
ans = 3×3

    11    13    15
    12    14    16
    17    18    20

sin(a)
ans = 3×3

    0.8415    0.1411   -0.9589
    0.9093   -0.7568   -0.2794
    0.6570    0.9894   -0.5440

Para trasponer una matriz, use una comilla simple ('):

a'
ans = 3×3

     1     2     7
     3     4     8
     5     6    10

Para realizar una multiplicación de matrices estándar, la cual calcula los productos internos entre filas y columnas, use el operador *. Por ejemplo, confirme que el producto de una matriz por su inversa es igual a la matriz identidad:

p = a*inv(a)
p = 3×3

    1.0000    0.0000   -0.0000
         0    1.0000   -0.0000
         0    0.0000    1.0000

Observe que p no es una matriz de valores enteros. MATLAB almacena los números como valores de punto flotante, y las operaciones aritméticas son sensibles a pequeñas diferencias entre el valor real y su representación en punto flotante. Para visualizar más dígitos decimales, use el comando format:

format long
p = a*inv(a)
p = 3×3

   0.999999999999996   0.000000000000007  -0.000000000000002
                   0   1.000000000000000  -0.000000000000003
                   0   0.000000000000014   0.999999999999995

Restablezca la visualización al formato más corto con

format short

format influye solo en la visualización de números, no en la forma en que MATLAB los calcula o los guarda.

Para realizar una multiplicación elemento por elemento en lugar de una multiplicación de matrices, utilice el operador .*:

p = a.*a
p = 3×3

     1     9    25
     4    16    36
    49    64   100

Cada uno de los operadores de matriz para la multiplicación, la división y la potencia tiene un operador de arreglo correspondiente que opera elemento por elemento. Por ejemplo, eleve cada elemento de a a la tercera potencia:

a.^3
ans = 3×3

           1          27         125
           8          64         216
         343         512        1000

Concatenación

La concatenación es el proceso que consiste en unir arreglos para crear otros más grandes. De hecho, el primer arreglo de este capítulo resultó de la concatenación de sus elementos individuales. El operador de concatenación es el par de corchetes: [].

A = [a,a]
A = 3×6

     1     3     5     1     3     5
     2     4     6     2     4     6
     7     8    10     7     8    10

La concatenación de arreglos uno junto a otro mediante el uso de comas se conoce como concatenación horizontal. Cada arreglo debe tener la misma cantidad de filas. De forma similar, cuando los arreglos tienen la misma cantidad de columnas, es posible concatenarlos verticalmente mediante el uso de punto y coma.

A = [a; a]
A = 6×3

     1     3     5
     2     4     6
     7     8    10
     1     3     5
     2     4     6
     7     8    10

Números complejos

Los números complejos tienen partes reales e imaginarias, donde la unidad imaginaria es la raíz cuadrada de -1.

sqrt(-1)
ans = 0.0000 + 1.0000i

Para representar la parte imaginaria de números complejos, use i o j.

c = [3+4i, 4+3j; -i, 10j]
c = 2×2 complex

   3.0000 + 4.0000i   4.0000 + 3.0000i
   0.0000 - 1.0000i   0.0000 +10.0000i