Generalized pencil-of-function method

Generalized pencil-of-function method (GPOF), also known as matrix pencil method, is a signal processing technique for estimating a signal or extracting information with complex exponentials. Being similar to Prony and original pencil-of-function methods, it is generally preferred to those for its robustness and computational efficiency.

The method was originally developed by Yingbo Hua and Tapan Sarkar for estimating the behaviour of electromagnetic systems by its transient response, building on Sarkar's past work on the original pencil-of-function method. The method has a plethora of applications in electrical engineering, particularly related to problems in computational electromagnetics, microwave engineering and antenna theory.

Mathematical basis
A transient electromagnetic signal can be represented as:


 * $$y(t)=x(t)+n(t) \approx \sum_{i=1}^{M}R_i e^{s_i t} + n(t); 0 \leq t \leq T, $$

where


 * $$y(t)$$ is the observed time-domain signal,
 * $$n(t)$$ is the signal noise,
 * $$x(t)$$ is the actual signal,
 * $$R_i$$ are the residues ($$R_i$$),
 * $$s_i$$ are the poles of the system, defined as $$s_i=-\alpha_i+j \omega_i$$,
 * $$z_i=e^{(- \alpha_i + j \omega_i) T_s}$$ by the identities of Z-transform,
 * $$\alpha_i$$ are the damping factors and
 * $$\omega_i$$ are the angular frequencies.

The same sequence, sampled by a period of $$T_s$$, can be written as the following:


 * $$y[kT_s]=x[kT_s]+n[kT_s] \approx \sum_{i=1}^{M}R_i z_i^{k} + n[kT_s]; k=0,...,N-1; i=1,2,...,M$$,

Generalized pencil-of-function estimates the optimal $$M$$ and $$z_i$$'s.

Noise-free analysis
For the noiseless case, two $$(N-L) \times L$$ matrices, $$Y_1$$ and $$Y_2$$, are produced:


 * $$[Y_1]=

\begin{bmatrix} x(0) & x(1) & \cdots & x(L-1)\\ x(1) & x(2) & \cdots & x(L)\\ \vdots & \vdots & \ddots & \vdots\\ x(N-L-1) & x(N-L) & \cdots & x(N-2) \end{bmatrix}_{(N-L) \times L}; $$$$[Y_2]= \begin{bmatrix} x(1) & x(2) & \cdots & x(L)\\ x(2) & x(3) & \cdots & x(L+1)\\ \vdots & \vdots & \ddots & \vdots\\ x(N-L) & x(N-L+1) & \cdots & x(N-1) \end{bmatrix}_{(N-L) \times L} $$

where $$L$$ is defined as the pencil parameter. $$Y_1$$ and $$Y_2$$ can be decomposed into the following matrices:


 * $$[Y_1]=[Z_1][B][Z_2]$$
 * $$[Y_2]=[Z_1][B][Z_0][Z_2]$$

where


 * $$[Z_1]=

\begin{bmatrix} 1 & 1 & \cdots & 1\\ z_1 & z_2 & \cdots & z_M\\ \vdots & \vdots & \ddots & \vdots\\ z_1^{(N-L-1)} & z_2^{(N-L-1)} & \cdots & z_M^{(N-L-1)} \end{bmatrix}_{(N-L) \times M}; $$$$[Z_2]= \begin{bmatrix} 1 & z_1 & \cdots & z_1^{L-1}\\ 1 & z_2 & \cdots & z_2^{L-1}\\ \vdots & \vdots & \ddots & \vdots\\ 1 & z_M & \cdots & z_M^{L-1} \end{bmatrix}_{M \times L} $$

$[Z_0]$ and $[B]$  are $M \times M$  diagonal matrices with sequentially-placed $z_i$  and $R_i$  values, respectively.

If $M \leq L \leq N-M$, the generalized eigenvalues of the matrix pencil


 * $$[Y_2]-\lambda[Y_1]=[Z_1][B]([Z_0]-\lambda[I])[Z_2]$$

