Matriz por bloques

De testwiki
Ir a la navegación Ir a la búsqueda
Una matriz por bloques de 168×168 elementos con submatrices de 12×12, 12×24, 24x12 y 24×24. Los elementos distintos de cero están en azul, los elementos cero están en gris

En matemáticas, una matriz por bloques o una matriz particionada es una matriz interpretada, caracterizada por estar dividida en secciones llamadas bloques o submatrices.[1] Intuitivamente, una matriz interpretada como una matriz por bloques se puede visualizar como la matriz original con una colección de líneas horizontales y verticales que la dividen, o particionan, en una colección de matrices más pequeñas.[2] Cualquier matriz se puede interpretar como una matriz por bloques de una o más formas, con cada interpretación definida por la forma en que se dividen sus filas y columnas.

Esta noción se puede hacer más precisa mediante una matriz M de dimensión n por m, subdividiendo n en una colección de rowgroups y luego subdividiendo m en una colección de colgroups. La matriz original se considera entonces como el total de estos grupos, en el sentido de que la entrada (i,j) de la matriz original corresponde uno a uno con alguna entrada (s,t) desplazada con respecto a algún (x,y), donde xgrupo de filas e ygrupo de columnas.

El álgebra matricial por bloques surge en general de biproductos en categorías de matrices.[3]

Ejemplo

La matriz

𝐏=[1227156233453367]

se puede dividir en cuatro bloques de 2 × 2

𝐏11=[1215],𝐏12=[2762],𝐏21=[3333],𝐏22=[4567].

La matriz particionada se puede escribir como

𝐏=[𝐏11𝐏12𝐏21𝐏22].

Multiplicación de matrices por bloques

Es posible utilizar un producto matricial dividido por bloques que involucre solo el álgebra en las submatrices de los factores. Sin embargo, la partición de los factores no es arbitraria y requiere particiones conformables[4] entre dos matrices A y B de manera que todos los productos de las submatrices que se vayan a utilizar estén definidos.[5] Dada una matriz (m×p) 𝐀 con particiones de fila q y particiones de columna s

𝐀=[𝐀11𝐀12𝐀1s𝐀21𝐀22𝐀2s𝐀q1𝐀q2𝐀qs]

y una matriz (p×n) 𝐁 con particiones de fila s y particiones de columna r

𝐁=[𝐁11𝐁12𝐁1r𝐁21𝐁22𝐁2r𝐁s1𝐁s2𝐁sr],

que son compatibles con las particiones de A, el producto de matrices

𝐂=𝐀𝐁

se puede abordar por bloques, dando 𝐂 como una matriz (m×n) con particiones de fila q y particiones de columna r. Las submatrices de la matriz resultante 𝐂 se calculan multiplicando:

𝐂qr=i=1s𝐀qi𝐁ir.

O, utilizando el convenio de suma de Einstein que suma implícitamente sobre índices repetidos:

𝐂qr=𝐀qi𝐁ir.

Inversión de una matriz por bloques

Plantilla:VT

Si una matriz se divide en cuatro bloques, puede ser invertida de la siguiente manera:

𝐏=[𝐀𝐁𝐂𝐃]1=[𝐀1+𝐀1𝐁(𝐃𝐂𝐀1𝐁)1𝐂𝐀1𝐀1𝐁(𝐃𝐂𝐀1𝐁)1(𝐃𝐂𝐀1𝐁)1𝐂𝐀1(𝐃𝐂𝐀1𝐁)1],

donde A y D son matrices cuadradas de tamaño arbitrario, y B y C son conformables para particiones. Además, A y el complemento de Schur de A en P: Plantilla:Nowrap deben ser invertibles.[6]

De manera equivalente, permutando los bloques:

𝐏=[𝐀𝐁𝐂𝐃]1=[(𝐀𝐁𝐃1𝐂)1(𝐀𝐁𝐃1𝐂)1𝐁𝐃1𝐃1𝐂(𝐀𝐁𝐃1𝐂)1𝐃1+𝐃1𝐂(𝐀𝐁𝐃1𝐂)1𝐁𝐃1].

Aquí, D y el complemento de Schur de D en P: Plantilla:Nowrap debe ser invertible.

Si A y D son ambas invertibles, entonces:

[𝐀𝐁𝐂𝐃]1=[(𝐀𝐁𝐃1𝐂)1𝟎𝟎(𝐃𝐂𝐀1𝐁)1][𝐈𝐁𝐃1𝐂𝐀1𝐈].

Por la identidad de Weinstein-Aronszajn, una de las dos matrices en la matriz diagonal de bloques es invertible exactamente cuando la otra lo es.

Matrices diagonales por bloques

Una matriz diagonal por bloques es una matriz por bloques cuadrada, tal que los bloques de la diagonal principal son matrices cuadradas y todos los bloques fuera de la diagonal son matrices cero. Es decir, una matriz diagonal por bloques A tiene la forma

𝐀=[𝐀1000𝐀2000𝐀n]

donde Ak es una matriz cuadrada para todo k = 1, ..., n. En otras palabras, la matriz A es la suma directa de A1, ..., An. También se puede indicar como A1 ⊕ A2 ⊕ ... ⊕ An o diag(A1, A2, ..., An) (este último es el mismo formalismo utilizado para una matriz diagonal). Cualquier matriz cuadrada puede considerarse trivialmente como una matriz diagonal de bloques con un solo bloque.

