Skip to content

Chapter 96. Structured Matrices

A structured matrix is a matrix whose entries satisfy a special pattern or rule. The structure may be algebraic, geometric, combinatorial, or computational.

Sparse matrices are one kind of structured matrix. Their structure is the location of zero and nonzero entries. But structure is broader than sparsity. A matrix may be dense and still structured. Toeplitz, Hankel, circulant, Vandermonde, diagonal, triangular, banded, symmetric, orthogonal, and low-rank matrices all have special forms that can be exploited.

Structured linear algebra studies how these forms affect storage, computation, conditioning, and algorithms. The purpose is to avoid treating every matrix as an arbitrary dense array when more information is available.

96.1 What Structure Means

A general m×nm\times n matrix has

mn mn

independent entries.

A structured matrix has fewer independent degrees of freedom.

For example, a diagonal n×nn\times n matrix has only nn independent entries. A symmetric n×nn\times n matrix has

n(n+1)2 \frac{n(n+1)}{2}

independent entries. A Toeplitz n×nn\times n matrix has only

2n1 2n-1

independent entries because each descending diagonal is constant. Toeplitz matrices are commonly defined by the rule aij=cija_{ij}=c_{i-j}, so entries on each descending diagonal are equal.

Structure reduces freedom. Reduced freedom often gives faster algorithms.

96.2 Examples of Structured Matrices

Common structured matrices include:

StructureDefining property
Diagonalaij=0a_{ij}=0 for iji\ne j
Triangularentries vanish above or below diagonal
Bandednonzeros confined near diagonal
SymmetricAT=AA^T=A
Skew-symmetricAT=AA^T=-A
OrthogonalQTQ=IQ^TQ=I
Toeplitzaij=cija_{ij}=c_{i-j}
Hankelaij=ci+ja_{ij}=c_{i+j}
Circulanteach row is a cyclic shift of previous row
Vandermondeaij=xij1a_{ij}=x_i^{j-1}
Cauchyaij=1/(xiyj)a_{ij}=1/(x_i-y_j)
Low-rankrank much smaller than dimensions
Kronecker productbuilt from tensor products of smaller matrices

A matrix may have several structures at once. A symmetric tridiagonal matrix is symmetric, sparse, banded, and structured.

96.3 Why Structure Matters

Structure matters for four main reasons.

ReasonEffect
Storagefewer values must be stored
Speedspecialized algorithms reduce work
Stabilitystructure may improve or damage conditioning
Interpretationstructure reflects the model that produced the matrix

For example, a dense n×nn\times n matrix needs n2n^2 stored values. A Toeplitz matrix needs only 2n12n-1. A circulant matrix needs only nn. A diagonal matrix needs only nn.

The computational difference can be large. Multiplying by a dense matrix usually costs O(n2)O(n^2). Multiplying by a diagonal matrix costs O(n)O(n). Multiplying by a circulant matrix can be done through the fast Fourier transform in O(nlogn)O(n\log n).

96.4 Diagonal Matrices

A diagonal matrix has the form

D=[d1000d2000dn]. D= \begin{bmatrix} d_1 & 0 & \cdots & 0\\ 0 & d_2 & \cdots & 0\\ \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & \cdots & d_n \end{bmatrix}.

Multiplication is componentwise:

(Dx)i=dixi. (Dx)_i=d_ix_i.

Solving

Dx=b Dx=b

is also componentwise:

xi=bidi, x_i=\frac{b_i}{d_i},

provided di0d_i\ne 0.

Diagonal matrices are the simplest structured matrices. They represent independent scaling in coordinate directions.

96.5 Triangular Matrices

A lower triangular matrix has entries

aij=0for j>i. a_{ij}=0 \qquad \text{for } j>i.

An upper triangular matrix has entries

aij=0for i>j. a_{ij}=0 \qquad \text{for } i>j.

Triangular systems are solved by substitution.

For lower triangular Lx=bLx=b, forward substitution computes

