An circulant matrix is outlined by parameters, the weather within the first row, and every subsequent row is a cyclic shift ahead of the one above:
Circulant matrices have the essential property that they’re diagonalized by the discrete Fourier remodel matrix
which satisfies , in order that is a unitary matrix. ( is a Vandermonde matrix with factors the roots of unity.) Particularly,
Therefore circulant matrices are regular (). Furthermore, the eigenvalues are given by ,
Observe that one specific eigenpair is speedy, since .
The factorization (1) permits a circulant linear system to be solved in flops, since multiplication by may be executed utilizing the quick Fourier remodel.
A selected circulant matrix is the (up) shift matrix , the model of which is
It’s not exhausting to see that
Since powers of commute, it follows that any two circulant matrices commute (that is additionally clear from (1)). Moreover, the sum and product of two circulant matrices is a circulant matrix and the inverse of a nonsingular circulant matrix is a circulant matrix.
One essential use of circulant matrices is to behave as preconditioners for Toeplitz linear programs. A number of strategies have been proposed for setting up a circulant matrix from a Toeplitz matrix, together with copying the central diagonals and wrapping them round and discovering the closest circulant matrix to the Toeplitz matrix. See Chan and Ng (1996) or Chan and Jin (2017) for a abstract of labor on circulant preconditioners for Toeplitz programs.
An fascinating circulant matrix is anymatrix('core/circul_binom',n)
within the Anymatrix assortment, which is the circulant matrix whose first row has th aspect . The eigenvalues are , , the place . The matrix is singular when is a a number of of 6, by which case the null house has dimension 2. Instance:
>> n = 6; C = anymatrix('core/circul_binom',n), svd(C) C = 1 6 15 20 15 6 6 1 6 15 20 15 15 6 1 6 15 20 20 15 6 1 6 15 15 20 15 6 1 6 6 15 20 15 6 1 ans = 6.3000e+01 2.8000e+01 2.8000e+01 1.0000e+00 2.0244e-15 7.6607e-16
Notes
A basic reference on circulant matrices is Davis (1994).
References
- Raymond Chan and Michael Ng, Conjugate Gradient Strategies for Toeplitz Methods, SIAM Rev. 38(3), 427–482, 1996.
- Raymond Chan and Xiao-Qing Jin, An Introduction to Iterative Toeplitz Solvers, Society for Industrial and Utilized Arithmetic, Philadelphia, PA, USA, 2007.
- Philip Davis, Circulant Matrices, Second version, Chelsea, New York, 1994.
- Nicholas J. Higham and Mantas Mikaitis, Anymatrix: An Extendable MATLAB Matrix Assortment, Numer. Algorithms, 90:3, 1175-1196, 2021.
This text is a part of the “What Is” collection, out there from https://nhigham.com/class/what-is and in PDF kind from the GitHub repository https://github.com/higham/what-is.