Escribe una matriz cuadrada, abre la pestaña Descomposiciones y pulsa LU(A). Como la respuesta es un par de matrices y no una sola, vive enteramente en el panel paso a paso, que se abre solo y muestra L y U una junto a otra al final. Cholesky(A) está en la misma pestaña, para el caso simétrico explicado abajo.
Qué son los factores
La LU escribe A = L·U, con L triangular inferior y U triangular superior. Ninguna de las dos es misteriosa: U es exactamente la forma escalonada que produce la eliminación gaussiana, y L guarda los multiplicadores que usaste por el camino. Hacer la eliminación una vez te entrega las dos.
Ejemplo resuelto
| 4 | 3 |
| 6 | 3 |
| 1 | 0 |
| 3/2 | 1 |
| 4 | 3 |
| 0 | −3/2 |
El 3/2 de L es el multiplicador que anuló el 6 bajo el pivote. Fíjate en que el determinante sale gratis: multiplica la diagonal de U y obtienes 4 · (−3/2) = −6, por −1 por cada intercambio de filas realizado.
Para qué sirve
Porque la factorización es reutilizable. Resolver Ax = b desde cero cuesta unas n³/3 operaciones. Con L y U ya calculadas, cada nuevo término independiente cuesta solo n²: resuelve Ly = b por sustitución progresiva y luego Ux = y por sustitución regresiva. Si resuelves el mismo sistema contra muchos vectores b distintos —el caso normal en ingeniería y simulación— el ahorro es enorme. Para una matriz 100×100 y cincuenta términos independientes, eso es una factorización más cincuenta pasadas baratas, en lugar de cincuenta eliminaciones completas.
Sustitución progresiva y regresiva, en la práctica
Toma la matriz 3×3 cargada arriba. Una sola eliminación entrega los dos factores:
| 2 | 1 | 1 |
| 4 | −6 | 0 |
| −2 | 7 | 2 |
| 1 | 0 | 0 |
| 2 | 1 | 0 |
| −1 | −1 | 1 |
| 2 | 1 | 1 |
| 0 | −8 | −2 |
| 0 | 0 | 1 |
Los elementos de L son exactamente los multiplicadores usados durante la eliminación: 2 anuló el 4, −1 anuló el −2, y −1 anuló lo que quedaba en la segunda columna. Ahora resuelve Ax = b con b = (4, −2, 7). Primero Ly = b, de arriba abajo, y cada fila da un valor nuevo de inmediato porque todo lo que hay a su derecha es cero:
y₁ = 4; luego 2·4 + y₂ = −2, así que y₂ = −10; luego −4 + 10 + y₃ = 7, así que y₃ = 1.
Después Ux = y, de abajo arriba: x₃ = 1; luego −8x₂ − 2 = −10, así que x₂ = 1; luego 2x₁ + 1 + 1 = 4, así que x₁ = 1. La solución es (1, 1, 1), alcanzada sin una sola división por algo que no fuera un elemento de la diagonal. El determinante sale gratis de los mismos factores: 2 · (−8) · 1 = −16.
Pivoteo
No toda matriz admite un A = L·U simple: un cero en la posición del pivote lo rompe. La solución es una matriz de permutación, que da P·A = L·U. En la práctica el pivoteo se usa de todos modos, porque escoger el mayor pivote disponible mantiene controlados los errores de redondeo. La factorización es única una vez fijado un convenio; esta calculadora usa el de Doolittle, que pone unos en la diagonal de L.
Cholesky: el caso simétrico
Si A es simétrica y definida positiva, se factoriza como A = L·Lᵀ: una raíz cuadrada para matrices, con un único factor triangular. Simétrica significa A = Aᵀ; definida positiva significa que todo autovalor es mayor que cero. Suena restrictivo, pero las matrices que eso describe están por todas partes: las matrices de covarianza, las matrices de Gram, las ecuaciones normales de mínimos cuadrados y las matrices de rigidez de elementos finitos son todas simétricas definidas positivas por construcción.
| 4 | 2 |
| 2 | 5 |
| 2 | 0 |
| 1 | 2 |
| 2 | 1 |
| 0 | 2 |
Cada elemento de la diagonal de L es una raíz cuadrada —aquí √4 = 2 y √(5 − 1²) = 2— y por eso el método necesita que la cantidad bajo cada raíz siga siendo positiva. Ese requisito es exactamente la definición positiva, y convierte el algoritmo en una prueba: si la descomposición se completa, la matriz es definida positiva; si tropieza con un valor no positivo bajo una raíz, no lo es. Cholesky es casi el doble de rápida que LU, usa la mitad de memoria y es estable sin pivoteo, y por eso los solucionadores comprueban primero la simetría y recurren a ella siempre que pueden.
Errores frecuentes
- Suponer que toda matriz se factoriza. Un cero en la posición del pivote rompe la LU simple. La solución es una matriz de permutación:
P·A = L·U. - Usar Cholesky en una matriz no simétrica. A = L·Lᵀ es simétrica por construcción, así que una entrada no simétrica no tiene esa factorización. Usa LU.
- Creer que basta con la simetría. Una matriz simétrica con un autovalor negativo es indefinida y fallará a mitad del algoritmo.
- Esperar factores enteros. La diagonal de Cholesky lleva raíces cuadradas, así que L suele ser irracional aunque A no lo sea.
- Olvidar los intercambios de filas en el determinante. Cada intercambio le cambia el signo.