Diagonal matrix

From HandWiki
Short description: Matrix whose only nonzero elements are on its main diagonal

In linear algebra, a diagonal matrix is a matrix in which the entries outside the main diagonal are all zero; the term usually refers to square matrices. Elements of the main diagonal can either be zero or nonzero. An example of a 2×2 diagonal matrix is [math]\displaystyle{ \left[\begin{smallmatrix} 3 & 0 \\ 0 & 2 \end{smallmatrix}\right] }[/math], while an example of a 3×3 diagonal matrix is[math]\displaystyle{ \left[\begin{smallmatrix} 6 & 0 & 0 \\ 0 & 5 & 0 \\ 0 & 0 & 4 \end{smallmatrix}\right] }[/math]. An identity matrix of any size, or any multiple of it is a diagonal matrix called scalar matrix, for example, [math]\displaystyle{ \left[\begin{smallmatrix} 0.5 & 0 \\ 0 & 0.5 \end{smallmatrix}\right] }[/math]. In geometry, a diagonal matrix may be used as a scaling matrix, since matrix multiplication with it results in changing scale (size) and possibly also shape; only a scalar matrix results in uniform change in scale.


As stated above, a diagonal matrix is a matrix in which all off-diagonal entries are zero. That is, the matrix D = (di,j) with n columns and n rows is diagonal if [math]\displaystyle{ \forall i,j \in \{1, 2, \ldots, n\}, i \ne j \implies d_{i,j} = 0. }[/math]

However, the main diagonal entries are unrestricted.

The term diagonal matrix may sometimes refer to a rectangular diagonal matrix, which is an m-by-n matrix with all the entries not of the form di,i being zero. For example: [math]\displaystyle{ \begin{bmatrix} 1 & 0 & 0\\ 0 & 4 & 0\\ 0 & 0 & -3\\ 0 & 0 & 0\\ \end{bmatrix} \quad \text{or} \quad \begin{bmatrix} 1 & 0 & 0 & 0 & 0\\ 0 & 4 & 0& 0 & 0\\ 0 & 0 & -3& 0 & 0 \end{bmatrix} }[/math]

More often, however, diagonal matrix refers to square matrices, which can be specified explicitly as a square diagonal matrix. A square diagonal matrix is a symmetric matrix, so this can also be called a symmetric diagonal matrix.

The following matrix is square diagonal matrix: [math]\displaystyle{ \begin{bmatrix} 1 & 0 & 0\\ 0 & 4 & 0\\ 0 & 0 & -2 \end{bmatrix} }[/math]

If the entries are real numbers or complex numbers, then it is a normal matrix as well.

In the remainder of this article we will consider only square diagonal matrices, and refer to them simply as "diagonal matrices".

Vector-to-matrix diag operator

A diagonal matrix [math]\displaystyle{ \mathbf{D} }[/math] can be constructed from a vector [math]\displaystyle{ \mathbf{a} = \begin{bmatrix}a_1 & \dotsm & a_n\end{bmatrix}^\textsf{T} }[/math] using the [math]\displaystyle{ \operatorname{diag} }[/math] operator: [math]\displaystyle{ \mathbf{D} = \operatorname{diag}(a_1, \dots, a_n) }[/math]

This may be written more compactly as [math]\displaystyle{ \mathbf{D} = \operatorname{diag}(\mathbf{a}) }[/math].

The same operator is also used to represent block diagonal matrices as [math]\displaystyle{ \mathbf{A} = \operatorname{diag}(A_1, \dots, A_n) }[/math] where each argument [math]\displaystyle{ A_i }[/math] is a matrix.

The [math]\displaystyle{ \operatorname{diag} }[/math] operator may be written as: [math]\displaystyle{ \operatorname{diag}(\mathbf{a}) = \left(\mathbf{a} \mathbf{1}^\textsf{T}\right) \circ \mathbf{I} }[/math] where [math]\displaystyle{ \circ }[/math] represents the Hadamard product and [math]\displaystyle{ \mathbf{1} }[/math] is a constant vector with elements 1.

Matrix-to-vector diag operator

The inverse matrix-to-vector [math]\displaystyle{ \operatorname{diag} }[/math] operator is sometimes denoted by the identically named [math]\displaystyle{ \operatorname{diag}(\mathbf{D}) = \begin{bmatrix}a_1 & \dotsm & a_n\end{bmatrix}^\textsf{T} }[/math] where the argument is now a matrix and the result is a vector of its diagonal entries.

The following property holds: [math]\displaystyle{ \operatorname{diag}(\mathbf{A}\mathbf{B}) = \sum_j \left(\mathbf{A} \circ \mathbf{B}^\textsf{T}\right)_{ij} = \left( \mathbf{A} \circ \mathbf{B}^\textsf{T} \right) \mathbf{1} }[/math]

