Ir al contenido

Matlab/Operaciones matriciales

De Wikilibros, la colección de libros de texto de contenido libre.

Nota:

[editar]

Cabe aclarar que como su nombre lo indica Matlab (Laboratorio de Matrices) trata a todas las variables como si fueran una matriz. Por ejemplo si es A=1, genera una matriz de 1x1.

Declaración de una matriz de 3x3

[editar]

Dada una matriz:

>> A=[1 -2 3;4 1 -1;2 -1 3];
>> B=[ 11; 4; 10];

A =
     2
    -3
     1

Nota: Se usa "[" para empezar a declarar la matriz; se cierra con "]". Para pasar a la segunda fila agrego un ";" y cada componente esta separado por un "espacio". Recuerde que si no quiere ver la salida del comando ingrese ";" al final.

Suma de matrices

[editar]

Suponga que quiero hacer la siguiente operación entra las matrices a y b. Cabe aclarer que las matrices tiene que ser de las mismas dimensiones, para este ejemplo se definieron dos matrices de 2x2.



Código en Matlab:

>> a=[2 .5;1 3];b=[2 1;.5 3]; %Declaración de las matrices.
>> a+b

ans =

    4.0000    1.5000
    1.5000    6.0000

Multiplicación de matrices

[editar]

Para multiplicar dos matrices (axb), "a" tiene que tener la misma cantidad columnas que la cantidad de filas que b. El resultado de la multiplicación sera entonces igual a la cantidad de filas de "a" y tendra tantas columnas como "b". Dada una matriz A de 3 filas x 3 columnas(3x3) y una matriz B de 3x2; podemos verificar que el producto es posible y el resultado de la multiplicación sera de una matriz de 3x2.

Ejemplos en Matlab:

A=[0.1 0.3 0.3;2 3 9;2 4 1];
>> B=[2 3;1 1;1 10];
>> A*B

ans =

    0.8000    3.6000
   16.0000   99.0000
    9.0000   20.0000

Que pasa ahora si le pedimos a Matlab que haga el producto de BxA?

Inversa de una matriz

[editar]

Dada una matriz A:

Quiero calcular la inversa de dicha matriz:

>> A=[0.1 0.3 0.3;2 3 9;2 4 1];
>> inv(A)

ans =

  -15.7143    0.4286    0.8571
    7.6190   -0.2381   -0.1429
    0.9524    0.0952   -0.1429

Cálculo del determinante

[editar]

Dada una matriz A, se desea calcular el determinante de dicha matriz.

Código en Matlab:

>> A=[1 2 3;2 3 4;3 4 5]
>> det(A)

ans =

     0

Matriz Transpuesta

[editar]

Para calcular la traspuesta de una matriz en matlab utilizo el carácter especial "'".

Ejemplo en Matlab:

>> A=[2 .5;1 3]

A =

    2.0000    0.5000
    1.0000    3.0000

>> A'

ans =

    2.0000    1.0000
    0.5000    3.0000

Selección de un componente de una matriz

[editar]

Por ejemplo selecciono el componente de la fila 1 columna 2.

>> A=[1 10;2 3];
>> A(1,2)

ans =

    10

Selección de toda la fila 1:

>> A(1,:)

ans =

     1    10

Verificando las dimensiones de una matriz

[editar]

Utilizo la misma matriz A del ejemplo anterior para trabajar.

>> size(A)

ans =

     2     2

Rango de una matriz

[editar]

Para comprobar el rango el comando que se utiliza es "rank"

A=[1 2 3;2 3 4;3 4 5];
>> rank(A)

ans =

     2

Resolución de un sistemas de ecuaciones

[editar]

Dada la Matriz A y B:

-->A=[2 1 1;3 2 3;1 1 5];B=[-4; 1; -1];
A\B
 ans  =
 
  - 11.  
    20.  
  - 2.