Calculadora de matrices gratuita

Ejecuta operaciones con matrices: suma, resta, multiplicación, transposición, determinante e inversa.

Matriz A

Matriz B

Cómo funciona

Define las dimensiones de las matrices A y B, introduce los valores y selecciona una operación. La calculadora verifica las dimensiones y realiza la operación, mostrando el resultado en una cuadrícula matricial clara.

Operaciones admitidas

Preguntas frecuentes

¿Qué dimensiones de matriz se admiten?

Se admiten matrices hasta 6×6. Selecciona el número de filas y columnas de cada matriz antes de introducir los valores.

¿Cuándo puedo calcular una inversa?

La inversa de una matriz solo existe para matrices cuadradas (mismo número de filas y columnas) con un determinante distinto de cero. Las matrices singulares (determinante = 0) no tienen inversa.

¿Se guardan mis datos?

No. Todos los cálculos se ejecutan en tu navegador. Nada se guarda ni se envía a un servidor.

Qué es en realidad una matriz

Una matriz es una disposición rectangular de números ordenados en filas y columnas y tratados como un único objeto matemático. La forma se escribe como m × n, donde m es el número de filas y n el número de columnas, siempre las filas primero. Los números individuales del interior son entradas o elementos; una entrada de la fila i, columna j se referencia como aij usando indexación basada en 1. (Uno de los errores más comunes al portar artículos de matemáticas a código es el desajuste entre esta convención basada en 1 y la indexación basada en 0 que usan C, Python y JavaScript.)

Un vector es una matriz con una fila (1 × n, «vector fila») o una columna (m × 1, «vector columna»). Un escalar es una matriz 1 × 1. Este anidamiento importa: significa que toda operación del álgebra lineal (productos escalares, proyecciones, transformaciones) puede expresarse de manera uniforme como aritmética de matrices, razón por la cual las matrices se convirtieron en el lenguaje universal de las matemáticas aplicadas después de 1900.

Una breve historia

El precursor más antiguo que se conoce está en la obra china Nueve capítulos sobre el arte matemático (en torno al siglo II a. C.), que usaba un método tabular de eliminación gaussiana llamado fangcheng para resolver sistemas de ecuaciones lineales. El término moderno «matriz» lo acuñó el matemático inglés James Joseph Sylvester en 1850, inspirándose en la palabra latina para «útero», una estructura dentro de la cual podían crecer los subdeterminantes. El artículo fundacional fue «A Memoir on the Theory of Matrices», de 1858, de Arthur Cayley, amigo y colaborador de Sylvester, que formalizó la multiplicación de matrices, la matriz identidad, la matriz cero y la inversa, convirtiendo las matrices de una comodidad notacional en un álgebra por derecho propio.

A lo largo de finales del siglo XIX y principios del XX, la eliminación de Gauss-Jordan, la teoría de valores propios y el teorema espectral consolidaron las matrices como la herramienta central del álgebra lineal. Los puntos de inflexión del siglo XX fueron la formulación de la mecánica matricial de la teoría cuántica de Werner Heisenberg en 1925 (razón por la cual los físicos empezaron a tomarse en serio las matrices), el artículo de 1947 de John von Neumann y Herman Goldstine sobre la inversión numérica de matrices de orden alto que fundó el álgebra lineal numérica moderna, y la publicación en 1979 de BLAS (Basic Linear Algebra Subprograms) y la de 1992 de LAPACK: las bibliotecas optimizadas a las que toda plataforma de computación científica, de MATLAB a NumPy, acaba llamando.

Las seis operaciones fundamentales, explicadas

Suma y resta. Ambas matrices deben tener dimensiones idénticas. El resultado tiene la misma forma y cada entrada es la suma elemento a elemento: cij = aij + bij. No puedes sumar una 2×3 a una 3×2; la operación no está definida. La suma de matrices es conmutativa y asociativa, igual que la suma ordinaria de números.

Multiplicación de matrices. La operación que hace poderosas a las matrices, y la que la mayoría de la gente hace mal en su primer encuentro. Para que C = A × B esté definida, las dimensiones internas deben coincidir: si A es m × n, B debe ser n × p, y el resultado C es m × p. La «n» del medio se cancela; la «m» y la «p» de los extremos sobreviven. Cada entrada se calcula como un producto escalar de una fila de A con una columna de B: cij = Σ aik · bkj sumado sobre k.

Un ejemplo resuelto de 2×2:

A = [1 2]   B = [5 6]   A·B = [1·5+2·7  1·6+2·8] = [19 22]
    [3 4]       [7 8]         [3·5+4·7  3·6+4·8]   [43 50]

La multiplicación de matrices no es conmutativa: A·B ≠ B·A en general, y a veces ambos productos son incluso de formas distintas. (Si A es 2×3 y B es 3×2, A·B es 2×2 pero B·A es 3×3.) Esta no conmutatividad es la fuente de buena parte de la riqueza del álgebra lineal y es la razón por la que el artículo de Cayley de 1858 se considera fundacional.

Transposición: se escribe AT: intercambia filas y columnas. La entrada que estaba en la fila i, columna j pasa a ser la entrada de la fila j, columna i. Así que si A es m × n, AT es n × m. Identidad útil: (A·B)T = BT·AT, con el orden invertido.