Scalar matrix

A diagonal matrix with equal diagonal entries is a scalar matrix; that is, a scalar multiple λ of the identity matrix I. Its effect on a vector is scalar multiplication by λ. For example, a 3×3 scalar matrix has the form: [math]\displaystyle{ \begin{bmatrix} \lambda & 0 & 0 \\ 0 & \lambda & 0 \\ 0 & 0 & \lambda \end{bmatrix} \equiv \lambda \boldsymbol{I}_3 }[/math]

The scalar matrices are the center of the algebra of matrices: that is, they are precisely the matrices that commute with all other square matrices of the same size.[lower-alpha 1] By contrast, over a field (like the real numbers), a diagonal matrix with all diagonal elements distinct only commutes with diagonal matrices (its centralizer is the set of diagonal matrices). That is because if a diagonal matrix [math]\displaystyle{ \mathbf{D} = \operatorname{diag}(a_1, \dots, a_n) }[/math] has [math]\displaystyle{ a_i \neq a_j, }[/math] then given a matrix [math]\displaystyle{ \mathbf{M} }[/math] with [math]\displaystyle{ m_{ij} \neq 0, }[/math] the [math]\displaystyle{ (i, j) }[/math] term of the products are: [math]\displaystyle{ (\mathbf{D}\mathbf{M})_{ij} = a_im_{ij} }[/math] and [math]\displaystyle{ (\mathbf{M}\mathbf{D})_{ij} = m_{ij}a_j, }[/math] and [math]\displaystyle{ a_jm_{ij} \neq m_{ij}a_i }[/math] (since one can divide by [math]\displaystyle{ m_{ij} }[/math]), so they do not commute unless the off-diagonal terms are zero.[lower-alpha 2] Diagonal matrices where the diagonal entries are not all equal or all distinct have centralizers intermediate between the whole space and only diagonal matrices.[1]

For an abstract vector space V (rather than the concrete vector space [math]\displaystyle{ K^n }[/math]), the analog of scalar matrices are scalar transformations. This is true more generally for a module M over a ring R, with the endomorphism algebra End(M) (algebra of linear operators on M) replacing the algebra of matrices. Formally, scalar multiplication is a linear map, inducing a map [math]\displaystyle{ R \to \operatorname{End}(M), }[/math] (from a scalar λ to its corresponding scalar transformation, multiplication by λ) exhibiting End(M) as a R-algebra. For vector spaces, the scalar transforms are exactly the center of the endomorphism algebra, and, similarly, scalar invertible transforms are the center of the general linear group GL(V). The former is more generally true free modules [math]\displaystyle{ M \cong R^n }[/math], for which the endomorphism algebra is isomorphic to a matrix algebra.

Vector operations

Multiplying a vector by a diagonal matrix multiplies each of the terms by the corresponding diagonal entry. Given a diagonal matrix [math]\displaystyle{ \mathbf{D} = \operatorname{diag}(a_1, \dots, a_n) }[/math] and a vector [math]\displaystyle{ \mathbf{v} = \begin{bmatrix} x_1 & \dotsm & x_n \end{bmatrix}^\textsf{T} }[/math], the product is: [math]\displaystyle{ \mathbf{D}\mathbf{v} = \operatorname{diag}(a_1, \dots, a_n)\begin{bmatrix}x_1 \\ \vdots \\ x_n\end{bmatrix} = \begin{bmatrix} a_1 \\ & \ddots \\ & & a_n \end{bmatrix} \begin{bmatrix}x_1 \\ \vdots \\ x_n\end{bmatrix} = \begin{bmatrix}a_1 x_1 \\ \vdots \\ a_n x_n\end{bmatrix}. }[/math]

This can be expressed more compactly by using a vector instead of a diagonal matrix, [math]\displaystyle{ \mathbf{d} = \begin{bmatrix} a_1 & \dotsm & a_n \end{bmatrix}^\textsf{T} }[/math], and taking the Hadamard product of the vectors (entrywise product), denoted [math]\displaystyle{ \mathbf{d} \circ \mathbf{v} }[/math]:

[math]\displaystyle{ \mathbf{D}\mathbf{v} = \mathbf{d} \circ \mathbf{v} = \begin{bmatrix} a_1 \\ \vdots \\ a_n \end{bmatrix} \circ \begin{bmatrix} x_1 \\ \vdots \\ x_n \end{bmatrix} = \begin{bmatrix} a_1 x_1 \\ \vdots \\ a_n x_n \end{bmatrix}. }[/math]

This is mathematically equivalent, but avoids storing all the zero terms of this sparse matrix. This product is thus used in machine learning, such as computing products of derivatives in backpropagation or multiplying IDF weights in TF-IDF,[2] since some BLAS frameworks, which multiply matrices efficiently, do not include Hadamard product capability directly.[3]