yield the poles of the system, which are $$\lambda=z_i$$. Then, the generalized eigenvectors $$p_i$$ can be obtained by the following identities:


 * $$[Y_1]^+[Y_1]p_i=p_i;$$   $$i=1,...,M$$
 * $$[Y_1]^+[Y_2]p_i=z_i p_i;$$   $$i=1,...,M$$

where the $$^+$$ denotes the Moore–Penrose inverse, also known as the pseudo-inverse. Singular value decomposition can be employed to compute the pseudo-inverse.

Noise filtering
If noise is present in the system, $[Y_1]$ and $[Y_2]$  are combined in a general data matrix, $[Y]$ :


 * $$[Y]=

\begin{bmatrix} y(0) & y(1) & \cdots & y(L)\\ y(1) & y(2) & \cdots & y(L+1)\\ \vdots & \vdots & \ddots & \vdots\\ y(N-L-1) & y(N-L) & \cdots & y(N-1) \end{bmatrix}_{(N-L) \times (L+1)} $$

where $$y$$ is the noisy data. For efficient filtering, L is chosen between $ \frac{N}{3}$ and $ \frac{N}{2}$. A singular value decomposition on $[Y]$ yields:


 * $$[Y]=[U][\Sigma][V]^H$$

In this decomposition, $[U]$ and $[V]$  are unitary matrices with respective eigenvectors $[Y][Y]^H$  and $[Y]^H[Y]$  and $[\Sigma]$  is a diagonal matrix with singular values of $[Y]$. Superscript $H$ denotes the conjugate transpose.

Then the parameter $M$ is chosen for filtering. Singular values after $M$, which are below the filtering threshold, are set to zero; for an arbitrary singular value $\sigma_c$ , the threshold is denoted by the following formula:


 * $$\frac{\sigma_c}{\sigma_{max}}=10^{-p}$$,

$\sigma_{max}$ and $p$ are the maximum singular value and significant decimal digits, respectively. For a data with significant digits accurate up to $p$, singular values below $10^{-p}$ are considered noise.

$[V_1']$ and $[V_2']$  are obtained through removing the last and first row and column of the filtered matrix $[V']$, respectively; $M$  columns of $[\Sigma]$  represent  $[\Sigma']$. Filtered $[Y_1]$ and $[Y_2]$  matrices are obtained as:


 * $$[Y_1]=[U][\Sigma'][V_1']^H$$
 * $$[Y_2]=[U][\Sigma'][V_2']^H$$

Prefiltering can be used to combat noise and enhance signal-to-noise ratio (SNR). Band-pass matrix pencil (BPMP) method is a modification of the GPOF method via FIR or IIR band-pass filters.

GPOF can handle up to 25 dB SNR. For GPOF, as well as for BPMP, variance of the estimates approximately reaches Cramér–Rao bound.

Calculation of residues
Residues of the complex poles are obtained through the least squares problem:


 * $$\begin{bmatrix}

y(0) \\ y(1) \\ \vdots \\ y(N-1) \end{bmatrix} = \begin{bmatrix} 1 & 1 & \cdots & 1 \\ z_1 & z_2 & \cdots & z_M \\ \vdots & \vdots & \ddots & \vdots \\ z_1^{N-1} & z_2^{N-1} & \cdots & z_M^{N-1} \end{bmatrix} \begin{bmatrix} R_1 \\ R_2 \\ \vdots \\ R_M \end{bmatrix} $$

Applications
The method is generally used for the closed-form evaluation of Sommerfeld integrals in discrete complex image method for method of moments applications, where the spectral Green's function is approximated as a sum of complex exponentials. Additionally, the method is used in antenna analysis, S-parameter-estimation in microwave integrated circuits, wave propagation analysis, moving target indication, radar signal processing,  and series acceleration in electromagnetic problems.