xi=1ii(bij<iijxj). x_i= \frac{1}{\ell_{ii}} \left( b_i-\sum_{j<i}\ell_{ij}x_j \right).

Triangular matrices are central because many factorizations reduce a problem to triangular solves:

FactorizationTriangular part
LULL and UU
CholeskyLL and LTL^T
QRRR

96.6 Banded Matrices

A banded matrix has nonzero entries only near the main diagonal.

A matrix has lower bandwidth pp and upper bandwidth qq if

aij=0whenever ij>p a_{ij}=0 \qquad \text{whenever } i-j>p

or

ji>q. j-i>q.

A tridiagonal matrix has

p=q=1. p=q=1.

Banded matrices arise from local interactions, especially finite difference discretizations of differential equations.

Specialized algorithms for banded systems store only the bands and avoid arithmetic outside them.

96.7 Tridiagonal Matrices

A tridiagonal matrix has the form

T=[d1u1001d2u2002d30un1000n1dn]. T= \begin{bmatrix} d_1 & u_1 & 0 & \cdots & 0\\ \ell_1 & d_2 & u_2 & \cdots & 0\\ 0 & \ell_2 & d_3 & \cdots & 0\\ \vdots & \vdots & \vdots & \ddots & u_{n-1}\\ 0 & 0 & 0 & \ell_{n-1} & d_n \end{bmatrix}.

It has at most

3n2 3n-2

nonzero entries.

Tridiagonal systems can be solved in O(n)O(n) time by the Thomas algorithm, a specialized form of Gaussian elimination.

Symmetric tridiagonal matrices also appear in eigenvalue algorithms after reducing a symmetric dense matrix by orthogonal transformations.

96.8 Symmetric Matrices

A symmetric matrix satisfies

AT=A. A^T=A.

Thus

aij=aji. a_{ij}=a_{ji}.

Only the upper or lower triangle must be stored.

Symmetric matrices have important spectral properties. If AA is real symmetric, then its eigenvalues are real and it has an orthonormal eigenbasis.

Symmetry is more than a storage property. It changes which algorithms are valid.

ProblemSymmetric algorithm
positive definite systemCholesky factorization
eigenvalue problemsymmetric QR, Lanczos
large SPD systemconjugate gradient
indefinite symmetric systemMINRES

96.9 Orthogonal Matrices

An orthogonal matrix satisfies

QTQ=I. Q^TQ=I.

Its inverse is its transpose:

Q1=QT. Q^{-1}=Q^T.

Orthogonal matrices preserve Euclidean norms:

Qx2=x2. \|Qx\|_2=\|x\|_2.

This makes them numerically stable. Householder reflectors, Givens rotations, and orthogonal factors in QR decompositions are essential tools in numerical linear algebra.

Orthogonal structure is often preserved deliberately because it controls rounding error.

96.10 Toeplitz Matrices

A Toeplitz matrix is constant along descending diagonals:

aij=cij. a_{ij}=c_{i-j}.

A typical Toeplitz matrix is

T=[c0c1c2c(n1)c1c0c1c(n2)c2c1c0c(n3)cn1cn2cn3c0]. T= \begin{bmatrix} c_0 & c_{-1} & c_{-2} & \cdots & c_{-(n-1)}\\ c_1 & c_0 & c_{-1} & \cdots & c_{-(n-2)}\\ c_2 & c_1 & c_0 & \cdots & c_{-(n-3)}\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ c_{n-1} & c_{n-2} & c_{n-3} & \cdots & c_0 \end{bmatrix}.

Toeplitz matrices are closely connected to convolution. Linear convolution can be written as multiplication by a Toeplitz matrix.

They appear in signal processing, time series, stationary covariance models, and discretized translation-invariant operators.

96.11 Hankel Matrices

A Hankel matrix is constant along anti-diagonals:

aij=ci+j. a_{ij}=c_{i+j}.

For example,