Determinante: un único escalar que resume una matriz cuadrada. Para una 2×2 es ad − bc; para matrices más grandes se expande de forma recursiva mediante el desarrollo por cofactores (poco práctico más allá de 4×4) o mediante la descomposición LU (el algoritmo que usan los ordenadores, O(n³)). Geométricamente, el valor absoluto del determinante es el factor por el cual la aplicación lineal escala áreas (en 2D), volúmenes (en 3D), etcétera. Un determinante de 2 significa que el cuadrado unidad se transforma en un paralelogramo de área 2; un determinante negativo significa que la orientación se invierte (una reflexión especular); un determinante de cero significa que la transformación colapsa todo sobre una línea o un punto: la matriz es singular (no invertible).

Inversa: se escribe A⁻¹: la única matriz tal que A · A⁻¹ = A⁻¹ · A = I, donde I es la matriz identidad. La inversa «deshace» lo que hace A. Solo existe para matrices cuadradas con determinante distinto de cero. Los ordenadores calculan las inversas mediante la eliminación de Gauss-Jordan o la descomposición LU. Para 2×2 la fórmula es la famosa (1/det) × [d, -b; -c, a].

Por qué las matrices importan más allá de las matemáticas de los libros de texto

Las matrices están por todas partes en la computación moderna porque toda transformación lineal es una matriz:

Matrices especiales que conviene conocer

Notas sobre estabilidad numérica

La aritmética de matrices en coma flotante esconde trampas que no aparecen en los ejemplos de los libros de texto. El número de condición de una matriz mide cuánto amplifica su inversa las pequeñas perturbaciones de la entrada: para una matriz mal condicionada, un error del 0,1 % en una entrada puede causar un error del 1000 % en el resultado. El ejemplo patológico clásico es la matriz de Hilbert (entradas 1/(i+j-1)), cuyo número de condición explota exponencialmente con el tamaño; una matriz de Hilbert 6×6 ya tiene un número de condición de alrededor de 10⁷, lo que significa que se pierden siete dígitos decimales de precisión en la inversa.

En la práctica, los científicos computacionales casi nunca calculan A⁻¹ de forma explícita. Para resolver A·x = b, usan la descomposición LU o QR; para usar la inversa de forma implícita, multiplican A⁻¹·b mediante descomposición en lugar de construir primero A⁻¹. Para sistemas mal condicionados o rectangulares, se prefiere la pseudoinversa basada en SVD (inversa de Moore-Penrose). Esta calculadora calcula la inversa explícita para uso educativo, lo cual está bien con tamaños pequeños, pero conviene tenerlo en cuenta al escalar.

Alcance honesto

Esta calculadora cubre sumar / restar / multiplicar / transponer / determinante / inversa en matrices de hasta 6×6, las operaciones que un estudiante encuentra en un primer curso de álgebra lineal. No calcula valores propios, vectores propios ni descomposiciones de matrices (LU, QR, SVD); no muestra los pasos de reducción por filas; no admite entradas simbólicas ni fraccionarias; no maneja números complejos; y no acepta expresiones matriciales como A²·BT. Para esas funciones, las herramientas especializadas (Symbolab, Wolfram Alpha, MATLAB, NumPy, Octave, SageMath) son el paso adecuado.

Más preguntas

¿Por qué no es conmutativa la multiplicación de matrices?

Porque las matrices representan transformaciones, y el orden en que aplicas las transformaciones importa. Rotar y luego trasladar no es lo mismo que trasladar y luego rotar: la traslación arrastra de forma distinta desde una orientación de partida distinta. La no conmutatividad de la multiplicación de matrices es la codificación algebraica de este hecho físico, y es lo que hace que los gráficos 3D y la mecánica cuántica sean interesantes (y delicados).

¿Cuándo no es invertible una matriz?

Cuando su determinante es cero (de forma equivalente, cuando sus filas (o columnas) son linealmente dependientes); o, de forma equivalente, cuando la transformación lineal que representa colapsa algún vector no nulo a cero. Geométricamente, la matriz proyecta un espacio de dimensión mayor sobre un subespacio de dimensión menor y no puedes recuperar la dimensión perdida. Esas matrices se llaman «singulares». Para las matrices mal condicionadas pero técnicamente invertibles, la inversa existe en teoría, pero es tremendamente imprecisa en coma flotante: consulta la sección de estabilidad numérica de más arriba.

¿Por qué la indexación empieza en 1 en matemáticas pero en 0 en el código?

La convención matemática se remonta a siglos atrás: la primera fila es la fila 1 porque contar empieza en 1. Los lenguajes de programación eligieron la indexación basada en 0 porque simplifica la aritmética de punteros sobre la memoria de los arrays: el elemento en el desplazamiento i está en base + i × element_size, sin ningún factor de ajuste de -1. Ambas convenciones están profundamente arraigadas; una de las fuentes de errores más fiables es traducir un artículo que dice «fila 3» a código que necesita matrix[2].

¿Existe un algoritmo de multiplicación de matrices que sea el más rápido?

El algoritmo ingenuo de triple bucle se ejecuta en O(n³). Volker Strassen demostró en 1969 que bastan 7 multiplicaciones para una 2×2 (en lugar de 8), lo que da un O(n^2.807) asintótico cuando se aplica de forma recursiva. Los sucesivos refinamientos a lo largo de las décadas han empujado la cota teórica hasta aproximadamente O(n^2.371), pero las constantes son tan grandes que, para cualquier matriz que te encuentres en realidad, gana el O(n³) ingenuo implementado dentro de BLAS / cuBLAS. La cota inferior está abierta matemáticamente: es al menos O(n²), pero nadie conoce la respuesta exacta.

¿Se envía algo a un servidor?

No. La aritmética son operaciones de coma flotante sencillas en JavaScript, calculadas en tu navegador. Nada de tus matrices sale de la página; la herramienta funciona sin conexión una vez cargada.

Herramientas relacionadas