# Difference between revisions of "Block matrix"

en>R'n'B m (Fix links to disambiguation page Matrix theory) |
en>Jason Quinn (→Block matrix multiplication: condensed two sentences into one) |
||

Line 1: | Line 1: | ||

{{Refimprove|date=December 2009}} | {{Refimprove|date=December 2009}} | ||

− | In | + | In [[mathematics]], a '''block matrix''' or a '''partitioned matrix''' is a [[matrix (mathematics)|matrix]] which is ''interpreted'' as having been broken into sections called '''blocks''' or '''submatrices'''.<ref>{{cite book |last=Eves |first=Howard |authorlink=Howard Eves |title=Elementary Matrix Theory |year=1980 |publisher=Dover |location=New York |isbn=0-486-63946-0 |page=37 |url=http://books.google.com/books?id=ayVxeUNbZRAC&lpg=PA40&dq=block%20multiplication&pg=PA37#v=onepage&q&f=false |edition=reprint |accessdate=24 April 2013 |quote=We shall find that it is sometimes convenient to subdivide a matrix into rectangular blocks of elements. This leads us to consider so-called ''partitioned'', or ''block'', ''matrices''.}}</ref> Intuitively, a matrix interpreted as a block matrix can be visualized as the original matrix with a collection of horizontal and vertical lines which break it out, or [[Partition of a set|partition]] it, into a collection of smaller matrices.<ref>{{cite book |last=Anton |first=Howard |title=Elementary Linear Algebra |year=1994 |publisher=John Wiley |location=New York |isbn=0-471-58742-7 |page=30 |edition=7th |quote=A matrix can be subdivided or '''''partitioned''''' into smaller matrices by inserting horizontal and vertical rules between selected rows and columns.}}</ref> Any matrix may be interpreted as a block matrix in one or more ways, with each interpretation defined by how its rows and columns are partitioned. |

− | The | + | This notion can be made more precise for an <math>n</math> by <math>m</math> matrix <math>M</math> by partitioning <math>n</math> into a collection <math>rowgroups</math>, and then partitioning <math>m</math> into a collection <math>colgroups</math>. The original matrix is then considered as the "total" of these groups, in the sense that the <math>(i,j)</math> entry of the original matrix corresponds in a [[Bijection|1-to-1 and onto]] way to some <math>(s,t)</math> [[Offset (computer science)|offset]] entry of some <math>(x,y)</math>, where <math>x \in rowgroups</math> and <math>y \in colgroups</math>. |

==Example== | ==Example== | ||

− | [[File:BlockMatrix168square. | + | [[File:BlockMatrix168square.png|thumb |A 168×168 element block matrix with 12×12, 12×24, and 24×24 sub-Matrices. Non-zero elements are in blue, zero elements are grayed.]] |

The matrix | The matrix | ||

Line 34: | Line 34: | ||

==Block matrix multiplication== | ==Block matrix multiplication== | ||

− | A block partitioned matrix product can be | + | A block partitioned matrix product can sometimes be used that involves only algebra on submatrices of the factors. The partitioning of the factors is not arbitrary, however, and requires "conformable partitions"<ref>{{cite book |last=Eves |first=Howard |authorlink=Howard Eves |title=Elementary Matrix Theory |year=1980 |publisher=Dover |location=New York |isbn=0-486-63946-0 |page=37 |url=http://books.google.com/books?id=ayVxeUNbZRAC&lpg=PA40&dq=block%20multiplication&pg=PA39#v=onepage&q&f=false |edition=reprint |accessdate=24 April 2013 |quote=A partitioning as in Theorem 1.9.4 is called a ''conformable partition'' of ''A'' and ''B''.}}</ref> between two matrices <math>A</math> and <math>B</math> such that all submatrix products that will be used are defined.<ref>{{cite book |last=Anton |first=Howard |title=Elementary Linear Algebra |year=1994 |publisher=John Wiley |location=New York |isbn=0-471-58742-7 |page=36 |edition=7th |quote=...provided the sizes of the submatrices of A and B are such that the indicated operations can be performed.}}</ref> Given an <math>(m \times p)</math> matrix <math>\mathbf{A}</math> with <math>q</math> row partitions and <math>s</math> column partitions |

:<math> | :<math> | ||

Line 51: | Line 51: | ||

\vdots & \vdots & \ddots &\vdots \\ | \vdots & \vdots & \ddots &\vdots \\ | ||

\mathbf{B}_{s1} & \mathbf{B}_{s2} & \cdots &\mathbf{B}_{sr}\end{bmatrix},</math> | \mathbf{B}_{s1} & \mathbf{B}_{s2} & \cdots &\mathbf{B}_{sr}\end{bmatrix},</math> | ||

− | the matrix product | + | that are compatible with the partitions of <math>A</math>, the matrix product |

:<math> | :<math> | ||

Line 57: | Line 57: | ||

</math> | </math> | ||

− | can be formed blockwise, yielding <math>\mathbf{C}</math> as an <math>(m\times n)</math> matrix with <math>q</math> row partitions and <math>r</math> column partitions. The matrices in your matrix <math>\mathbf{C}</math> are calculated by multiplying | + | can be formed blockwise, yielding <math>\mathbf{C}</math> as an <math>(m\times n)</math> matrix with <math>q</math> row partitions and <math>r</math> column partitions. The matrices in your matrix <math>\mathbf{C}</math> are calculated by multiplying: |

:<math> | :<math> | ||

Line 84: | Line 84: | ||

For the [[determinant]] and [[trace (linear algebra)|trace]], the following properties hold | For the [[determinant]] and [[trace (linear algebra)|trace]], the following properties hold | ||

− | :<math> \operatorname{det} \mathbf{A} = \operatorname{det} \mathbf{A}_1 \ | + | :<math> \operatorname{det} \mathbf{A} = \operatorname{det} \mathbf{A}_1 \times \ldots \times \operatorname{det} \mathbf{A}_n</math>, |

− | :<math> \operatorname{ | + | :<math> \operatorname{tr} \mathbf{A} = \operatorname{tr} \mathbf{A}_1 +\cdots +\operatorname{tr} \mathbf{A}_n.</math> |

− | The inverse of a block diagonal matrix is another block diagonal matrix, composed of the inverse of each block, as | + | The inverse of a block diagonal matrix is another block diagonal matrix, composed of the inverse of each block, as follows: |

:<math>\begin{pmatrix} | :<math>\begin{pmatrix} | ||

\mathbf{A}_{1} & 0 & \cdots & 0 \\ | \mathbf{A}_{1} & 0 & \cdots & 0 \\ | ||

Line 123: | Line 123: | ||

==Block Toeplitz matrices== | ==Block Toeplitz matrices== | ||

− | A '''block Toeplitz matrix''' is another special block matrix, which contains blocks that are repeated down the diagonals of the matrix, as a [[Toeplitz matrix]] has elements repeated down the diagonal. | + | A '''block Toeplitz matrix''' is another special block matrix, which contains blocks that are repeated down the diagonals of the matrix, as a [[Toeplitz matrix]] has elements repeated down the diagonal. The individual block matrix elements, Aij, must also be a Toeplitz matrix. |

A block Toeplitz matrix '''A''' has the form | A block Toeplitz matrix '''A''' has the form | ||

Line 180: | Line 180: | ||

==Direct Product== | ==Direct Product== | ||

− | + | {{main|Kronecker product}} | |

==Application== | ==Application== | ||

Line 189: | Line 189: | ||

This technique is used to cut down calculations of matrices, column-row expansions, and many [[computer science]] applications, including [[VLSI]] chip design. An example is the [[Strassen algorithm]] for fast [[matrix multiplication]], as well as the [[Hamming(7,4)]] encoding for error detection and recovery in data transmissions. | This technique is used to cut down calculations of matrices, column-row expansions, and many [[computer science]] applications, including [[VLSI]] chip design. An example is the [[Strassen algorithm]] for fast [[matrix multiplication]], as well as the [[Hamming(7,4)]] encoding for error detection and recovery in data transmissions. | ||

− | == | + | ==References== |

+ | {{Reflist}} | ||

+ | *{{Cite web |last=Strang |first=Gilbert |authorlink=Gilbert Strang |url=http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/video-lectures/lecture-3-multiplication-and-inverse-matrices |title=Lecture 3: Multiplication and inverse matrices |publisher=MIT Open Course ware |at=18:30–21:10 |date=1999}} | ||

− | {{ | + | {{Linear algebra}} |

− | |||

− | }} | ||

{{DEFAULTSORT:Block Matrix}} | {{DEFAULTSORT:Block Matrix}} | ||

[[Category:Matrices]] | [[Category:Matrices]] | ||

[[Category:Sparse matrices]] | [[Category:Sparse matrices]] | ||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− |

## Revision as of 00:09, 25 October 2013

{{ safesubst:#invoke:Unsubst||$N=Refimprove |date=__DATE__ |$B=
{{#invoke:Message box|ambox}}
}}
In mathematics, a **block matrix** or a **partitioned matrix** is a matrix which is *interpreted* as having been broken into sections called **blocks** or **submatrices**.^{[1]} Intuitively, a matrix interpreted as a block matrix can be visualized as the original matrix with a collection of horizontal and vertical lines which break it out, or partition it, into a collection of smaller matrices.^{[2]} Any matrix may be interpreted as a block matrix in one or more ways, with each interpretation defined by how its rows and columns are partitioned.

This notion can be made more precise for an by matrix by partitioning into a collection , and then partitioning into a collection . The original matrix is then considered as the "total" of these groups, in the sense that the entry of the original matrix corresponds in a 1-to-1 and onto way to some offset entry of some , where and .

## Example

The matrix

can be partitioned into 4 2×2 blocks

The partitioned matrix can then be written as

## Block matrix multiplication

A block partitioned matrix product can sometimes be used that involves only algebra on submatrices of the factors. The partitioning of the factors is not arbitrary, however, and requires "conformable partitions"^{[3]} between two matrices and such that all submatrix products that will be used are defined.^{[4]} Given an matrix with row partitions and column partitions

and a matrix with row partitions and column partitions

that are compatible with the partitions of , the matrix product

can be formed blockwise, yielding as an matrix with row partitions and column partitions. The matrices in your matrix are calculated by multiplying:

Or, using the Einstein notation that implicitly sums over repeated indices:

## Block diagonal matrices {{safesubst:#invoke:anchor|main}}

A **block diagonal matrix** is a block matrix which is a square matrix, and having main diagonal blocks square matrices, such that the off-diagonal blocks are zero matrices. A block diagonal matrix **A** has the form

where **A**_{k} is a square matrix; in other words, it is the direct sum of **A**_{1}, …, **A**_{n}. It can also be indicated as **A**_{1} **A**_{2} **A**_{n} or diag(**A**_{1}, **A**_{2},, **A**_{n}) (the latter being the same formalism used for a diagonal matrix).
Any square matrix can trivially be considered a block diagonal matrix with only one block.

For the determinant and trace, the following properties hold

The inverse of a block diagonal matrix is another block diagonal matrix, composed of the inverse of each block, as follows:

The eigenvalues and eigenvectors of are simply those of and and ... and (combined).

## Block tridiagonal matrices

A **block tridiagonal matrix** is another special block matrix, which is just like the block diagonal matrix a square matrix, having square matrices (blocks) in the lower diagonal, main diagonal and upper diagonal, with all other blocks being zero matrices.
It is essentially a tridiagonal matrix but has submatrices in places of scalars. A block tridiagonal matrix **A** has the form

where **A**_{k}, **B**_{k} and **C**_{k} are square sub-matrices of the lower, main and upper diagonal respectively.

Block tridiagonal matrices are often encountered in numerical solutions of engineering problems (e.g., computational fluid dynamics). Optimized numerical methods for LU factorization are available and hence efficient solution algorithms for equation systems with a block tridiagonal matrix as coefficient matrix. The Thomas algorithm, used for efficient solution of equation systems involving a tridiagonal matrix can also be applied using matrix operations to block tridiagonal matrices (see also Block LU decomposition).

## Block Toeplitz matrices

A **block Toeplitz matrix** is another special block matrix, which contains blocks that are repeated down the diagonals of the matrix, as a Toeplitz matrix has elements repeated down the diagonal. The individual block matrix elements, Aij, must also be a Toeplitz matrix.

A block Toeplitz matrix **A** has the form

## Direct sum

For any arbitrary matrices **A** (of size *m* × *n*) and **B** (of size *p* × *q*), we have the **direct sum** of **A** and **B**, denoted by **A** **B** and defined as

For instance,

This operation generalizes naturally to arbitrary dimensioned arrays (provided that **A** and **B** have the same number of dimensions).

Note that any element in the direct sum of two vector spaces of matrices could be represented as a direct sum of two matrices.

## Direct Product

{{#invoke:main|main}}

## Application

In linear algebra terms, the use of a block matrix corresponds to having a linear mapping thought of in terms of corresponding 'bunches' of basis vectors. That again matches the idea of having distinguished direct sum decompositions of the domain and range. It is always particularly significant if a block is the zero matrix; that carries the information that a summand maps into a sub-sum.

Given the interpretation *via* linear mappings and direct sums, there is a special type of block matrix that occurs for square matrices (the case *m* = *n*). For those we can assume an interpretation as an endomorphism of an *n*-dimensional space *V*; the block structure in which the bunching of rows and columns is the same is of importance because it corresponds to having a single direct sum decomposition on *V* (rather than two). In that case, for example, the diagonal blocks in the obvious sense are all square. This type of structure is required to describe the Jordan normal form.

This technique is used to cut down calculations of matrices, column-row expansions, and many computer science applications, including VLSI chip design. An example is the Strassen algorithm for fast matrix multiplication, as well as the Hamming(7,4) encoding for error detection and recovery in data transmissions.

## References

{{#invoke: Navbox | navbox }}