Buscar
  • Victor Ortuno

OPERACIONES CON MATRICES EN PYTHON

Esta entrada participa en la Edición 13.2: del Carnaval de Matemáticas, que en esta ocasión organiza Gaussianos.



Para ver el programa que he hecho para las operaciones con matrices(determinantes, inversa, multiplicaciones) pincha en este enlace. El propósito de este programa ha sido el de facilitarme el calculo de determinantes o inversas en los ejercicios de algebra y geometría en segundo de bachillerato.


En segundo de bachillerato hemos aprendido que es una matriz y algunas operaciones que se pueden hacer con ellas. Una matriz de dimensiones (n x m) es un conjunto de números dispuestos en n filas y m columnas.



El elemento aij es el que está en la fila i y columna j .



DETERMINANTE


El determinante de una matriz es de fundamental importancia ya que nos permite saber si una matriz tiene inversa, se usa para el producto vectorial y nos permite saber si un conjunto de vectores son linealmente independiente(nos sirve para estudiar la posición relativa entre rectas y planos).


Calcular el determinante de una matriz 1x1 es sencillo, el determinante es el único numero que hay en la matriz.

Para una matriz 2x2, el determinante es la resta del producto de las diagonales.

Para una matriz 3x3, se utiliza la Regla de Sarrus:








El problema viene cuando la matriz es de dimensión mayor que tres. Para este tipo de matrices se utiliza la regla de Laplace donde se hace la suma del producto de cada elemento de una fila(también se puede hacer por columnas) por su adjunto.


En una matriz 3x3 sería:


Para una matriz de mayores dimensiones, los determinantes 2x2 que hay en la imagen superior se cambiarían por otros de dimensiones mas grandes. Para resolver determinantes de cualquier dimensión he escrito un programa recursivo donde va utilizando este método hasta reducir el determinante a 1x1. En el caso anterior sería:



Para realizar esto en Python, primero he creado una función que va recortando la matriz. Siempre se va a eliminar la primera fila y las columnas van a ir cambiando.









Una vez hecha esta función, he creado otra que calcula el determinante.













El resultado es el siguiente:








INVERSA DE UNA MATRIZ


La inversa de una matriz es aquella que multiplicada por la matriz original, da la matriz identidad del orden correspondiente. Para que haya inversa, el determinante no puede dar cero.


El método de calcular la matriz inversa es:


He programado todo este proceso en Python. Veamos un ejemplo.

La matriz es:


La matriz transpuesta:


Los menores:


Los adjuntos:


La inversa será:


Juntando todo esto, calcular la inversa de una matriz en Python es muy sencillo.




MULTIPLICAIONES DE DOS MATRICES



Para multiplicar dos matrices, debemos saber que el número de columnas de la primera matriz debe coincidir con el número de filas de la segunda.

Cada elemento de la matriz nueva va a ser obtenido de la multiplicación de cada elemento de la fila i de la matriz primera por cada elemento de la columna j de la segunda matriz y sumándolos.

Este es un proceso muy fácil de programar en Python. Un ejemplo sería el siguiente:








156 visualizaciones1 comentario