# Accurate Collaborative Globally-Referenced Digital Mapping with Standard GNSS
## 3 GNSS Error Analysis
### Pseudorange Measurement  
The pseudorange measurement at receiver R from satellite S\({}_{i}\) is modeled as  
\[\rho_{i}(t_{\text{R}}) =h_{i}\big{[}\mathbf{x}(t_{\text{R}}),I_{\rho_{i}}(t_{\text{R}}),T_{i }(t_{\text{R}}),t_{\text{R}}\big{]}+w_{\rho_{i}}(t_{\text{R}})\] \[=\Delta r_{i}+c\big{[}\delta t_{\text{R}}(t_{\text{R}})-\delta t_{ \text{S}_{i}}(t-\delta t_{\text{TOF}_{i}})\big{]}+I_{\rho_{i}}(t_{\text{R}}) +T_{i}(t_{\text{R}})+w_{\rho_{i}}(t_{\text{R}}), \tag{1}\]  
where  
\[\mathbf{x}(t_{\text{R}})\triangleq \begin{bmatrix}\mathbf{r}_{\text{R}}(t_{\text{R}}) \\ \delta t_{\text{R}}(t_{\text{R}})\end{bmatrix} \]  
is the state of the receiver, comprising the receiver position, \(\mathbf{r}_{\text{R}}(t_{\text{R}})\), at the time of the signal receipt event, \(t_{\text{R}}\), and the receiver clock bias, \(\delta t_{\text{R}}(t_{\text{R}})=t_{\text{R}}-t\), with respect to true time \(t\). The nonlinear measurement model is denoted by \(h_{i}\); \(\rho_{i}\) denotes the measured pseudorange to S\({}_{i}\); \(c\) denotes the speed of light in vacuum; \(\delta t_{\text{S}_{i}}(t)=t_{\text{S}_{i}}-t\) denotes the satellite clock bias with respect to \(t\); \(\delta t_{\text{TOF}_{i}}\) denotes the time-of-flight of the signal from S\({}_{i}\), as an increment in true time; \(I_{\rho_{i}}\) and \(T_{i}\) denote the ionospheric and tropospheric delay experienced by the signal from S\({}_{i}\), respectively; \(w_{\rho_{i}}\sim(\mu_{w_{i}},\sigma_{w_{i}}^{2})\) denotes the sum of measurement thermal noise, multipath interference, non-line-of-sight (NLOS) delay, and other unmodeled errors; and \(\Delta r_{i}\) denotes the true range between R and S\({}_{i}\), given as  
\[\Delta r_{i}=\|\mathbf{r}_{\text{R}}(t_{\text{R}})-\mathbf{r}_{\text{S}_{i}}(t_{\text {R}}-\delta t_{\text{R}}(t_{\text{R}})-\delta t_{\text{TOF}_{i}})\|,\]  
where \(\mathbf{r}_{\text{S}_{i}}\) is the satellite position at the signal transmit event. Note from (1) that the receiver clock bias component of the state contributes identically to all pseudorange measurements. Taking \(n_{z}\) pseudorange measurements \(\{\rho_{i}\}_{i=1}^{n_{z}}\) and predictions \(\bar{I}_{\rho_{i}}\) and \(\bar{T}_{i}\) for each measurement, R estimates its state by solving a nonlinear least squares problem based on (1). First, it linearizes the measurement model in (1) about an initial guess of its state \(\bar{\mathbf{x}}(t_{\text{R}})=\big{[}\bar{\mathbf{r}}_{\text{R}}^{T}(t_{\text{R}}) \ \delta t_{\text{R}}(t_{\text{R}})\big{]}^{T}\) and the modeled atmospheric delays:  
\[\rho_{i}\approx h_{i}(\bar{\mathbf{x}},\bar{I}_{\rho_{i}},\bar{T}_{i},t_{\text{R}}) +\underbrace{\left[\frac{\partial h_{i}}{\partial x}\right]_{\mathbf{x}=\bar{\mathbf{ x}}}^{T}}_{\bar{H}_{i}}(\mathbf{x}-\bar{\mathbf{x}})+\bar{I}_{\rho_{i}}+\bar{T}_{i}+w_{ \rho_{i}},\]with \(I_{\rho_{i}}=I_{\rho_{i}}-I_{\rho_{i}}\) and \(\tilde{T}_{i}=T_{i}-\tilde{T}_{i}\). Representing all \(n_{z}\) measurements in matrix form yields  
\[ \begin{bmatrix}\rho_{1}\\ \vdots\\ \rho_{n_{z}}\end{bmatrix} = \begin{bmatrix}h_{1}(\tilde{\mathbf{x}},\tilde{I}_{\rho_ {1}},\tilde{T}_{1},t_{\mathds{R}})\\ \vdots\\ h_{n_{z}}(\tilde{\mathbf{x}},\tilde{I}_{\rho_{n_{z}}},\tilde{T}_{n_{z}},t_{ \mathds{R}})\end{bmatrix} + \begin{bmatrix}H_{1}\\ \vdots\\ \vdots\\ H_{n_{z}}\end{bmatrix} (\mathbf{x}-\tilde{\mathbf{x}})+ \begin{bmatrix}\tilde{I}_{\rho_ {1}}\\ \vdots\\ \tilde{I}_{\rho_{n_{z}}}\end{bmatrix} + \begin{bmatrix}\tilde{T}_{1}\\ \vdots\\ \vdots\\ \tilde{T}_{n_{z}}\end{bmatrix} + \begin{bmatrix}w_{1}\\ \vdots\\ w_{n_{z}}\end{bmatrix}