Para el determinante y la traza, se conservan las siguientes propiedades

det𝐀=det𝐀1××det𝐀n,tr𝐀=tr𝐀1++tr𝐀n.

Una matriz diagonal por bloques es invertible si y solo si cada uno de sus bloques de la diagonal principal es invertible, y en este caso su inversa es otra matriz diagonal por bloques dada por

[𝐀1000𝐀2000𝐀n]1=[𝐀11000𝐀21000𝐀n1].

Los autovalores y autovectores de A son simplemente los de A1 y A2 y ... y An combinados.

Matriz tridiagonal por bloques

Una matriz tridiagonal por bloques es otra matriz por bloques especial, que como la matriz diagonal de bloques es una matriz cuadrada, que tiene matrices cuadradas (bloques) en la diagonal inferior, en la diagonal principal y en la diagonal superior, y todos los demás bloques son matrices cero. Es esencialmente una matriz tridiagonal pero tiene submatrices en lugar de escalares. Una matriz tridiagonal por bloques A tiene la forma

𝐀=[𝐁1𝐂10𝐀2𝐁2𝐂2𝐀k𝐁k𝐂k𝐀n1𝐁n1𝐂n10𝐀n𝐁n]

donde Ak, Bk y Ck son submatrices cuadradas de la diagonal inferior, principal y superior respectivamente.

Las matrices tridiagonales por bloques se encuentran a menudo en soluciones numéricas de problemas de ingeniería (por ejemplo, en mecánica de fluidos computacional). Existen métodos numéricos optimizados para la factorización LU y, por lo tanto, algoritmos de solución eficientes para sistemas de ecuaciones con una matriz tridiagonal de bloques como matriz de coeficientes. El algoritmo para matrices tridiagonales, usado para la solución eficiente de sistemas de ecuaciones que involucran una matriz tridiagonal, también se puede aplicar usando operaciones matriciales para matrices tridiagonales por bloques (véase también descomposición en bloques LU).

Matriz de Toeplitz por bloques

Una matriz de Toeplitz por bloques es otra matriz por bloques especial, que contiene bloques que se repiten en las diagonales de la matriz, al igual que una matriz de Toeplitz tiene elementos repetidos en la diagonal. Los elementos individuales de la matriz por bloques, Aij, también deben ser matrices de Toeplitz.

Una matriz de Toeplitz por bloques A tiene la forma

𝐀=[𝐀(1,1)𝐀(1,2)𝐀(1,n1)𝐀(1,n)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(1,n1)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(n1,1)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(n,1)𝐀(n1,1)𝐀(2,1)𝐀(1,1)].

Transposición por bloques

También se puede definir una forma especial de matriz transpuesta para matrices por bloques, donde los bloques individuales se reordenan pero no se transponen. Sea A=(Bij) una matriz por bloques k×l con bloques m×n Bij. La transposición por bloques de A es la matriz por bloques l×k A con bloques m×n (A)ij=Bji.[7]

Al igual que con el operador traza convencional, la transposición por bloques es una aplicación lineal tal que (A+C)=A+C. Sin embargo, en general, la propiedad (AC)=CA no se mantiene a menos que los bloques de A y de C sean conmutables entre sí.

Suma directa

Para cualquier matriz arbitraria A (de tamaño m × n) y B (de tamaño p × q), se define la suma directa de A y B, denotada por A  B como

𝐀𝐁=[a11a1n00am1amn0000b11b1q00bp1bpq].

Por ejemplo,

[132231][1601]=[13200231000001600001].

Esta operación se generaliza naturalmente a matrices de dimensiones arbitrarias (siempre que A y B tengan el mismo número de dimensiones).

Debe tenerse en cuenta que cualquier elemento en la suma directa de dos espacios vectoriales de matrices podría representarse como la suma directa de dos matrices.

Aplicación

En términos de álgebra lineal, el uso de una matriz por bloques corresponde a tener una aplicación lineal en términos de racimos de vectores de una base, lo que nuevamente coincide con la idea de haber distinguido las descomposiciones de la suma directa de dominio y de rango. Siempre es particularmente significativo si un bloque es la matriz cero; que conlleva la información de que un sumando se aplica sobre sí mismo en una suma parcial.

Dada la interpretación a través de aplicaciones lineales y sumas directas, existe un tipo especial de matriz por bloques propio de las matrices cuadradas (en el caso m = n). En este supuesto, se puede asumir una interpretación como un endomorfismo de un espacio n dimensional V; la estructura de bloques en la que el agrupamiento de filas y columnas es el mismo es de importancia porque corresponde a tener una sola descomposición de suma directa en V (en lugar de dos). En ese caso, por ejemplo, los bloques diagonales en el sentido obvio son todos cuadrados. Este tipo de estructura es necesario para describir la forma canónica de Jordan.

Esta técnica se utiliza para reducir los cálculos con matrices; en expansiones de filas y columnas; y en diversas aplicaciones en ciencias de la computación, incluido el diseño de chips integrados. Un ejemplo es el algoritmo de Strassen para la multiplicación de matrices rápida, así como la codificación Hamming(7,4) para detección de errores y recuperación de datos en las transmisiones digitales.

Véase también

Referencias

Plantilla:Listaref

Bibliografía

Enlaces externos

Plantilla:Portal

Plantilla:Control de autoridades