Array Response and Steering Vectors

Antenna Arrays: Spatial Filtering

An antenna array is to spatial signals what a filter is to time-domain signals. By weighting the outputs of multiple antenna elements, we can steer beams toward desired users and nulls toward interferers.

Definition:

Uniform Linear Array (ULA) Steering Vector

For a ULA with NN elements spaced dd apart, the steering vector for a plane wave arriving at angle θ\theta from broadside is:

a(θ)=[1ej2πdsinθ/λej2π(N1)dsinθ/λ]\mathbf{a}(\theta) = \begin{bmatrix} 1 \\ e^{j2\pi d\sin\theta/\lambda} \\ \vdots \\ e^{j2\pi(N-1)d\sin\theta/\lambda} \end{bmatrix}

def steering_vector(N, d_lambda, theta):
    """ULA steering vector. d_lambda = d/wavelength, theta in radians."""
    n = np.arange(N)
    return np.exp(1j * 2 * np.pi * d_lambda * n * np.sin(theta))

With d=λ/2d = \lambda/2 (half-wavelength spacing), the spatial Nyquist criterion is satisfied, avoiding grating lobes.

Definition:

Array Factor

The array factor is the weighted sum of element responses:

AF(θ)=wHa(θ)AF(\theta) = \mathbf{w}^H\mathbf{a}(\theta)

For uniform weights (wn=1/Nw_n = 1/N), the beam pattern is:

AF(θ)2=sin2(Nπdsinθ/λ)N2sin2(πdsinθ/λ)|AF(\theta)|^2 = \frac{\sin^2(N\pi d\sin\theta/\lambda)} {N^2 \sin^2(\pi d\sin\theta/\lambda)}

The main beam has width 2/(Ndcosθ0/λ)\approx 2/(Nd\cos\theta_0/\lambda) radians.

Definition:

Uniform Planar Array (UPA) Steering Vector

A UPA with Nh×NvN_h \times N_v elements has 2D steering:

a(θ,ϕ)=ah(θ)av(ϕ)\mathbf{a}(\theta, \phi) = \mathbf{a}_h(\theta) \otimes \mathbf{a}_v(\phi)

where ah\mathbf{a}_h and av\mathbf{a}_v are ULA steering vectors for the horizontal and vertical directions, and \otimes is the Kronecker product.

def upa_steering(Nh, Nv, d_lambda, theta, phi):
    ah = steering_vector(Nh, d_lambda, theta)
    av = steering_vector(Nv, d_lambda, phi)
    return np.kron(ah, av)

Definition:

Half-Power Beamwidth

The half-power beamwidth (HPBW) of a ULA with NN elements at half-wavelength spacing is approximately:

HPBW0.886λNdcosθ0102°N\text{HPBW} \approx \frac{0.886 \lambda}{N d \cos\theta_0} \approx \frac{102°}{N}

for broadside (θ0=0\theta_0 = 0) and d=λ/2d = \lambda/2.

Definition:

Array Gain and SNR Improvement

The array gain of NN elements with coherent combining is:

Garray=NG_{\text{array}} = N

or 10log10(N)10\log_{10}(N) dB. This is because the signal adds coherently (power N2\propto N^2) while noise adds incoherently (power N\propto N).

Theorem: Spatial Nyquist Criterion

To avoid spatial aliasing (grating lobes), the element spacing must satisfy:

dλ1+sinθmaxd \le \frac{\lambda}{1 + |\sin\theta_{\max}|}

For full visible range (θmax=90°\theta_{\max} = 90°), this gives dλ/2d \le \lambda/2.

Just as temporal sampling below the Nyquist rate causes aliasing, spatial sampling below λ/2\lambda/2 creates grating lobes that appear as phantom beams.

Theorem: Matched Filter Beamforming Is SNR-Optimal

For a single source in white noise, the weight vector that maximizes output SNR is the matched filter (conjugate beamformer):

wMF=a(θ0)\mathbf{w}_{\text{MF}} = \mathbf{a}(\theta_0)

