Notes On Kronecker Products: 1 The Stack Operator
Notes On Kronecker Products: 1 The Stack Operator
Notes On Kronecker Products: 1 The Stack Operator
Revision 02
Louis L. Whitcomb∗
Department of Mechanical Engineering
G.W.C. Whiting School of Engineering
Johns Hopkins University
http://dscl.lcsr.jhu.edu/ME530647_2013
This note is a brief description of the matrix Kronecker product and matrix stack algebraic operators. For
a detailed treatment the reader is referred to [?, ?].
then
c1
c2
CS = . (4)
..
.
cm nm×1
1
2. If A ∈ IRm×n , a matrix, and v ∈ IRn×1 , a vector, then the matrix product (Av)S = Av.
3. trace(AB) = ((AT )S )T B S .
their Kronecker product, denoted A ⊗ B, is the np × mq matrix with the block structure
a1,1 B . . . a1,m B
A⊗B =
.. .. ..
. (6)
. . .
an,1 B . . . an,m B np×mq
A ⊗ (αB) = α(A ⊗ B)
(9)
(αA) ⊗ B = α(A ⊗ B).
(A + B) ⊗ C = (A ⊗ C) + (B ⊗ C)
(10)
A ⊗ (B + C) = (A ⊗ B) + (A ⊗ C).
(A ⊗ B) ⊗ C = A ⊗ (B ⊗ C). (11)
2
4. The Kronecker product is not in general commutative, i.e. usually
(A ⊗ B) 6= (B ⊗ A). (12)
5. Transpose distributes over the Kronecker product (does not invert order)
(A ⊗ B)T = AT ⊗ B T . (13)
10. Stack of a matrix multiplication, when dimensions are appropriate for the product ABC to be well
defined, is
(ABC)S = (C T ⊗ A)B S . (18)
Two simple special cases of this identity are useful:
Ax = (Ax)S (19)
and
Ax = IAx
(20)
= (xT ⊗ I)AS
3
(c) block banded
(d) symmetric
(e) positive (negative) definite
(f) stochastic
(g) block Toeplitz
(h) a permutations
(i) orthogonal.
4 Some Applications
1. The linear Lyapunov equation: For any Hurwitz A ∈ IRn×n and any positive-definite symmetric
Q ∈ IRn×n there exists a unique positive-definite symmetric P ∈ IRn×n satisfying the linear Lyapunov
equation
− Q = AT P + P A. (21)
The matrix P can be computed as Z ∞
T
Q= eA σ
QeAσ dσ (22)
0
or, alternatively, note that
−Q = AT P + P A
= AT P I + IP A
(23)
−QS = (I ⊗ AT )P S + (AT ⊗ I)P S
−QS = (I ⊗ AT + AT ⊗ I)P S
thus P S is given by
P S = −(I ⊗ AT + AT ⊗ I)−1 QS . (24)