Block matrix

From testwiki
Revision as of 07:27, 16 December 2024 by imported>Citation bot (Added bibcode. | Use this bot. Report bugs. | Suggested by Dominic3203 | Linked from User:Mathbot/Most_linked_math_articles | #UCB_webform_linked 1060/1913)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Template:Short description In mathematics, a block matrix or a partitioned matrix is a matrix that is interpreted as having been broken into sections called blocks or submatrices.[1][2]

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 up, or partition it, into a collection of smaller matrices.[3][2] For example, the 3x4 matrix presented below is divided by horizontal and vertical lines into four blocks: the top-left 2x3 block, the top-right 2x1 block, the bottom-left 1x3 block, and the bottom-right 1x1 block.

[a11a12a13b1a21a22a23b2c1c2c3d]

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 n by m matrix M by partitioning n into a collection rowgroups, and then partitioning m into a collection colgroups. The original matrix is then considered as the "total" of these groups, in the sense that the (i,j) entry of the original matrix corresponds in a 1-to-1 way with some (s,t) offset entry of some (x,y), where xrowgroups and ycolgroups.[4]

Block matrix algebra arises in general from biproducts in categories of matrices.[5]

A 168×168 element block matrix with 12×12, 12×24, 24×12, and 24×24 sub-matrices. Non-zero elements are in blue, zero elements are grayed.

Example

The matrix

𝐏=[1227156233453367]

can be visualized as divided into four blocks, as

𝐏=[1227156233453367].

The horizontal and vertical lines have no special mathematical meaning,[6][7] but are a common way to visualize a partition.[6][7] By this partition, P is partitioned into four 2×2 blocks, as

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

The partitioned matrix can then be written as

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

Formal definition

Let Am×n. A partitioning of A is a representation of A in the form

A=[A11A12A1qA21A22A2qAp1Ap2Apq],

where Aijmi×nj are contiguous submatrices, i=1pmi=m, and j=1qnj=n.[9] The elements Aij of the partition are called blocks.[9]

By this definition, the blocks in any one column must all have the same number of columns.[9] Similarly, the blocks in any one row must have the same number of rows.[9]

Partitioning methods

A matrix can be partitioned in many ways.[9] For example, a matrix A is said to be partitioned by columns if it is written as

A=(a1 a2  an),

where aj is the jth column of A.[9] A matrix can also be partitioned by rows:

A=[a1Ta2TamT],

where aiT is the ith row of A.[9]

Common partitions

Often,[9] we encounter the 2x2 partition

A=[A11A12A21A22],[9]

particularly in the form where A11 is a scalar:

A=[a11a12Ta21A22].[9]

Block matrix operations

Transpose

Let

A=[A11A12A1qA21A22A2qAp1Ap2Apq]

where Aijki×j. (This matrix A will be reused in Template:Section link and Template:Section link.) Then its transpose is

AT=[A11TA21TAp1TA12TA22TAp2TA1qTA2qTApqT],[9][10]

and the same equation holds with the transpose replaced by the conjugate transpose.[9]

Block transpose

A special form of matrix transpose can also be defined for block matrices, where individual blocks are reordered but not transposed. Let A=(Bij) be a k×l block matrix with m×n blocks Bij, the block transpose of A is the l×k block matrix A with m×n blocks (A)ij=Bji.[11] As with the conventional trace operator, the block transpose is a linear mapping such that (A+C)=A+C.[10] However, in general the property (AC)=CA does not hold unless the blocks of A and C commute.

Addition

Let

B=[B11B12B1sB21B22B2sBr1Br2Brs],

where Bijmi×nj, and let A be the matrix defined in Template:Section link. (This matrix B will be reused in Template:Section link.) Then if p=r, q=s, ki=mi, and j=nj, then

A+B=[A11+B11A12+B12A1q+B1qA21+B21A22+B22A2q+B2qAp1+Bp1Ap2+Bp2Apq+Bpq].[9]

Multiplication

It is possible to use a block partitioned matrix product that involves only algebra on submatrices of the factors. The partitioning of the factors is not arbitrary, however, and requires "conformable partitions"[12] between two matrices A and B such that all submatrix products that will be used are defined.[13] Template:Cquote

Let A be the matrix defined in Template:Section link, and let B be the matrix defined in Template:Section link. Then the matrix product

C=AB

can be performed blockwise, yielding C as an (p×s) matrix. The matrices in the resulting matrix C are calculated by multiplying:

Cij=k=1qAikBkj.[6]

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

Cij=AikBkj.

Depicting C as a matrix, we have

C=AB=[i=1qA1iBi1i=1qA1iBi2i=1qA1iBisi=1qA2iBi1i=1qA2iBi2i=1qA2iBisi=1qApiBi1i=1qApiBi2i=1qApiBis].[9]

Template:For Template:See also

If a matrix is partitioned into four blocks, it can be inverted blockwise as follows:

P=[ABCD]1=[A1+A1B(DCA1B)1CA1A1B(DCA1B)1(DCA1B)1CA1(DCA1B)1],

where A and D are square blocks of arbitrary size, and B and C are conformable with them for partitioning. Furthermore, A and the Schur complement of A in P: Template:Nowrap must be invertible.[14]

Equivalently, by permuting the blocks:

P=[ABCD]1=[(ABD1C)1(ABD1C)1BD1D1C(ABD1C)1D1+D1C(ABD1C)1BD1].[15]

Here, D and the Schur complement of D in P: Template:Nowrap must be invertible.

If A and D are both invertible, then:

[ABCD]1=[(ABD1C)100(DCA1B)1][IBD1CA1I].

By the Weinstein–Aronszajn identity, one of the two matrices in the block-diagonal matrix is invertible exactly when the other is.

DeterminantTemplate:Anchor

The formula for the determinant of a 2×2-matrix above continues to hold, under appropriate further assumptions, for a matrix composed of four submatrices A,B,C,D. The easiest such formula, which can be proven using either the Leibniz formula or a factorization involving the Schur complement, is

det[A0CD]=det(A)det(D)=det[AB0D].[15]

Using this formula, we can derive that characteristic polynomials of [A0CD] and [AB0D] are same and equal to the product of characteristic polynomials of A and D. Furthermore, If [A0CD] or [AB0D] is diagonalizable, then A and D are diagonalizable too. The converse is false; simply check [1101].

If A is invertible, one has

det[ABCD]=det(A)det(DCA1B),[15]

and if D is invertible, one has

det[ABCD]=det(D)det(ABD1C).[16][15]

If the blocks are square matrices of the same size further formulas hold. For example, if C and D commute (i.e., CD=DC), then

det[ABCD]=det(ADBC).[17]

This is also true when AB=BA, AC=CA, or Template:Tmath. This formula has been generalized to matrices composed of more than 2×2 blocks, again under appropriate commutativity conditions among the individual blocks.[18]

For A=D and B=C, the following formula holds (even if A and B do not commute)

det[ABBA]=det(AB)det(A+B).[15]

Special types of block matrices

Direct sums and block diagonal matrices

Direct sum

Template:See also 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

AB=[a11a1n00am1amn0000b11b1q00bp1bpq].[10]

For instance,

[132231][1601]=[13200231000001600001].

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.

Block diagonal matrices Template:Anchor

Template:See also A block diagonal matrix is a block matrix that is a square matrix such that the main-diagonal blocks are square matrices and all off-diagonal blocks are zero matrices.[15] That is, a block diagonal matrix A has the form

A=[A1000A2000An]

where Ak is a square matrix for all k = 1, ..., n. In other words, matrix A is the direct sum of A1, ..., An.[15] It can also be indicated as A1 ⊕ A2 ⊕ ... ⊕ An[10] or diag(A1, A2, ..., An)[10] (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:

detA=detA1××detAn,[19][20] and
trA=trA1++trAn.[15][20]

A block diagonal matrix is invertible if and only if each of its main-diagonal blocks are invertible, and in this case its inverse is another block diagonal matrix given by

[A1000A2000An]1=[A11000A21000An1].[21]

The eigenvalues[22] and eigenvectors of A are simply those of the Aks combined.[20]

Block tridiagonal matrices

Template:See also 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

A=[B1C10A2B2C2AkBkCkAn1Bn1Cn10AnBn]

where Ak, Bk and Ck are square sub-matrices of the lower, main and upper diagonal respectively.[23][24]

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[25] 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 triangular matrices

Template:See also

Upper block triangular

A matrix A is upper block triangular (or block upper triangular[26]) if

A=[A11A12A1k0A22A2k00Akk],

where Aij𝔽ni×nj for all i,j=1,,k.[22][26]

Lower block triangular

A matrix A is lower block triangular if

A=[A1100A21A220Ak1Ak2Akk],

where Aij𝔽ni×nj for all i,j=1,,k.[22]

Block Toeplitz matrices

Template:See also 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 matrix A is block Toeplitz if A(i,j)=A(k,l) for all ki=lj, that is,

A=[A1A2A3A4A1A2A5A4A1],

where Ai𝔽ni×mi.[22]

Block Hankel matrices

Template:See also

A matrix A is block Hankel if A(i,j)=A(k,l) for all i+j=k+l, that is,

A=[A1A2A3A2A3A4A3A4A5],

where Ai𝔽ni×mi.[22]

See also

  • Kronecker product (matrix direct product resulting in a block matrix)
  • Jordan normal form (canonical form of a linear operator on a finite-dimensional complex vector space)
  • Strassen algorithm (algorithm for matrix multiplication that is faster than the conventional matrix multiplication algorithm)

Notes

Template:Reflist

References

Template:Linear algebra Template:Matrix classes