achieving SNRout=NSNRelement\text{SNR}_{\text{out}} = N \cdot \text{SNR}_{\text{element}}.

The matched filter coherently combines the signal from all elements, providing an NN-fold SNR improvement.

Theorem: Beam Steering

To steer the beam to angle θ0\theta_0, apply phase shifts:

wn=1Nej2πndsinθ0/λw_n = \frac{1}{N} e^{-j2\pi n d\sin\theta_0/\lambda}

This is equivalent to w=a(θ0)/N\mathbf{w} = \mathbf{a}(\theta_0)/N, and the beam pattern peaks at θ=θ0\theta = \theta_0.

Phase shifting each element compensates for the path length differences, causing constructive interference at the desired angle.

Example: Computing and Plotting Beam Patterns

Compute the beam pattern of an 8-element ULA with d=λ/2d = \lambda/2 steered to 30°30°.

Example: Beamwidth vs Number of Elements

Show how the beam narrows as the number of array elements increases.

Example: Grating Lobes with Large Spacing

Demonstrate grating lobes when d>λ/2d > \lambda/2.

Array Beam Pattern Explorer

Explore beam patterns with adjustable array size, spacing, and steering angle.

Parameters

Polar Beam Pattern

Visualize the beam pattern in polar coordinates.

Parameters

ULA and UPA Array Geometries

ULA and UPA Array Geometries
Uniform linear array (ULA) and uniform planar array (UPA) element geometries with coordinate system conventions.

Quick Check

Why is d=λ/2d = \lambda/2 the most common element spacing?

It minimizes cost

It satisfies the spatial Nyquist criterion

It maximizes directivity

It eliminates mutual coupling

Common Mistake: Confusing Angle Conventions

Mistake:

Using cosθ\cos\theta instead of sinθ\sin\theta in the steering vector, or mixing degrees and radians.

Correction:

Our convention: θ\theta is measured from broadside (array normal), so the phase is 2πdsinθ/λ2\pi d\sin\theta/\lambda. Always convert degrees to radians: theta_rad = np.radians(theta_deg).

Key Takeaway

The steering vector a(θ)\mathbf{a}(\theta) is the fundamental building block of array processing. An NN-element ULA with d=λ/2d = \lambda/2 provides NN-fold array gain, beamwidth 102°/N\approx 102°/N, and no grating lobes.

Why This Matters: Beamforming in 5G mmWave

At mmWave frequencies (28-39 GHz), the small wavelength (λ1\lambda \approx 1 cm) enables large arrays in a small form factor: 256 elements in a 16x16 panel. 5G NR uses beam sweeping to find the best beam direction, scanning through a codebook of predetermined beam patterns.

See full treatment in Chapter 25

Historical Note: The Phased Array: From Radar to 5G

1940s-present

Phased arrays were invented for radar during World War II (Nobel Prize to Luis Alvarez for the ground-controlled approach radar). The same principle now drives 5G mmWave communications, with the key innovation being digital control of hundreds of elements at GHz sample rates.

Historical Note: MUSIC Algorithm

1986

Ralph Schmidt published the MUSIC (MUltiple SIgnal Classification) algorithm in 1986, revolutionizing array signal processing. By exploiting the eigenstructure of the covariance matrix, MUSIC achieves super-resolution direction finding beyond the classical Rayleigh limit.

Steering Vector

A vector describing the phase progression across array elements for a plane wave from direction θ\theta: an=ej2πndsinθ/λa_n = e^{j2\pi nd\sin\theta/\lambda}.

Related: Uniform Linear Array (ULA)

Uniform Linear Array (ULA)

An antenna array with elements equally spaced along a line.

Beamwidth

The angular width of the main beam, typically measured at the half-power (-3 dB) points. Inversely proportional to the array aperture.

Grating Lobe

An unwanted beam appearing when the element spacing exceeds λ/2\lambda/2, analogous to aliasing in temporal sampling.

Array Gain

The SNR improvement from coherent combining of NN array elements: G=10log10(N)G = 10\log_{10}(N) dB.