## 2 Materials and Methods
### Wavenumber Estimation Using the ESPRIT Algorithm  
To realize super-resolution estimates, we used the ESPRIT algorithm. The basis of this algorithm is briefly explained here. When there is a single propagating wave, i.e., \(M=1\) in Equation (1), we can then estimate the wavenumber by comparing the signals that are received at two receivers.  
\[k_{1}(\omega)=\angle\big{\{}S_{n}(\omega)S_{n+1}^{*}(\omega)\big{\}}/x \tag{2}\]  
where \(\angle\) represents the angle of the complex signal.  
As shown in Equation (2), the wavenumber is estimated directly without performing a peak search process. However, when \(M>1\), we cannot estimate the wavenumber by simply comparing the phases of the two received signals alone. The ESPRIT algorithm estimates the wavenumbers of multiple modes via an eigenvalue decomposition of the covariance matrix to enable the separation of multiple signals.  
The covariance matrix represents a correlation between the signals at each receiver. To estimate the covariance matrix, we use the sub-array averaging technique [28]. In the sub-array averaging technique, multiple sub-arrays are situated into the full-size array. Here, we define the signal matrix as follows:  
\[\mathbf{A}(\omega)=\begin{pmatrix}S_{1,1}(\omega)&\cdots&S_{N,1}(\omega)\\ \vdots&\ddots&\vdots\\ S_{1,N_{\mathrm{sub}}}(\omega)&\cdots&S_{N,N_{\mathrm{sub}}}(\omega)\end{pmatrix} \tag{3}\]  
where \(S_{i,j}\) is the received signal at the \(j\)-th receiver in the \(i\)-th sub-array, \(N\) is the number of sub-arrays contained within the whole array, \(N_{\mathrm{sub}}\) is the number of receivers included within a single sub-array, i.e., the number of whole receivers is \(N_{\mathrm{R}}=N+N_{\mathrm{sub}}-1\), and \(\mathbf{A}\) is the signal matrix with size \(N_{\mathrm{sub}}\times N\).  
The covariance matrix, \(\mathbf{R}\), is then given by  
\[\mathbf{R}(\omega) = \mathbf{A}(\omega)\mathbf{A}^{\mathrm{H}}(\omega) \tag{4}\] \[= \sum_{i=1}^{N}\mathbf{R}_{i}(\omega)\] (5) \[= \sum_{i=1}^{N}\mathbf{S}_{i}(\omega)\mathbf{S}_{i}^{\mathrm{H}}(\omega) \tag{6}\]  
Figure 1: System model used in this study. In this study, we used a 4-mm-thick copper (homogeneous isotropic) plate and a 4-mm-thick bone mimicking (transversely isotropic) plate.  
where \(\mathbf{S}_{i}(\omega)=[S_{i,1}(\omega),\cdots,S_{i,N_{\text{sub}}}(\omega)]^{\text{T}}\) is the signal vector at the \(i\)-th sub-array and \({}^{\text{T}}\) and \({}^{\text{H}}\) denote transpose and hermitian transpose of a matrix, respectively. As shown in Equations (5) and (6), the covariance matrix can be estimated by averaging the covariance matrices of the sub-arrays. Note that it is necessary to estimate \(M\) to enable estimation of the wavenumber.  
The theoretical characteristics of the eigenvalues are expressed as follows:  
\[l_{1}(\omega)\geq\cdots\geq l_{M(\omega)}(\omega)\geq l_{M(\omega)+1}(\omega)= \cdots=l_{N_{\text{sub}}}(\omega)=\sigma_{\text{n}}^{2} \tag{7}\]  
where \(l_{i}(\omega)\) is \(i\)-th eigenvalue and \(\sigma_{\text{n}}^{2}\) is the noise intensity. Note that the absolute values of these eigenvalues do not match the signal intensity directly, i.e., when two waves have the same intensity, the eigenvalues that correspond to these signals do not have the same value. Therefore, the simple thresholding process is not suitable for accurate estimation of the number of signals.  
In this section, we calculate the covariance matrix and apply the eigenvalue decomposition technique. When we apply SVD to the signal matrix, \(\mathbf{A}\), we theoretically obtain the same result as that obtained when using \(N\) transmitters and \(N_{\text{sub}}\) receivers with the SVD technique.