The MIMO Sensing Matrix

Building the Sensing Matrix for MIMO Radar

We now arrive at the central object of this chapter: the MIMO sensing matrix A\mathbf{A}. Everything developed so far --- the virtual aperture (Section 11.1), the co-located/distributed distinction (Section 11.2), the multi-view geometry (Section 11.3) --- converges into one matrix that maps the scene reflectivity c\mathbf{c} to the measurements y\mathbf{y}:

y=Ac+w.\mathbf{y} = \mathbf{A}\,\mathbf{c} + \mathbf{w}.

The structure of A\mathbf{A} determines what the imaging system can and cannot resolve. We will see that A\mathbf{A} has rich algebraic structure --- in particular, Kronecker and Khatri-Rao products --- that enables efficient algorithms.

Definition:

The MIMO Sensing Matrix: Row Construction

Discretise the scene into QQ voxels at positions {pq}q=1Q\{\mathbf{p}_{q}\}_{q=1}^{Q}. Each measurement is indexed by a triple (i,j,k)(i, j, k) --- transmitter ii, receiver jj, frequency fkf_k. The corresponding row of A\mathbf{A} is:

[A](i,j,k),q=[ai(pq)]Tx spatial[a^j(pq)]Rx spatialej2πfkτij(pq)frequency response[\mathbf{A}]_{(i,j,k), q} = \underbrace{[\mathbf{a}_{i}(\mathbf{p}_{q})]}_{\text{Tx spatial}} \cdot \underbrace{[\hat{\mathbf{a}}_{j}(\mathbf{p}_{q})]}_{\text{Rx spatial}} \cdot \underbrace{e^{-j 2\pi f_k \tau_{ij}(\mathbf{p}_{q})}}_{\text{frequency response}}

where τij(pq)=(pqsi+pqrj)/c\tau_{ij}(\mathbf{p}_{q}) = (\|\mathbf{p}_{q} - \mathbf{s}_{i}\| + \|\mathbf{p}_{q} - \mathbf{r}_{j}\|) / c is the two-way propagation delay.

The full sensing matrix ACM×Q\mathbf{A} \in \mathbb{C}^{M \times Q} has M=NtNrNfM = N_t \cdot N_r \cdot N_f rows (one per measurement) and QQ columns (one per voxel).

This is the most general form. Each row is the product of three factors: Tx spatial response, Rx spatial response, and frequency response. When these factorise, A\mathbf{A} inherits Kronecker structure.

,

Theorem: Kronecker Structure of the Separable MIMO Sensing Matrix

When the spatial and frequency responses are separable (i.e., the steering vectors depend only on direction, not on range or frequency --- far-field, narrowband-per-subcarrier assumption), the MIMO sensing matrix decomposes as:

A=Af(AtxArx)\mathbf{A} = \mathbf{A}_f \odot (\mathbf{A}_{\mathrm{tx}} \otimes \mathbf{A}_{\mathrm{rx}})

where:

  • AtxCNt×Q\mathbf{A}_{\mathrm{tx}} \in \mathbb{C}^{N_t \times Q}: transmit steering matrix, [Atx]i,q=[a(θq)]i[\mathbf{A}_{\mathrm{tx}}]_{i,q} = [\mathbf{a}(\theta_q)]_i.
  • ArxCNr×Q\mathbf{A}_{\mathrm{rx}} \in \mathbb{C}^{N_r \times Q}: receive steering matrix, [Arx]j,q=[a^(θq)]j[\mathbf{A}_{\mathrm{rx}}]_{j,q} = [\hat{\mathbf{a}}(\theta_q)]_j.
  • AfCNf×Q\mathbf{A}_f \in \mathbb{C}^{N_f \times Q}: frequency response matrix, [Af]k,q=ej2πfkτq[\mathbf{A}_f]_{k,q} = e^{-j 2\pi f_k \tau_q}.
  • \odot denotes the Khatri-Rao (column-wise Kronecker) product.

When the array and frequency grids are fully separable (co-located ULA, uniform frequency grid, far-field), this further simplifies to the full Kronecker product:

A=AfAtxArx.\mathbf{A} = \mathbf{A}_f \otimes \mathbf{A}_{\mathrm{tx}} \otimes \mathbf{A}_{\mathrm{rx}}.