H=[c2c3c4c5c3c4c5c6c4c5c6c7c5c6c7c8]. H= \begin{bmatrix} c_2 & c_3 & c_4 & c_5\\ c_3 & c_4 & c_5 & c_6\\ c_4 & c_5 & c_6 & c_7\\ c_5 & c_6 & c_7 & c_8 \end{bmatrix}.

Hankel matrices appear in moment problems, system identification, control theory, signal processing, and Padé approximation.

A Hankel matrix is closely related to a Toeplitz matrix after reversing row or column order. Sources often describe Hankel matrices as reversed Toeplitz matrices.

96.12 Circulant Matrices

A circulant matrix is determined by one vector. Each row is a cyclic shift of the previous row.

For example,

C=[c0c1c2c3c3c0c1c2c2c3c0c1c1c2c3c0]. C= \begin{bmatrix} c_0 & c_1 & c_2 & c_3\\ c_3 & c_0 & c_1 & c_2\\ c_2 & c_3 & c_0 & c_1\\ c_1 & c_2 & c_3 & c_0 \end{bmatrix}.

Circulant matrices are special Toeplitz matrices with wraparound structure.

Their main computational property is that they are diagonalized by the discrete Fourier transform. Thus multiplication by a circulant matrix can be computed using FFT methods.

This makes circulant matrices important in periodic convolution, signal processing, image processing, and preconditioning.

96.13 Vandermonde Matrices

A Vandermonde matrix has the form

V=[1x1x12x1n11x2x22x2n11xnxn2xnn1]. V= \begin{bmatrix} 1 & x_1 & x_1^2 & \cdots & x_1^{n-1}\\ 1 & x_2 & x_2^2 & \cdots & x_2^{n-1}\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 1 & x_n & x_n^2 & \cdots & x_n^{n-1} \end{bmatrix}.

Vandermonde matrices appear in polynomial interpolation, quadrature, moment fitting, and signal processing.

They are structured because the entire matrix is determined by the nodes

x1,x2,,xn. x_1,x_2,\ldots,x_n.

However, Vandermonde matrices can be severely ill-conditioned. Their conditioning depends strongly on the distribution of the nodes; one study notes exponential conditioning behavior unless the knots are roughly equally spaced on or near the unit circle.

96.14 Cauchy Matrices

A Cauchy matrix has entries

aij=1xiyj, a_{ij}=\frac{1}{x_i-y_j},

where

xiyj. x_i\ne y_j.

Cauchy matrices appear in rational interpolation, integral equations, approximation theory, and structured direct solvers.

Like Vandermonde matrices, Cauchy matrices are dense but highly structured. Their entries are determined by two short vectors:

x1,,xm x_1,\ldots,x_m

and

y1,,yn. y_1,\ldots,y_n.

This structure can be exploited in fast algorithms and displacement-rank methods.

96.15 Low-Rank Matrices

A matrix ARm×nA\in\mathbb{R}^{m\times n} has rank rr if its columns span an rr-dimensional space.

If

rmin(m,n), r\ll \min(m,n),

then AA is low-rank.

A low-rank matrix can often be written as

A=UVT, A=UV^T,

where

URm×r,VRn×r. U\in\mathbb{R}^{m\times r}, \qquad V\in\mathbb{R}^{n\times r}.

This representation stores

r(m+n) r(m+n)

numbers instead of

mn. mn.

Low-rank structure appears in data compression, principal component analysis, integral equations, recommender systems, and model reduction.

96.16 Rank-Structured Matrices

Some matrices are not globally low-rank but contain low-rank off-diagonal blocks.

Such matrices are called rank-structured.

Examples include:

TypeBasic idea
H-matrixhierarchical block low-rank structure
HSS matrixhierarchically semiseparable
HODLR matrixhierarchically off-diagonal low-rank
quasiseparable matrixlow-rank subblocks in off-diagonal regions

