## 2 System Model
### Linear Interpolation for CPR
```
0:\(\varphi_{b}\)\(\triangleright\) Input signal from Algorithm 2
0:\(L\)\(\triangleright\) Length of the burst signal
0:\(\lambda=0.9\)\(\triangleright\) Coefficient to set a fraction of 90% of the burst
1:\(\mathbf{q}=\sigma_{b}\)\(\triangleright\) Vector of coarse phase estimation from Algorithm 2
2:\(\xi=\left[\lambda L\right]\)\(\triangleright\) Span length to compute the weights, adjusted to be odd \(\triangleright\) ***********************************
0:\(h_{w}=\frac{\xi-1}{2}\)\(\triangleright\) Set the half length of the weights
3:\(\mathbf{d}=\left|(\frac{1}{2}-h_{w},\ldots,h_{w}+1)\right|\)\(\triangleright\) Set \(d\) -degree polynomial
5:\(\triangleright\) **Set up the weighted Vandermonde matrix for equally spaced \(p\) values:
6:\(\mathbf{p}_{1}=\left[2,3,\ldots(\xi-1)\right]-(h_{w}+1)\)
7:\(\mathbf{w}=\left(1-\left|\frac{\mathbf{d}}{h_{w}}\right|^{\diamondsuit \diamondsuit 1.5}\right.\)\(\triangleright\) Weights by tri-cubic weighting function
8:\(\mathbf{V}=\left[(\mathbf{w})^{\top}\quad(\mathbf{p}_{1}\odot\mathbf{w})^{ \top}\right]\)\(\triangleright\) Implement the Vandermonde matrix
9:\(\mathbf{Q}=\text{qr}(\mathbf{V},0)\)\(\triangleright\) QR decomposition for matrix \(V\)
10:\(\boldsymbol{\alpha}=\mathbf{Q}[h_{w}]\mathbf{Q}^{\top}\)\(\triangleright\) Project onto the middle point \(\triangleright\) ***********************************
11:\(\boldsymbol{\alpha}=\boldsymbol{\alpha}\odot\mathbf{w}\)
12:\(\mathbf{\hat{q}}=\text{filter}(\boldsymbol{\alpha},1,\mathbf{q})\)\(\triangleright\) Apply the filter to the input burst
13:\(\mathbf{p}_{1}=\left[1\ldots\xi-1\right]\)\(\triangleright\) Adjust at points with incomplete spans
14:\(\triangleright\) Make an iterative process to compute the locally weighted scatter smoothing:
15:for\(j=1\)to\(h_{w}\)do
16:\(\mathbf{d}=\left|(\mathbf{p}_{1}-j)\right|\)\(\triangleright\) Compute weights based on deviations from the jth point
17:\(\mathbf{w}=\left(1-\left|\frac{\mathbf{d}}{\xi-1}\right|^{\diamondsuit \diamondsuit 1.5}\right)\)\(\triangleright\) Weights by tri-cubic weighting function
18:\(\mathbf{V}=\left[(\mathbf{w})^{\top}\quad(\mathbf{p}_{1}\odot\mathbf{w})^{ \top}\right]\)\(\triangleright\) Vandermonde matrix
19:\(\mathbf{Q}=\text{qr}(\mathbf{V},0)\)\(\triangleright\) QR decomposition for matrix \(V\):
20:\(\boldsymbol{\alpha}=\boldsymbol{\alpha}\odot\mathbf{w}\)
21:\(\mathbf{\hat{q}}[j]=\boldsymbol{\alpha}\odot\mathbf{q}[\mathbf{p}_{1}]\)
22:\(\triangleright\) ***********************************
23:Output to compute the robust weight in Algorithm 4:
24:\(\mathbf{\hat{q}}[L+1-j]=\boldsymbol{\alpha}\odot\mathbf{q}[L,L-1,\ldots,L-\xi+2]\)
25:endfor
```
**Algorithm 3** Phase Computation Using the LOWESS Method
```
1:\(\mathbf{w}_{\mathbf{f}}\)\(\triangleright\) Weights from the soft-decision filter, Algorithm 2
2:\(L\)\(\triangleright\) Length of the burst signal
3:\(\mathbf{n}\)\(\triangleright\) Vectro of burst sequence \(n\in\{kL,kL+1,\ldots,kL+L-1\}\)
4:\(\mathbf{q}\)\(\triangleright\) Vector of coarse phase from Algorithm 3
5:\(\mathbf{\hat{q}}\)\(\triangleright\) Input smoothed values, from Algorithm 3
6:\(h_{w}\)\(\triangleright\) Half weight parameter, from Algorithm 3
7:\(\mathbf{p}=\mathbf{n}\)\(\triangleright\) Vector to evaluate the interpolation over the burst
8:\(t=\boldsymbol{\gamma}\)\(\triangleright\) Set the number of robust smoothing iterations \(3\leq\gamma\leq 5\)
9:for\(\ell=1\)to\(t\)do\(\triangleright\) Iteration to find the robust weight
10:\(\mathbf{e}=\mathbf{q}-\mathbf{\hat{q}}\)\(\triangleright\) Compute the residual error between actual and smoothed values
11:\(\triangleright\)\(\triangleright\)\(\triangleright\)\(\)Compute the robust weights
12:\(s=\text{median}(|\mathbf{e}|)\)\(\triangleright\) Median of the absolute residuals
13:\(\boldsymbol{\delta}=(\frac{\mathbf{e}}{6s})\)
14:\(\mathbf{r_{w}}=|1-(\boldsymbol{\delta})^{\circ 2}|\)\(\triangleright\) Robust weights by bi-square function \(B\) (Hadamard power)
15:for\(i=1\)to\(L\)do
16:if\(i>1\)and\(\mathbf{p}[i]=\mathbf{p}[i-1]\)then\(\triangleright\)\(p\) represents the interpolation vector
17:\(\mathbf{\hat{q}}[i]=\mathbf{\hat{q}}[i-1]\)\(\triangleright\) Carry forward if \(p\) values are identical
18:endif
19:\(\mathbf{l_{b}}=[1,\ldots,1  
The RLOESS method performs effectively on its own.