The separability comes from the fact that each measurement factorises into three independent contributions: what the transmit antenna sees, what the receive antenna sees, and what the frequency resolves. When these are independent of each other, the matrix is a Kronecker product --- and this structure can be exploited for fast matrix-vector products (O(QlogQ)O(Q \log Q) via FFTs instead of O(MQ)O(MQ)).

,

Definition:

Non-Separable Bistatic Sensing Matrix

In the general bistatic case (distributed MIMO, near-field, or wideband), the spatial and frequency responses do not separate:

  • The steering vector for Tx ii depends on the target range (spherical wavefront), not just angle.
  • The two-way delay τij(pq)\tau_{ij}(\mathbf{p}_{q}) depends on both antenna positions, not just the angle to the target.
  • At wideband frequencies, the steering vector itself varies with frequency (beam squinting).

In these cases, the sensing matrix A\mathbf{A} must be constructed element-by-element using the full expression:

[A](i,j,k),q=ejκ(fk)pqsiejκ(fk)pqrj[\mathbf{A}]_{(i,j,k), q} = e^{j \kappa(f_k) \|\mathbf{p}_{q} - \mathbf{s}_{i}\|} \cdot e^{j \kappa(f_k) \|\mathbf{p}_{q} - \mathbf{r}_{j}\|}

and the Kronecker structure is lost. This makes matrix-vector products O(MQ)O(MQ) --- much more expensive --- motivating approximations such as Taylor expansion around a reference point p0\mathbf{p}_{0} (see Chapter 8) or non-uniform FFT (NUFFT) algorithms.

The degree to which the Kronecker structure holds is a key system design consideration. Co-located arrays in the far field of the scene: Kronecker holds. Distributed arrays imaging a nearby scene: Kronecker fails. Understanding when and how the structure breaks down is essential for choosing the right reconstruction algorithm.

Example: Kronecker Structure of a Co-Located MIMO Sensing Matrix

Construct the sensing matrix for a co-located MIMO radar with Nt=2N_t = 2, Nr=3N_r = 3, operating at Nf=2N_f = 2 frequencies. The scene has Q=4Q = 4 targets at angles {30°,10°,10°,30°}\{-30°, -10°, 10°, 30°\}. Verify the Kronecker structure.

Theorem: Condition Number of Kronecker Sensing Matrices

For a separable MIMO sensing matrix A=AfAtxArx\mathbf{A} = \mathbf{A}_f \otimes \mathbf{A}_{\mathrm{tx}} \otimes \mathbf{A}_{\mathrm{rx}}, the condition number satisfies:

κ(A)=κ(Af)κ(Atx)κ(Arx).\kappa(\mathbf{A}) = \kappa(\mathbf{A}_f) \cdot \kappa(\mathbf{A}_{\mathrm{tx}}) \cdot \kappa(\mathbf{A}_{\mathrm{rx}}).

The singular values of the Kronecker product are all pairwise (triple-wise) products of the singular values of the factors.

The condition number of the MIMO sensing matrix is the product of the condition numbers of its factors. If any one factor is ill-conditioned, the product is worse. This motivates joint optimisation of the frequency grid, Tx array, and Rx array --- all three must be well-designed for the overall system to be well-conditioned.

,

MIMO Sensing Matrix Condition Number

Explores how the condition number of A\mathbf{A} varies with the MIMO configuration.

Adjust the number of Tx/Rx antennas, frequencies, and the array geometry to see the impact on κ(A)\kappa(\mathbf{A}). The singular value distribution is shown alongside the condition number.

Observe:

  • More antennas/frequencies improve conditioning (up to a point).
  • Distributed geometry typically has higher κ\kappa than co-located (sparser k-space sampling) but achieves higher resolution.
  • The Kronecker product rule: κ\kappa is the product of the individual factors.
Parameters
4
4
4
16

MIMO Sensing Matrix Construction