These structures occur in integral equations, kernel methods, covariance matrices, and discretized operators with smooth long-range interactions.

They allow approximate storage and fast multiplication or factorization.

96.17 Kronecker Product Structure

The Kronecker product of matrices AA and BB is written

AB. A\otimes B.

If

A=[aij], A=[a_{ij}],

then

AB=[a11Ba12Ba21Ba22B]. A\otimes B = \begin{bmatrix} a_{11}B & a_{12}B & \cdots\\ a_{21}B & a_{22}B & \cdots\\ \vdots & \vdots & \ddots \end{bmatrix}.

Kronecker products appear in tensor grids, separable differential operators, multidimensional transforms, quantum mechanics, statistics, and signal processing.

They allow large matrices to be represented by smaller factors.

For example, a two-dimensional separable operator may be written as

AxI+IAy. A_x\otimes I + I\otimes A_y.

This form enables fast matrix-vector products without constructing the full matrix explicitly.

96.18 Block Matrices

Block structure divides a matrix into submatrices:

A=[A11A12A21A22]. A= \begin{bmatrix} A_{11} & A_{12}\\ A_{21} & A_{22} \end{bmatrix}.

Block structure may reflect multiple variables, domains, time steps, or physical components.

Block methods can improve cache behavior and expose mathematical structure. For example, saddle-point systems often have the form

[ABTB0]. \begin{bmatrix} A & B^T\\ B & 0 \end{bmatrix}.

Recognizing the block form helps choose solvers and preconditioners.

96.19 Displacement Structure

Some structured matrices can be described by displacement operators.

A matrix AA has low displacement rank if an expression such as

AZAZT A - ZAZ^T

has low rank for a simple shift matrix ZZ.

Toeplitz, Hankel, Vandermonde-like, and Cauchy-like matrices can often be described in this framework. Structured linear algebra literature uses displacement operators to unify fast algorithms for these matrix classes.

The point is that a matrix may be dense, but its departure from a shifted version of itself is simple.

This hidden simplicity supports fast direct solvers.

96.20 Structured Storage

Structured storage records only the data needed to reconstruct the matrix.

MatrixMinimal data
diagonaldiagonal vector
tridiagonalthree diagonals
bandedstored bands
symmetricone triangle
Toeplitzfirst row and first column
circulantfirst row or column
Vandermondenodes xix_i
Cauchyvectors xix_i, yjy_j
low-rankfactors U,VU,V
Kroneckercomponent matrices

The matrix may never be materialized as a full dense array.

Instead, algorithms operate directly on the representation.

96.21 Structured Matrix-Vector Multiplication

For a general dense matrix,

y=Ax y=Ax

costs

O(n2). O(n^2).

For structured matrices, the cost may be lower.

StructureMultiplication cost
diagonalO(n)O(n)
tridiagonalO(n)O(n)
banded with bandwidth wwO(wn)O(wn)
sparseO(nnz(A))O(\operatorname{nnz}(A))
circulantO(nlogn)O(n\log n)
Toeplitz using FFT embeddingO(nlogn)O(n\log n)
low-rank UVTUV^TO(r(m+n))O(r(m+n))

These savings are often the reason to preserve structure.

96.22 Structured Solvers

A structured solver uses the matrix form directly.

Examples include:

Matrix typeSolver idea
diagonalcomponentwise division
triangularsubstitution
tridiagonalThomas algorithm
symmetric positive definiteCholesky
ToeplitzLevinson-type or FFT-based methods
circulantFFT diagonalization
low-rank updateSherman-Morrison-Woodbury
Kronecker sumseparable transforms

A general dense solver ignores this structure and may use more time and memory than necessary.

96.23 Structure and Conditioning

Structure does not automatically imply good conditioning.

A diagonal matrix may be ill-conditioned if the ratio

maxidiminidi \frac{\max_i |d_i|}{\min_i |d_i|}

is large.

A Vandermonde matrix may be extremely ill-conditioned for poorly chosen nodes.