Matrix operations

The operations of matrix addition and matrix multiplication are especially simple for diagonal matrices. Write diag(a1, ..., an) for a diagonal matrix whose diagonal entries starting in the upper left corner are a1, ..., an. Then, for addition, we have

[math]\displaystyle{ \operatorname{diag}(a_1,\, \ldots,\, a_n) + \operatorname{diag}(b_1,\, \ldots,\, b_n) = \operatorname{diag}(a_1 + b_1,\, \ldots,\, a_n + b_n) }[/math]

and for matrix multiplication,

[math]\displaystyle{ \operatorname{diag}(a_1,\, \ldots,\, a_n) \operatorname{diag}(b_1,\, \ldots,\, b_n) = \operatorname{diag}(a_1 b_1,\, \ldots,\, a_n b_n). }[/math]

The diagonal matrix diag(a1, ..., an) is invertible if and only if the entries a1, ..., an are all nonzero. In this case, we have

[math]\displaystyle{ \operatorname{diag}(a_1,\, \ldots,\, a_n)^{-1} = \operatorname{diag}(a_1^{-1},\, \ldots,\, a_n^{-1}). }[/math]

In particular, the diagonal matrices form a subring of the ring of all n-by-n matrices.

Multiplying an n-by-n matrix A from the left with diag(a1, ..., an) amounts to multiplying the i-th row of A by ai for all i; multiplying the matrix A from the right with diag(a1, ..., an) amounts to multiplying the i-th column of A by ai for all i.

Operator matrix in eigenbasis

As explained in determining coefficients of operator matrix, there is a special basis, e1, ..., en, for which the matrix [math]\displaystyle{ \mathbf{A} }[/math] takes the diagonal form. Hence, in the defining equation [math]\displaystyle{ \mathbf{A} \mathbf e_j = \sum_i a_{i,j} \mathbf e_i }[/math], all coefficients [math]\displaystyle{ a_{i,j} }[/math] with ij are zero, leaving only one term per sum. The surviving diagonal elements, [math]\displaystyle{ a_{i,i} }[/math], are known as eigenvalues and designated with [math]\displaystyle{ \lambda_i }[/math] in the equation, which reduces to [math]\displaystyle{ \mathbf{A} \mathbf e_i = \lambda_i \mathbf e_i }[/math]. The resulting equation is known as eigenvalue equation[4] and used to derive the characteristic polynomial and, further, eigenvalues and eigenvectors.

In other words, the eigenvalues of diag(λ1, ..., λn) are λ1, ..., λn with associated eigenvectors of e1, ..., en.


  • The determinant of diag(a1, ..., an) is the product a1an.
  • The adjugate of a diagonal matrix is again diagonal.
  • Where all matrices are square,
  • The identity matrix In and zero matrix are diagonal.
  • A 1×1 matrix is always diagonal.
  • The square of a 2×2 matrix with zero trace is always diagonal.


Diagonal matrices occur in many areas of linear algebra. Because of the simple description of the matrix operation and eigenvalues/eigenvectors given above, it is typically desirable to represent a given matrix or linear map by a diagonal matrix.

In fact, a given n-by-n matrix A is similar to a diagonal matrix (meaning that there is a matrix X such that X−1AX is diagonal) if and only if it has n linearly independent eigenvectors. Such matrices are said to be diagonalizable.

Over the field of real or complex numbers, more is true. The spectral theorem says that every normal matrix is unitarily similar to a diagonal matrix (if AA = AA then there exists a unitary matrix U such that UAU is diagonal). Furthermore, the singular value decomposition implies that for any matrix A, there exist unitary matrices U and V such that UAV is diagonal with positive entries.

Operator theory

In operator theory, particularly the study of PDEs, operators are particularly easy to understand and PDEs easy to solve if the operator is diagonal with respect to the basis with which one is working; this corresponds to a separable partial differential equation. Therefore, a key technique to understanding operators is a change of coordinates—in the language of operators, an integral transform—which changes the basis to an eigenbasis of eigenfunctions: which makes the equation separable. An important example of this is the Fourier transform, which diagonalizes constant coefficient differentiation operators (or more generally translation invariant operators), such as the Laplacian operator, say, in the heat equation.

Especially easy are multiplication operators, which are defined as multiplication by (the values of) a fixed function–the values of the function at each point correspond to the diagonal entries of a matrix.

See also


  1. Proof: given the elementary matrix [math]\displaystyle{ e_{ij} }[/math], [math]\displaystyle{ Me_{ij} }[/math] is the matrix with only the i-th row of M and [math]\displaystyle{ e_{ij}M }[/math] is the square matrix with only the M j-th column, so the non-diagonal entries must be zero, and the ith diagonal entry much equal the jth diagonal entry.
  2. Over more general rings, this does not hold, because one cannot always divide.