Complexity: O(NtNrNfQ)O(N_t \cdot N_r \cdot N_f \cdot Q) for the general case. With Kronecker structure and FFT: O(MlogQ)O(M \log Q).
Input: Tx positions {si}i=1Nt\{\mathbf{s}_{i}\}_{i=1}^{N_t},
Rx positions {rj}j=1Nr\{\mathbf{r}_{j}\}_{j=1}^{N_r},
frequencies {fk}k=1Nf\{f_k\}_{k=1}^{N_f},
voxel positions {pq}q=1Q\{\mathbf{p}_{q}\}_{q=1}^{Q}
Output: Sensing matrix ACM×Q\mathbf{A} \in \mathbb{C}^{M \times Q}
1. m0m \leftarrow 0
2. for i=1,,Nti = 1, \ldots, N_t do
3. \quad for j=1,,Nrj = 1, \ldots, N_r do
4. \quad\quad for k=1,,Nfk = 1, \ldots, N_f do
5. \quad\quad\quad mm+1m \leftarrow m + 1
6. \quad\quad\quad for q=1,,Qq = 1, \ldots, Q do
7. \quad\quad\quad\quad dtxpqsid_{\mathrm{tx}} \leftarrow \|\mathbf{p}_{q} - \mathbf{s}_{i}\|
8. \quad\quad\quad\quad drxpqrjd_{\mathrm{rx}} \leftarrow \|\mathbf{p}_{q} - \mathbf{r}_{j}\|
9. \quad\quad\quad\quad [A]m,qej2πfkc(dtx+drx)[\mathbf{A}]_{m,q} \leftarrow e^{j \frac{2\pi f_k}{c} (d_{\mathrm{tx}} + d_{\mathrm{rx}})}
10. \quad\quad\quad end for
11. \quad\quad end for
12. \quad end for
13. end for

In practice, the Kronecker-structured case avoids explicitly forming the full matrix. Matrix-vector products Ac\mathbf{A}\mathbf{c} are computed via sequential 1D FFTs along each dimension.

Example: When Kronecker Structure Breaks Down

A distributed MIMO system has 3 terminals at positions (0,0)(0, 0), (20,0)(20, 0), and (10,20)(10, 20) metres. Each terminal has N=4N = 4 antennas with λ/2\lambda/2 spacing. The scene is a 2×22 \times 2 m region centred at (10,10)(10, 10) m. Show that the global sensing matrix is not Kronecker-separable.

🎓CommIT Contribution(2026)

Unified Illumination and Sensing Model for RF Imaging

G. CaireTU Berlin, Internal Note

Caire's note unifies the diffraction-tomography models from the imaging community with the MIMO radar models from the wireless community. The key insight is that both are special cases of the same linear model y=Ac+w\mathbf{y} = \mathbf{A}\,\mathbf{c} + \mathbf{w}, with the sensing matrix A\mathbf{A} determined by the transmit-receive geometry, waveforms, and beamforming.

The note establishes the Kronecker and Khatri-Rao structure of A\mathbf{A} for separable configurations and develops the Taylor expansion approach for the non-separable bistatic case. This unified framework is the foundation for Chapters 11--14 of this book.

sensing-matrixrf-imagingMIMOdiffraction-tomography

Common Mistake: Assuming Kronecker Structure Without Checking

Mistake:

Applying fast Kronecker algorithms (e.g., sequential FFTs) to a MIMO sensing matrix without verifying that the separability conditions hold.

Correction:

The Kronecker structure requires: (a) far-field wavefronts across the array, (b) narrowband per subcarrier, and (c) co-located or factored geometry. For distributed MIMO or near-field scenes, the structure breaks down. Always compute the approximation error AAKronF/AF\|\mathbf{A} - \mathbf{A}_{\text{Kron}}\|_F / \|\mathbf{A}\|_F before relying on Kronecker-based algorithms.

Quick Check

Under which condition does the MIMO sensing matrix A\mathbf{A} have exact Kronecker structure AfAtxArx\mathbf{A}_f \otimes \mathbf{A}_{\mathrm{tx}} \otimes \mathbf{A}_{\mathrm{rx}}?

All antennas are equally spaced

The arrays are co-located, far-field wavefronts, and narrowband per subcarrier

The number of measurements exceeds the number of voxels

The target has only one scatterer

Key Takeaway

The MIMO sensing matrix A\mathbf{A} has rows indexed by (Tx, Rx, frequency) triples and columns indexed by voxels. Under far-field, narrowband-per-subcarrier conditions, A\mathbf{A} factors as a Khatri-Rao product (or full Kronecker product for regular grids), enabling O(MlogQ)O(M \log Q) matrix-vector products. For distributed bistatic geometries, the Kronecker structure breaks down and general O(MQ)O(MQ) methods or NUFFT approximations are needed. The condition number of a Kronecker matrix is the product of the condition numbers of its factors --- motivating joint optimisation of all system parameters.