A Toeplitz matrix may be well-conditioned or ill-conditioned depending on its generating sequence.

Therefore one must distinguish:

ConceptMeaning
structural simplicityfew parameters or special pattern
numerical conditioningsensitivity to perturbations
algorithmic stabilitybehavior under floating point computation

A matrix can be simple to describe and still difficult to solve accurately.

96.24 Preserving Structure

Some operations preserve structure; others destroy it.

OperationPossible effect
adding two Toeplitz matricesToeplitz
multiplying two diagonal matricesdiagonal
inverse of diagonal matrixdiagonal
inverse of triangular matrixtriangular
product of Toeplitz matricesgenerally not Toeplitz
LU factorization of sparse matrixmay create fill-in
perturbing a symmetric matrix asymmetricallydestroys symmetry

Algorithms should preserve structure when doing so improves accuracy or speed.

For example, using symmetric eigensolvers on symmetric matrices avoids unnecessary complex arithmetic and improves numerical behavior.

96.25 Structured Perturbations

In ordinary perturbation analysis, a perturbation ΔA\Delta A may be any matrix.

In structured perturbation analysis, ΔA\Delta A must preserve the structure.

For example, if AA is Toeplitz, a structured perturbation must also be Toeplitz.

Structured condition numbers may differ from unstructured condition numbers. Some analyses explicitly compare structured and unstructured sensitivity for matrix classes such as Toeplitz, Hankel, circulant, and symmetric matrices.

This matters when the data comes from a structured model. Perturbations outside the model may be irrelevant.

96.26 Applications

Structured matrices appear across applied mathematics.

ApplicationStructure
signal processingToeplitz, circulant, Hankel
time seriesToeplitz covariance
image processingblock Toeplitz, circulant approximations
PDEssparse, banded, Kronecker sums
graph algorithmssparse Laplacian
polynomial interpolationVandermonde
rational interpolationCauchy
statisticscovariance and kernel structure
optimizationblock, sparse, low-rank Hessians
quantum mechanicsKronecker products

Recognizing the source of the matrix usually suggests the correct algorithm.

96.27 Matrix-Free Structured Operators

Some structured matrices are better represented as operators than arrays.

For example, convolution may be implemented by FFTs rather than by forming a Toeplitz matrix.

A Kronecker sum may be applied by reshaping vectors into arrays and multiplying along dimensions.

A low-rank matrix may be applied as

xU(VTx). x\mapsto U(V^Tx).

These forms avoid explicit storage and reduce cost.

Matrix-free structured operators are common in large-scale scientific computing and machine learning.

96.28 Practical Checklist

When given a matrix, ask:

QuestionReason
Is the matrix sparse?choose sparse storage and solvers
Is it symmetric?use symmetric algorithms
Is it positive definite?use Cholesky or conjugate gradient
Is it banded?use band storage and band solvers
Is it Toeplitz or circulant?exploit convolution or FFT methods
Is it low-rank or approximately low-rank?use factorized representations
Is it a Kronecker product or sum?avoid forming the full matrix
Is the structure exact or approximate?controls algorithm choice
Does the algorithm preserve structure?affects speed and stability

The main rule is simple: do not discard useful structure too early.

96.29 Summary

Structured matrices are matrices with special patterns or representations.

Important examples include diagonal, triangular, banded, symmetric, orthogonal, Toeplitz, Hankel, circulant, Vandermonde, Cauchy, low-rank, block, sparse, and Kronecker-structured matrices.

Structure affects:

AspectEffect
Storagefewer parameters
Multiplicationfaster matrix-vector products
Solvingspecialized algorithms
Eigenvalue computationspecialized reductions
Conditioningstructured sensitivity may differ
Modelingstructure reflects the problem source

Structured matrices are central in numerical linear algebra because they allow algorithms to use the information already present in the problem. Treating a structured matrix as a general dense matrix is often wasteful and may hide the best method.